Testando funções do Code Engine localmente

IBM Cloud® Code Engine são criadas a partir de trechos de código e, portanto, testá-las localmente não é tão simples quanto testar um aplicativo ou trabalho localmente. Uma maneira de testar funções localmente criando um wrapper para o fragmento de código e, em seguida, executando-o localmente.

Para testar o seu código com um wrapper, siga estas etapas gerais.

  1. Crie um diretório chamado test-local.
  2. Crie um subdiretório chamado func
  3. Copie seu código de função no subdiretório func.
  4. Copie o código do wrapper Python ou Node.js no diretório pai.
  5. Crie um arquivo de configuração como objetos JSON, semelhante ao que é transmitido pelo Code Engine para a função quando ele é chamado como.
  6. Execute o código do wrapper com o arquivo de configuração como um parâmetro

É possível usar os wrappers a seguir ou criar seus próprios.

Wrapper Python

# syntax: python wrapper.py params.json

# import the Code Engine function: func/__main__.py
from func.__main__ import main
import sys, json

if __name__ == "__main__":
    # open file, read JSON config
    with open(str(sys.argv[1])) as confFile:
        params=json.load(confFile)
    # invoke the Code Engine function and print the result
    print(main(params))

Wrapper Node.js

// syntax: node wrapper.js params.json

// require the Code Engine function: func/main.js
var func=require('./func/main.js')

// read the file with function parameters
const fs = require("fs");
const data = fs.readFileSync(process.argv[2]);

// invoke the Code Engine function and log the result
console.log(func.main(JSON.parse(data)));