Exemple #1
0
        public void SqlServer_DDLStatement_DoesntCrash()
        {
            var repo = new SqlServerIntegrationRepository(GetConnection());

            repo.ExecuteAdHocQuery("CREATE DATABASE datafacetestddl");
            repo.ExecuteAdHocQuery("DROP DATABASE datafacetestddl");
        }
Exemple #2
0
        public void SqlServer_ToScalar_Works()
        {
            IDatabaseConnection connection = GetConnection();

            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());

            Assert.AreEqual(142, repo.ToScalar());
        }
Exemple #3
0
        public void SqlServer_ManyManyTransactions_DoesntLeak()
        {
            IDatabaseConnection connection = GetConnection();
            InitializeDatabase(connection);

            for (int ii = 0; ii < 1000; ii++) {
                var repo = new SqlServerIntegrationRepository(GetConnection());
                repo.SprocWithSchema();
            }
        }
Exemple #4
0
        public void SqlServer_ToScalarNull_Works()
        {
            IDatabaseConnection connection = GetConnection();

            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());

            Assert.IsNull(repo.ToScalarNull());
        }
Exemple #5
0
        public void SqlServer_EmptyMultipleResultSets_Work()
        {
            IDatabaseConnection connection = GetConnection();
            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());
            var model = repo.EmptyMultipleResultSetModel();

            Assert.IsNotNull(model);
        }
Exemple #6
0
        public void SqlServer_ToFirstOrDefault_WithoutValue_Works()
        {
            IDatabaseConnection connection = GetConnection();

            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());

            Assert.IsNull(repo.ToFirstOrDefaultScalar2());
        }
Exemple #7
0
        public void SqlServer_SprocWithParameter_Works()
        {
            IDatabaseConnection connection = GetConnection();

            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());

            Assert.AreEqual(143, repo.SprocWithParameter(143));
        }
Exemple #8
0
        public void SqlServer_EmptyMultipleResultSets_Work()
        {
            IDatabaseConnection connection = GetConnection();

            InitializeDatabase(connection);

            var repo  = new SqlServerIntegrationRepository(GetConnection());
            var model = repo.EmptyMultipleResultSetModel();

            Assert.IsNotNull(model);
        }
Exemple #9
0
        public void SqlServer_ManyManyTransactions_DoesntLeak()
        {
            IDatabaseConnection connection = GetConnection();

            InitializeDatabase(connection);

            for (int ii = 0; ii < 1000; ii++)
            {
                var repo = new SqlServerIntegrationRepository(GetConnection());
                repo.SprocWithSchema();
            }
        }
Exemple #10
0
        public void SqlServer_CommitTransaction_HasSideEffect()
        {
            IDatabaseConnection connection = GetConnection();
            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());
            using (var transaction = repo.WithTransaction()) {
                repo.SprocWithSideEffect();
                transaction.Commit();
            }

            Assert.AreEqual(1, repo.GetCountOfSideEffects());
        }
Exemple #11
0
        public void SqlServer_RollbackTransaction_DoesntHaveSideEffect()
        {
            IDatabaseConnection connection = GetConnection();

            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());

            using (var transaction = repo.WithTransaction()) {
                repo.SprocWithSideEffect();
                transaction.Rollback();
            }

            Assert.AreEqual(0, repo.GetCountOfSideEffects());
        }
Exemple #12
0
        public void SqlServer_CommitTransaction_HasSideEffect()
        {
            IDatabaseConnection connection = GetConnection();

            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());

            using (var transaction = repo.WithTransaction()) {
                repo.SprocWithSideEffect();
                transaction.Commit();
            }

            Assert.AreEqual(1, repo.GetCountOfSideEffects());
        }
Exemple #13
0
        public void SqlServer_MultipleResultSets_Work()
        {
            IDatabaseConnection connection = GetConnection();
            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());
            var model = repo.ToMultipleResultSetModel();

            Assert.AreEqual(model.ResultSet0.Count, 2);
            Assert.AreEqual(model.ResultSet0[0].IntValue, 147);
            Assert.AreEqual(model.ResultSet0[1].IntValue, 192);
            Assert.AreEqual(model.ResultSet0[0].BoolValue, true);
            Assert.AreEqual(model.ResultSet0[1].BoolValue, false);

            Assert.AreEqual(model.ResultSet1.Count, 2);
            Assert.AreEqual(model.ResultSet1[0].StringValue, "abc");
            Assert.AreEqual(model.ResultSet1[1].StringValue, "def");
            Assert.AreEqual(model.ResultSet1[0].DateTimeValue, new DateTime(2001, 2, 3));
            Assert.AreEqual(model.ResultSet1[1].DateTimeValue, new DateTime(2004, 5, 6));
        }
Exemple #14
0
        public void SqlServer_MultipleResultSets_Work()
        {
            IDatabaseConnection connection = GetConnection();

            InitializeDatabase(connection);

            var repo  = new SqlServerIntegrationRepository(GetConnection());
            var model = repo.ToMultipleResultSetModel();

            Assert.AreEqual(model.ResultSet0.Count, 2);
            Assert.AreEqual(model.ResultSet0[0].IntValue, 147);
            Assert.AreEqual(model.ResultSet0[1].IntValue, 192);
            Assert.AreEqual(model.ResultSet0[0].BoolValue, true);
            Assert.AreEqual(model.ResultSet0[1].BoolValue, false);

            Assert.AreEqual(model.ResultSet1.Count, 2);
            Assert.AreEqual(model.ResultSet1[0].StringValue, "abc");
            Assert.AreEqual(model.ResultSet1[1].StringValue, "def");
            Assert.AreEqual(model.ResultSet1[0].DateTimeValue, new DateTime(2001, 2, 3));
            Assert.AreEqual(model.ResultSet1[1].DateTimeValue, new DateTime(2004, 5, 6));
        }
Exemple #15
0
        public void SqlServer_SprocWithSchema_Works()
        {
            IDatabaseConnection connection = GetConnection();
            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());
            Assert.AreEqual(123, repo.SprocWithSchema());
        }
Exemple #16
0
        public void SqlServer_ToScalarNull_Works()
        {
            IDatabaseConnection connection = GetConnection();
            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());
            Assert.IsNull(repo.ToScalarNull());
        }
Exemple #17
0
        public void SqlServer_ToScalar_Works()
        {
            IDatabaseConnection connection = GetConnection();
            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());
            Assert.AreEqual(142, repo.ToScalar());
        }
Exemple #18
0
 public void SqlServer_DDLStatement_DoesntCrash()
 {
     var repo = new SqlServerIntegrationRepository(GetConnection());
     repo.ExecuteAdHocQuery("CREATE DATABASE datafacetestddl");
     repo.ExecuteAdHocQuery("DROP DATABASE datafacetestddl");
 }
Exemple #19
0
        public void SqlServer_RollbackTransaction_DoesntHaveSideEffect()
        {
            IDatabaseConnection connection = GetConnection();
            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());
            using (var transaction = repo.WithTransaction()) {
                repo.SprocWithSideEffect();
                transaction.Rollback();
            }

            Assert.AreEqual(0, repo.GetCountOfSideEffects());
        }
Exemple #20
0
        public void SqlServer_ToFirstOrDefault_WithValue_Works()
        {
            IDatabaseConnection connection = GetConnection();
            InitializeDatabase(connection);

            var repo = new SqlServerIntegrationRepository(GetConnection());
            Assert.AreEqual(1, repo.ToFirstOrDefaultScalar1());
        }