Prueba del código de cadenas mediante Visual Studio Code
Si el código de cadenas se está ejecutando en una red, puede probar cualquiera de los métodos generados. Además, si decide crear el método executeQuery durante el desarrollo del código de cadenas, puede ejecutar consultas enriquecidas de SQL si el código de cadenas se despliega en una red de Oracle Blockchain Platform.
Prueba del código de cadenas en una red local de Hyperledger Fabric
Una vez que el proyecto de código de cadenas se esté ejecutando en una red local, puede probarlo.
Blockchain App Builder contiene un asistente integrado para ayudarle a invocar o consultar su código de cadenas.
- Seleccione el proyecto de código de cadenas en el panel Códigos de cadenas. En el panel Detalles de código de canal, seleccione Ejecutar. El nombre del código de cadenas ya debe estar seleccionado. Asegúrese de que el entorno de destino está definido en Entorno local y de que el canal será el único canal disponible por defecto.
- En el campo Función, seleccione el método en la lista desplegable. Se muestran todos los métodos disponibles en el código de cadenas.
- En el campo Parámetro de función, seleccione el botón Más acciones (…). Se abrirá una ventana con las propiedades disponibles para el método seleccionado. Introduzca las propiedades, haga clic en Omitir para cualquier propiedad no obligatoria que no desee enviar al llamar al método y haga clic en Guardar.
- Haga clic en Invocar.
La ventana de la consola Salida mostrará que se ha llamado a la función. Como alternativa, en el panel Acciones de código de cadenas, la ventana Salida de función muestra la salida. Haga clic en el botón Más acciones (…) para ver esta salida con formato.
Si desea guardar el método y los parámetros que acaba de ejecutar, puede hacer clic en Guardar e introducir un nombre y una descripción para él. Se guardará en el proyecto de código de cadena en la carpeta Queries. Para volver a utilizarlo, haga clic con el botón derecho y seleccione Abrir.
Si realiza cambios en el archivo de controlador que modificarían los métodos, seleccione el ícono Reload (Recargar) en la parte superior del panel Chaincode Execute (Ejecución de código de cadena). El cambio ahora se debe reflejar en la lista desplegable Función.
Note:
Si no desea utilizar el asistente para realizar pruebas, también puede ejecutar las herramientas de línea de comandos de Blockchain App Builder en la ventana Terminal de Visual Studio Code. Siga las instrucciones que se proporcionan aquí para probar con la línea de comandos: Test Your Chaincode on a Local Hyperledger Fabric Network.Prueba de Varios Usuarios de Token Localmente
Para probar un proyecto de token con varios usuarios localmente, puede utilizar la propiedad tokenUser para cambiar el emisor de llamada de cada transacción. Cada proyecto de código de cadenas de andamios incluye un archivo .ochain.json, que almacena metadatos del código de cadenas. Para cambiar el emisor de llamada, actualice el valor del campo tokenUser en el archivo .ochain.json.
{
"name": "digiCurrCC",
"description": "Chaincode package for digiCurrCC",
"chaincodeName": "digiCurrCC",
"chaincodeType": "node",
"configFileLocation": "/Users/user1/token.yml",
"appBuilderVersion": "21.2.3",
"nodeVersion": "v12.18.1",
"tokenUser": "admin"
}
Cuando un proyecto está andamiado, la propiedad tokenUser se define en el usuario admin por defecto de la red local. Para cambiar el emisor de llamada de una transacción, cambie la propiedad tokenUser para que coincida con la propiedad user_id que se definió cuando se creó la cuenta al llamar al método createAccount (TypeScript) o CreateAccount (Go).
Instalación y despliegue automáticos después de la actualización
Cada vez que actualice y guarde su código de cadenas, los cambios se compilarán, instalarán y desplegarán automáticamente. No es necesario eliminar o volver a activar la red local. Todos los proyectos se compilarán y desplegarán automáticamente en cada cambio.
Prueba de operaciones de ciclo de vida en una red remota de Oracle Blockchain Platform
Una vez que su proyecto de código de cadenas se haya desplegado correctamente en su red remota de Oracle Blockchain Platform, puede probarlo como se describe en Test Your Chaincode on a Local Hyperledger Fabric Network.
Puede utilizar los mismos comandos de llamada y consulta para realizar todas las transacciones de método en una red remota de Oracle Blockchain Platform Cloud o Enterprise Edition; todo lo soportado en la red local también está soportado en la red remota. Seleccione la instancia de Oracle Blockchain Platform como entorno de destino al ejecutar las pruebas.
Prueba de proyectos de token en una red remota de Oracle Blockchain Platform
Puede probar proyectos de código de cadenas que funcionan con tokens mediante Blockchain App Builder, el proxy de REST de Oracle Blockchain Platform o el SDK de Hyperledger Fabric.
Creador de aplicaciones de blockchain
Puede utilizar la extensión Visual Studio Code para llamar a transacciones con varios usuarios para probar códigos de cadenas de tokens. Para probar con varios usuarios, cambie los parámetros de autorización (nombre de usuario y contraseña) en el separador Entornos y, a continuación, guarde el entorno. Al llamar a transacciones, seleccione el mismo entorno de la lista desplegable y, a continuación, ejecute la transacción.
Proxy REST de Oracle Blockchain Platform
Puede utilizar el proxy REST en Oracle Blockchain Platform para ejecutar un código de cadena de token en una red remota de Oracle Blockchain Platform. Utilice cualquier cliente de proxy REST, como el cliente REST de Postman, para probar el proyecto de código de cadena.
Para probar varios usuarios, cambie los parámetros de autorización (nombre de usuario y contraseña) en el cliente REST o conéctese a una instancia diferente de Oracle Blockchain Platform.
Ejecutar consultas enriquecidas de SQL de Berkeley DB
Si decide crear el método executeQuery durante el desarrollo del código de cadena, puede ejecutar consultas enriquecidas de SQL si el código de cadena se despliega en una red de Oracle Blockchain Platform.
Si ha utilizado executeQuery en la sección customMethods del archivo de especificación, se creará un método executeQuery correspondiente en el controlador.
customMethods:
- executeQuery
- "fetchRawMaterial(supplierid: string, rawMaterialSupply: number)"
- "getRawMaterialFromSupplier(manufacturerId: string, supplierld: string, rawMaterialSupply: number)"
- "createProducts(manufacturerId: string, rawMaterialConsumed: number, productsCreated: number)"
- "sendProductsToDistribution()"
**
*
* BDB sql rich queries can be executed in OBP CS/EE.
* This method can be invoked only when connected to remote OBP CS/EE network.
*
*/
@Validator(yup.string())
public async executeQuery(query: string) {
const result = await OchainController.query(query);
return result;
}Puede llamar a este método para ejecutar consultas enriquecidas de SQL de base de datos de Berkeley en la red de Oracle Blockchain Platform, asegurándose de seleccionar el entorno de Oracle Blockchain Platform que ha creado como entorno de destino al ejecutar las consultas.
- En el panel Detalles de código de canal, seleccione Ejecutar. El nombre del código de cadena, el entorno de destino y el canal ya se deben rellenar previamente desde el paso de despliegue.
- En el campo Nombre de función, seleccione
executeQueryen la lista desplegable. - En el campo Parámetro de función, seleccione el botón Más acciones (…). Esto abrirá una ventana en la que podrá introducir la cadena de consulta. Introduzca los argumentos para la consulta y haga clic en Guardar.
- Haga clic en Consulta.
ochain query executeQuery "SELECT key, valueJson FROM <STATE> WHERE
json_extract(valueJson, '$.rawMaterialAvailable') = 4" La consulta SQL completa se toma en el argumento, por lo que puede realizar cambios en la consulta sobre la marcha.
Generación de comandos de la CLI a partir de consultas
Si ha guardado consultas en un proyecto de código de cadenas en Visual Studio Code, puede generar automáticamente los comandos equivalentes de la CLI.
Debe tener al menos una consulta guardada en un proyecto de código de cadenas para generar comandos de la CLI para Mac OSX y Linux y para Microsoft Windows.
- Expanda el proyecto en el panel Códigos de cadenas.
- Haga clic con el botón derecho en Consultas.
- Haga clic en Generate CLI Commands (Generar comandos de CLI).
Se generan dos archivos de texto y se muestran en la sección Consultas del panel Códigos de cadenas: CLIcommandsForLinux.txt y CLIcommandsForWindows.txt. Seleccione el nombre de archivo para abrir el archivo y muestre los comandos de la CLI correspondientes.