/oDataPromise

Use oData like a promise

Primary LanguageJavaScript

oData con promesas

La funcionalidad principal de este proyecto es encapsular las llamadas oData en promesas, para aprovechar sus funcionalidades y mejorar la legibilidad.

Comenzando 🚀

Estas instrucciones te permitirán obtener una copia del proyecto en funcionamiento en tu entorno de desarrollo.

Pre-requisitos 📋

Se utilizan características de JavaScript ES6, por lo que solo funciona en navegadores que lo soporten. Para evitar que el IDE las marque como erróneas hay que indicarle que el código sigue esta versión.

Para hacerlo en SAP WebIDE haz click derecho en la carpeta del proyecto, ve a project/project settings image

Ve a Code Checking/JavaScript/Validator Configuration y en env añade "es6": true image

Instalación 🔧

Con clonar el proyecto en tu entorno de desarrollo es suficiente. No tiene niguna dependencia y está listo para ser usado.

Ejecutando las pruebas ⚙️

La suite de test está realizada en qUnit. Para lanzarla en SAP WebIDE, es suficiente con añadir una configuración Run as Unit Test indicando la ruta del archivo de test /webapp/test/unit/unitTests.qunit.html y ejecutarla.

Análisis de las pruebas 🔩

Se verifica que las funciones success y error definidas son invocadas cuando la promesa se resuelve correcta o incorrectamente.

Pruebas manuales

En el archivo /webapp/view/Main.view.xml hay definidos 4 botones, cada uno asociado a una de las funciones CRUD del oData y una tabla donde se muestra el resultado de realizar estas acciones. image

Para poder hacer estas pruebas se incluye un mockserver. En este enlace puedes ver como se ha realizado y una explicación de como configurar el entorno para utilizarlo.

Utilización 📦

Tan solo necesitas copiar y pegar el archivo ODataPromise.js en tu proyecto. Está localizado en /webapp/model/ pero puedes situarlo en la ruta que prefieras.

En el archivo /webapp/controller/Main.js hay un ejemplo de código para realizar las llamadas CRUD en las funciones onCreate, onRead, onUpdate y onRemove.

Construido con 🛠️

  • SAPui5 - El framework web
  • qUnit - La herramienta de testing