OpenUI5 sample app to demonstrate UI5's OPA (UICon'18)
- copied from openui5-sample-app
- Uses OData Model to manipulate todo items
- Relies on MockServer to simulate backend
- Fully tested with OPA
- UI5Con presentation
- Install Node.js (from nodejs.org).
- Install the Grunt CLI
npm install --global grunt-cli
- Clone the repository and navigate into it
git clone https://github.com/ArnaudBuchholz/training-ui5con18-opa.git cd training-ui5con18-opa
- Install all npm dependencies (also installs all bower dependencies)
npm install
Run grunt serve
to start a local server with your application at http://localhost:8080.
Run grunt watch
to also execute your unit tests automatically after every change.
Run grunt lint
to run static code checks on your project.
Run grunt test
to execute all tests and get a coverage report.
Run grunt build
to build a deployable version of your app to /dist
.
Despite the 100% coverage, there are still issues in the application:
- In the dialog, the date/time pickers could be bound to an invalid property, no test will fail
- In the dialog, the "Due date" date/time picker is not validated. If one enters an invalid date, no error is shown. Worse, the dialog is not refreshed properly when re-opened.
- In the dialog, when the server throws an error, the dialog is closed. But it would be better to keep the dialog opened to allow the user to change the value. For instance: what if the backend rejects empty titles?