Пример #1
0
        public void Test_IsolationLevel_Firebird()
        {
            //---------------Execute Test ----------------------
            DatabaseConnection conn =
                new DatabaseConnectionFirebird("FirebirdSql.Data.FirebirdClient", "FirebirdSql.Data.FirebirdClient.FbConnection");

            var tmpFile = Path.GetTempFileName();

            //---------------Test Result -----------------------
            Assert.AreEqual(IsolationLevel.RepeatableRead, conn.IsolationLevel);
        }
        public void TestCreateParameterNameGenerator()
        {
            //---------------Set up test pack-------------------
            IDatabaseConnection databaseConnection = new DatabaseConnectionFirebird("", "");
            //---------------Assert PreConditions---------------
            //---------------Execute Test ----------------------
            IParameterNameGenerator generator = databaseConnection.CreateParameterNameGenerator();

            //---------------Test Result -----------------------
            Assert.AreEqual("@", generator.PrefixCharacter);
            //---------------Tear Down -------------------------
        }
        public void Test_CreateCustomConnectionString()
        {
            //---------------Set up test pack-------------------
            string             connectString      = "";
            DatabaseConnection databaseConnection = new DatabaseConnectionFirebird("", "", connectString);
            //---------------Assert Precondition----------------

            //---------------Execute Test ----------------------
            string setConnectionString = databaseConnection.ConnectionString;

            //---------------Test Result -----------------------
            Assert.AreEqual(setConnectionString, connectString);
        }
Пример #4
0
        public void Test_CreateDatabaseConnection_Firebird()
        {
            DatabaseConnection conn = new DatabaseConnectionFirebird
                                          ("FirebirdSql.Data.FirebirdClient", "FirebirdSql.Data.FirebirdClient.FbConnection");

            conn.ConnectionString =
                new DatabaseConfig
                    (DatabaseConfig.Firebird, "testserver", "testdatabase", "testusername", "testpassword", "3050").
                GetConnectionString();
            Assert.AreEqual
                ("FirebirdSql.Data.FirebirdClient", conn.TestConnection.GetType().Namespace,
                "Namespace of firebird connection is wrong.");
        }
Пример #5
0
        private static string CreateTemporaryFirebirdDatabase()
        {
            var databaseFile = Path.GetTempFileName();

            File.Delete(databaseFile);

            var conn = new DatabaseConnectionFirebird("FirebirdSql.Data.FirebirdClient", "FirebirdSql.Data.FirebirdClient.FbConnection");

            File.Delete(databaseFile);

            conn.ConnectionString = CreateFirebirdEmbeddedConnectionStringFor(databaseFile);
            TestUsingDatabase.WriteOutFirebirdEmbeddedLibrariesToCurrentDirectory();
            var concrete      = conn.GetConnection();
            var creatorMethod = concrete.GetType().GetMethods().Where(mi =>
            {
                if (mi.Name != "CreateDatabase")
                {
                    return(false);
                }
                var parameters = mi.GetParameters();
                if (parameters.Length != 2)
                {
                    return(false);
                }
                if (parameters[0].Name != "connectionString")
                {
                    return(false);
                }
                if (parameters[0].ParameterType != typeof(string))
                {
                    return(false);
                }
                if (parameters[1].Name != "overwrite")
                {
                    return(false);
                }
                if (parameters[1].ParameterType != typeof(bool))
                {
                    return(false);
                }
                return(true);
            }).FirstOrDefault();

            creatorMethod.Invoke(conn, new object[] { conn.ConnectionString, true });
            return(databaseFile);
        }
        public void TestSqlFormatter()
        {
            //---------------Set up test pack-------------------
            DatabaseConnection databaseConnection = new DatabaseConnectionFirebird("", "");
            //---------------Assert Precondition----------------

            //---------------Execute Test ----------------------
            ISqlFormatter defaultSqlFormatter = databaseConnection.SqlFormatter;

            //---------------Test Result -----------------------
            Assert.IsInstanceOf(typeof(SqlFormatter), defaultSqlFormatter);
            SqlFormatter formatter = (SqlFormatter)defaultSqlFormatter;

            Assert.AreEqual("\"", formatter.LeftFieldDelimiter);
            Assert.AreEqual("\"", formatter.RightFieldDelimiter);
            Assert.AreEqual("FIRST", formatter.LimitClauseAtBeginning);
            Assert.AreEqual("", formatter.LimitClauseAtEnd);
        }
Пример #7
0
        public void Test_CreateSqlFormatter_Firebird()
        {
            //---------------Set up test pack-------------------
            IDatabaseConnection dbConn = new DatabaseConnectionFirebird("System.Data", "System.Data.SqlClient.SqlConnection");
            //---------------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("FIRST", sqlFormatter.LimitClauseAtBeginning);
            Assert.AreEqual("", sqlFormatter.LimitClauseAtEnd);
            Assert.AreEqual(sqlFormatter.LeftFieldDelimiter, dbConn.LeftFieldDelimiter);
            Assert.AreEqual(sqlFormatter.RightFieldDelimiter, dbConn.RightFieldDelimiter);
        }