20120910 ======== Cool: I discovered `Unit Testing with Jasmine `_ and wrote my first JavaScript tests. Worked on the new ProjectContacts and Coaching tables. CoachingType, ClientState, demo fixtures and watch_tim. Added Lino configuration parameters :attr:`lino.Lino.use_jasmine` and :attr:`lino.Lino.jasmine_root`. Added :class:`lino.ui.extjs3.views.RunJasmine` view. To run the tests interactively, I simply point my browser to http://127.0.0.1:8000/run-jasmine Added a ´lino_welfare.demo` site which is used to run the Jasmine tests from a command line (requires `PhantomJS `):: T:\hgwork\welfare\lino_welfare\demo>run-jasmine-tests.bat 'waitFor()' finished in 4379ms. 7 specs, 1 failure in 4.227s Applications-specific can run Lino.pcsw.Clients can run Lino.lino.About can run Lino.pcsw.UsersWithClients can run Lino.pcsw.ClientsByCoach1 can run CalendarPanel That same site is also used to generate screenshots (using PhantomJS's `render `_ function):: T:\hgwork\welfare\lino_welfare\demo>makedocs.bat screenshooter.js has been loaded Loading http://127.0.0.1:8000 try again after 1 second try again after 1 second done Rendering to ../../docs/gen/screenshots/index.png true Loading http://127.0.0.1:8000/api/cal/CalendarPanel try again after 1 second try again after 1 second done Rendering to ../../docs/gen/screenshots/cal.CalendarPanel.png true Loading http://127.0.0.1:8000/api/cal/CalendarPanel?su=8 try again after 1 second done Rendering to ../../docs/gen/screenshots/cal.CalendarPanel-su.png true (...) TODO: - automatically generate the application-specific part of `lino/media/jasmine/specs.js` to `media/cache/js` and have `html_page_lines` include it. - Write documentation pages that use the generated screenshots. - The whole system currently works only for *read-only* (non-modifying) tests.