public void Test_IsolationLevel_SQLite()
 {
     //---------------Execute Test ----------------------
     DatabaseConnection conn =
         new DatabaseConnectionSQLite("System.Data.SQLite", "System.Data.SQLite.SQLiteConnection");
     //---------------Test Result -----------------------
     Assert.AreEqual(IsolationLevel.Serializable, conn.IsolationLevel);
 }
 public void Test_CreateDatabaseConnection_SQLite()
 {
     DatabaseConnection conn =
         new DatabaseConnectionSQLite("System.Data.SQLite", "System.Data.SQLite.SQLiteConnection");
     conn.ConnectionString =
         new DatabaseConfig(DatabaseConfig.SQLite, "test", "test", "test", "test", "1000").GetConnectionString();
     Assert.AreEqual("System.Data.SQLite", conn.TestConnection.GetType().Namespace,
                     "Namespace of SQLite connection is wrong.");
 }
 public void Test_OpenConnection()
 {
     //---------------Set up test pack-------------------
     DatabaseConnection conn = new DatabaseConnectionSQLite("System.Data.SQLite", "System.Data.SQLite.SQLiteConnection");
     conn.ConnectionString = new DatabaseConfig(DatabaseConfig.SQLite, "", "sqlite-testdb.db", "", "", "").GetConnectionString();
     //---------------Execute Test ----------------------
     IDbConnection openConnection = null;
     try
     {
         openConnection = conn.GetOpenConnectionForReading();
      
         //---------------Test Result -----------------------
         Assert.IsNotNull(openConnection);
         Assert.AreEqual(ConnectionState.Open, openConnection.State );
         Assert.AreEqual("System.Data.SQLite", openConnection.GetType().Namespace);
     } 
     //---------------Tear down -------------------------
     finally
     {
         if (openConnection != null && openConnection.State != ConnectionState.Closed) { openConnection.Close();}
     }
 }
        public void Test_BeginTransaction()
        {
            //---------------Set up test pack-------------------
            DatabaseConnection conn = new DatabaseConnectionSQLite("System.Data.SQLite", "System.Data.SQLite.SQLiteConnection");
            conn.ConnectionString = new DatabaseConfig(DatabaseConfig.SQLite, "", "sqlite-testdb.db", "", "", "").GetConnectionString();
            //---------------Execute Test ----------------------
            IDbConnection openConnection = null;
            try
            {
                openConnection = conn.GetOpenConnectionForReading();
                IDbTransaction transaction = conn.BeginTransaction(openConnection);

                //---------------Test Result -----------------------
                Assert.IsNotNull(transaction);
                Assert.AreSame(openConnection, transaction.Connection);
                Assert.AreEqual(IsolationLevel.Serializable, transaction.IsolationLevel);
            }
            //---------------Tear down -------------------------
            finally
            {
                if (openConnection != null && openConnection.State != ConnectionState.Closed) { openConnection.Close(); }
            }

        }
 public void TestCreateParameterNameGenerator()
 {
     //---------------Set up test pack-------------------
     IDatabaseConnection databaseConnection = new DatabaseConnectionSQLite("", "");
     //---------------Assert PreConditions---------------            
     //---------------Execute Test ----------------------
     IParameterNameGenerator generator = databaseConnection.CreateParameterNameGenerator();
     //---------------Test Result -----------------------
     Assert.AreEqual(":", generator.PrefixCharacter);
     //---------------Tear Down -------------------------          
 }
 public void Test_CreateSqlFormatter_AlternateConstructor_SQLite()
 {
     //---------------Set up test pack-------------------
     string connectionString =
         new DatabaseConfig(DatabaseConfig.SqlServer, "test", "test", "test", "test", "1000").GetConnectionString
             ();
     IDatabaseConnection dbConn = new DatabaseConnectionSQLite
         ("System.Data", "System.Data.SqlClient.SqlConnection", connectionString);
     //---------------Assert Precondition----------------
     //---------------Execute Test ----------------------
     ISqlFormatter defaultSqlFormatter = dbConn.SqlFormatter;
     //---------------Test Result -----------------------
     Assert.IsInstanceOf(typeof(SqlFormatter), defaultSqlFormatter);
     SqlFormatter sqlFormatter = (SqlFormatter)defaultSqlFormatter;
     Assert.IsNotNull(sqlFormatter);
     Assert.AreEqual("\"", sqlFormatter.LeftFieldDelimiter);
     Assert.AreEqual("\"", sqlFormatter.RightFieldDelimiter);
     Assert.AreEqual("", sqlFormatter.LimitClauseAtBeginning);
     Assert.AreEqual("limit", sqlFormatter.LimitClauseAtEnd);
     Assert.AreEqual(sqlFormatter.LeftFieldDelimiter, dbConn.LeftFieldDelimiter);
     Assert.AreEqual(sqlFormatter.RightFieldDelimiter, dbConn.RightFieldDelimiter);
     //            StringAssert.Contains(sqlFormatter.LimitClauseAtBeginning, dbConn.GetLimitClauseForBeginning(1));
     //            StringAssert.Contains(sqlFormatter.LimitClauseAtEnd, dbConn.GetLimitClauseForEnd(1));
 }