Testing the application
After we have built all the functions, we can start testing the application. Please note that we have not built any user interface. The basic methods of our application can all be tested without the UI. We will only need to test the UI code if the code was intended to influence the UI.
We need to build a test Codeunit, containing the elements that we would like to test. It should also create the Setup and Master Data that we need.
This can be split into two test code units, but for the sake of simplicity, we have combined them into one.
The first set of test functions implements the data, whereas the second set tests the result. We have a set of helper functions to avoid duplicate code.
One of the tests is the price calculation. We can create a specific record in the price table, and then test whether the price is applied:
[Test] TestPrice() Stay.GET('STAY0001'); Stay.TESTFIELD(Price, 10);