I wanted to get rid of the ifdef spam that was starting to show up outside the classes so I rearranged some of the code to look a bit cleaner. Fixed an issue with getHomeDirectory on linux to give back the directory of the hardwar settings folder for that user rather then the users home directory.
Due to the fact that i've been unable to fine an acceptable solution for adding mocks to the GameState unit tests i've decided to stub out some tests for now until I wish to revisit the issue. The current problem is due to the fact that mocking Ogre would require a large amount of effort and running it normally would be having to create a render window which is something I don't want to do for the unit tests. I've made some additional improvements to GameRoot by finding the users home folder, creating a hardwar directory in there that can then be used for user configurations and logging. Ogre no longer spams the console with the log anymore.
Some of the tests unfortunately can not be implemented yet due to the fact that the game root api doesn't support it. Rather then make a massive patch i'm marking it as todo for later.
… Currently there is no OSX implementation and there is some stub code for the windows.
…code files in both the unit test and the subdirectory in which they originally reside.
Cleaned up the Game Root implementation by removing the platform specific code into it's own classes. This means there will be less if macro spam in the GameRoot class.
…it tests So that I don't forget later i've added messages to cerr about unimplemented unit tests. Added the network task seems to be ok since it doesn't depend upon any GUI code.
Just realised that the client executable wasn't being copied to the bin directory. I've also added boiler plate code for the game manager unit test, still unimplemented though.
Made some changes to the game manager code to make unit testing a bit easier change make the unit tests yet. Will fill them in later.
Removed the game's game states and tasks so that things would get compiling again. Now I can focus on rebuilding the code with it always building.
Just some quick refactoring before I remove the MyGUI and OgreMax dependencies
I'm trying to simplify the implementation as much as possible this commit currently doesn't build the unit tests because MyGUI is a dependency.
Started the switch from MyGUi to CEGUI