Class DbTest

  • All Implemented Interfaces:
    junit.framework.Test
    Direct Known Subclasses:
    AbstractDaoSessionTest, AbstractDaoTest

    public abstract class DbTest
    extends android.test.AndroidTestCase
    Base class for database related testing, which prepares an in-memory or an file-based DB (using the test Context). Also, offers some convenience methods to create new Application objects similar to ApplicationTestCase.

    Unlike ApplicationTestCase, this class should behave more correctly when you call createApplication(Class) during setUp(): ApplicationTestCase.testApplicationTestCaseSetUpProperly() leaves Application objects un-terminated.

    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected Database db  
      static java.lang.String DB_NAME  
      protected boolean inMemory  
      protected java.util.Random random  
      • Fields inherited from class android.test.AndroidTestCase

        mContext
    • Constructor Summary

      Constructors 
      Constructor Description
      DbTest()  
      DbTest​(boolean inMemory)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      <T extends android.app.Application>
      T
      createApplication​(java.lang.Class<T> appClass)
      Returns a prepared application with the onCreate method already called.
      protected Database createDatabase()
      May be overriden by sub classes to set up a different db.
      <T extends android.app.Application>
      T
      getApplication()
      Gets the previously created application.
      protected void logTableDump​(java.lang.String tablename)  
      protected void setUp()  
      protected void tearDown()  
      void terminateApplication()
      Terminates a previously created application.
      • Methods inherited from class android.test.AndroidTestCase

        assertActivityRequiresPermission, assertReadingContentUriRequiresPermission, assertWritingContentUriRequiresPermission, getContext, scrubClass, setContext, testAndroidTestCaseSetupProperly
      • Methods inherited from class junit.framework.TestCase

        countTestCases, createResult, getName, run, run, runBare, runTest, setName, toString
      • Methods inherited from class junit.framework.Assert

        assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail, failNotEquals, failNotSame, failSame
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • random

        protected final java.util.Random random
      • inMemory

        protected final boolean inMemory
    • Constructor Detail

      • DbTest

        public DbTest()
      • DbTest

        public DbTest​(boolean inMemory)
    • Method Detail

      • setUp

        protected void setUp()
                      throws java.lang.Exception
        Overrides:
        setUp in class android.test.AndroidTestCase
        Throws:
        java.lang.Exception
      • createApplication

        public <T extends android.app.Application> T createApplication​(java.lang.Class<T> appClass)
        Returns a prepared application with the onCreate method already called.
      • terminateApplication

        public void terminateApplication()
        Terminates a previously created application. Also called by tearDown() if needed.
      • getApplication

        public <T extends android.app.Application> T getApplication()
        Gets the previously created application.
      • createDatabase

        protected Database createDatabase()
        May be overriden by sub classes to set up a different db.
      • tearDown

        protected void tearDown()
                         throws java.lang.Exception
        Overrides:
        tearDown in class android.test.AndroidTestCase
        Throws:
        java.lang.Exception
      • logTableDump

        protected void logTableDump​(java.lang.String tablename)