Development diary week 04 - GideonPARANOID/olandroid GitHub Wiki
Has it already been four weeks? Gosh. I guess I'm close to that, with a current streak of twenty six sequential days with commits to this project. This week has been another pretty good week. The standout things this week have been developing a testing suite & getting a more 3D aspect to the flights.
Most of the end of last week was spent getting my head around tests. It's been something I've been meaning to do earlier in the project, but the structure of Android tests is a bit tricky to work with, especially within the context of this application (mainly graphics-based). So for Android, the majority of tests come through the user interface & simulating users interacting with it. This is because a lot of the 'back end' of the application will be closely tied to that user interface & its input. There is a scheme for developing unit tests, which test activities more independently, but the tests I've written so far have been mainly 'instrumentation test cases', which work through different activities as the user would use the app.
The tests I've written so far test the user interface (buttons, string inputs etc.) & OLAN string interpretation. Not a particularly exhaustive set, I'll admit. I'll be investigating other, thorough test models like monkey which throws loads of random events at your application to truly test how well it can cope.
The other aspect of this week's work was making things more 3D. To do this, I've added a width element to drawn paths, by turning the lines into squares (or rather, two triangles) & matte filling. To make rotation simpler to see, I've coloured both sides of this path different colours - sky blue for the top & an earthy green for the bottom - opting for a face culling model, where each side is draw separately with different colours sent to the rudimentary shaders. This is pretty effective & looks rather good!
Other, less significant changes I've made this week include lots of refactoring as usual, the development of a colours file to define the theme & style of the app, styles for activity transitions & writing some more complex manoeuvres in the XML catalogue file.
Finally, but not least - I have a demo of this week's latest version of the application.