Remove Mayfly database dependency

Some unit/integration tests in Mifos uses an "in memory" database "Mayfly". Mifos database has lots of MySQL specific SQL and Mayfly doesn't support all of them which makes testing tedious. The objective here is to get rid of Mayfly dependency completely..

These are tests which uses TestDatabase (TestDatabase internally do configuration related to Mayfly and returns the instance of TestDatabase)

1. ReportsPersistenceIntegrationTest (Done) 2. QuestionsActionStrutsTest (Done) 3. PPISurveyTest (Done) 4. PPIActionStrutsTest (Done) 5. LookUpValueEntityTest (Done) 6. CompositeUpgradeTest (Done) 7. AddReportTest (Done) 8. AddRepaymentRuleIntegrationTest (Done) 9. AddInterestCalcRuleIntegrationTest (Done) 10. AddFieldTest (Done) 11. AddActivityIntegrationTest (Done) 12. AddAccountStateFlagIntegrationTest (Done) 13. UpgradeTest (Done)

The process would be to change the tests to either a real unit test Or use Mysql in place of Mayfly NOTE: Make sure that "what is created by the test should be cleaned at the end of the test in database"
Then we will require to delete

  • MifosInMemoryTestCase (deleted)
  • TestDatabase (remove only required parts)

After that mayfly dependency from maven configuration files (pom.xml) need to be removed.

Please let us know if you want to work on this project, or if you have questions, by emailing the Mifos Developer list:

http://www.mifos.org/developers/listserv/mailing-lists#developer-mailing-list