public void NullUtils_GetBoolean_NotNull_Success()
        {
            var reader = new StubDataReader(new StubResultSet("unit_test").AddRow(true));

            reader.Read();
            Assert.IsTrue(NullUtils.GetBoolean(reader, "unit_test"), "GetBoolean(true) should have returned true");
        }
        public void NullUtils_GetDateTimeOrNull_Null_Success()
        {
            var reader = new StubDataReader(new StubResultSet("unit_test").AddRow(DBNull.Value));

            reader.Read();
            Assert.IsNull(NullUtils.GetDateTimeOrNull(reader, "unit_test"),
                          "GetDateTime(null) should have returned null");
        }
        public void NullUtils_GetDateTime_Null_Success()
        {
            var reader = new StubDataReader(new StubResultSet("unit_test").AddRow(DBNull.Value));

            reader.Read();
            Assert.AreEqual(default(DateTime), NullUtils.GetDateTime(reader, "unit_test"),
                            "GetDateTime(null) should not have returned a default DateTime");
        }
        public void NullUtils_GetDateTime_Value_Success()
        {
            var reader = new StubDataReader(new StubResultSet("unit_test").AddRow(new DateTime(2004, 12, 13)));

            reader.Read();
            Assert.AreEqual(new DateTime(2004, 12, 13), NullUtils.GetDateTime(reader, "unit_test"),
                            "GetDateTime(value) should have returned a value");
        }
        public void NullUtils_GetString_Null_Success()
        {
            var reader = new StubDataReader(new StubResultSet("unit_test").AddRow(DBNull.Value));

            reader.Read();
            Assert.AreEqual(String.Empty, NullUtils.GetString(reader, "unit_test"),
                            "GetString(null) should have returned an empty string");
        }
        public void NullUtils_GetStringOrNull_Value_Success()
        {
            var reader = new StubDataReader(new StubResultSet("unit_test").AddRow("123"));

            reader.Read();
            Assert.AreEqual("123", NullUtils.GetStringOrNull(reader, "unit_test"),
                            "GetStringOrNull(value) did not return the expected value");
        }
        public void NullUtils_GetInt64_Value_Success()
        {
            var reader = new StubDataReader(new StubResultSet("unit_test").AddRow(5L));

            reader.Read();
            Assert.AreEqual(5L, NullUtils.GetInt64(reader, "unit_test"),
                            "GetInt64(value) did not return the expected value");
        }
        public void NullUtils_GetInt64_Null_Success()
        {
            var reader = new StubDataReader(new StubResultSet("unit_test").AddRow(DBNull.Value));

            reader.Read();
            Assert.AreEqual(default(long), NullUtils.GetInt64(reader, "unit_test"),
                            "GetInt64(null) should have returned the default long value");
        }
        public void NullUtils_GetInt16OrNull_Value_Success()
        {
            var reader = new StubDataReader(new StubResultSet("unit_test").AddRow((short)17));

            reader.Read();
            Assert.AreEqual((short)17, NullUtils.GetInt16OrNull(reader, "unit_test").Value,
                            "GetInt16OrNull(value) did not return the expected value");
        }
Beispiel #10
0
 public void StubDataReader_GetName_GetDataTypeName_Success()
 {
     using (var reader = new StubDataReader(new StubResultSet("unit", "test")))
     {
         Assert.AreEqual("test", reader.GetName(1));
         Assert.AreEqual("unit", reader.GetDataTypeName(0));
     }
 }
Beispiel #11
0
 public void StubDataReader_GetFieldType_Success()
 {
     using (var reader = new StubDataReader(new StubResultSet("more", "fun").AddRow(8, "yowza")))
     {
         reader.Read();
         Assert.AreEqual(typeof(int), reader.GetFieldType(0));
         Assert.AreEqual(typeof(string), reader.GetFieldType(1));
     }
 }
        public void NullUtils_GetGuidOrNull_Value_Success()
        {
            var guid   = Guid.NewGuid();
            var reader = new StubDataReader(new StubResultSet("unit_test").AddRow(guid));

            reader.Read();
            Assert.AreEqual(guid, NullUtils.GetGuidOrNull(reader, "unit_test").Value,
                            "GetGuidOrNull(value) did not return the expected value");
        }
Beispiel #13
0
        public void StubDataReader_IndexAccessors_Read_Success()
        {
            using (var reader = new StubDataReader(new StubResultSet("abc", "def").AddRow(3, "nice")))
            {
                Assert.IsTrue(reader.Read(), "First call to Read() should have had data");
                Assert.AreEqual(3, reader[0], "The first column (by index) was not correct");
                Assert.AreEqual("nice", reader["def"], "The second column (by name) was not correct");

                Assert.IsFalse(reader.Read(), "Second call to Read() should not have had data");
            }
        }
Beispiel #14
0
 public void StubDataReader_IndexAccessors_BOF_Failure()
 {
     using (var reader = new StubDataReader(new StubResultSet()))
     {
         try
         {
             var column = reader[0];
             Assert.Fail("Index accessor should have thrown an exception (BOF)");
         }
         catch (InvalidOperationException) { }
     }
 }
        /// <summary>
        /// Construct the database service
        /// </summary>
        /// <param name="data">
        /// The <see cref="StubDataReader"/> with data to use for query executions
        /// </param>
        /// <param name="providers">
        /// Providers of type <see cref="IDatabaseQueryProvider"/> or <see cref="IQueryFragmentProvider"/>
        /// </param>
        public MockDatabaseService(StubDataReader data, params Type[] providers)
        {
            Data            = data;
            Queries         = new Dictionary <string, DatabaseQuery>();
            ExecutedQueries = new List <ExecutedQuery>();

            DatabaseService.FillQueryLibrary(Queries, providers);

            if (!Queries.ContainsKey("database.sequence.generic"))
            {
                DatabaseService.FillQueryLibrary(Queries, typeof(DatabaseQueryProvider));
            }
        }
Beispiel #16
0
        public void StubDataReader_FieldCount_Success()
        {
            var result1 = new StubResultSet("col6", "col7", "col8");
            var result2 = new StubResultSet("col9", "col0");

            using (var reader = new StubDataReader(result1, result2))
            {
                Assert.IsNotNull(reader, "The StubDataReader object should not have been null");
                Assert.AreEqual(3, reader.FieldCount, "The field count for the first result set was incorrect");

                reader.NextResult();
                Assert.AreEqual(2, reader.FieldCount, "The field count for the second result was incorrect");
            }
        }
Beispiel #17
0
        public void StubDataReader_IndexAccessors_EOF_Failure()
        {
            using (var reader = new StubDataReader(new StubResultSet()))
            {
                Assert.IsFalse(reader.Read(), "Read() should not have had data");

                try
                {
                    var column = reader[0];
                    Assert.Fail("Index accessor should have thrown an exception (EOF)");
                }
                catch (InvalidOperationException) { }
            }
        }
        public void IsDBNull_NotNull_Test()
        {
            StubResultSetCollection stubResultSets = new StubResultSetCollection();

            stubResultSets.Add(CreateIsDBNullResultSet());

            StubDataReader target = new StubDataReader(stubResultSets);

            target.Read();
            int  i        = 2;
            bool expected = false;
            bool actual;

            actual = target.IsDBNull(i);
            Assert.AreEqual(expected, actual);
        }
Beispiel #19
0
        public void CollectionSortHandler_CollectionSortHandler_PassNullWriterInConstructor_ThrowArgumentNullException()
        {
            using (ShimsContext.Create())
            {
                //
                // Arrange.
                //
                var parser = new StubIDataParser <double>();
                var reader = new StubDataReader(new StubIValidator());
                ShimDataWriter <double> writer = null;

                //
                // Assert.
                //
                Assert.ThrowsException <ArgumentNullException>(() => new CollectionSortHandler <double>(reader, writer, parser));
            }
        }
Beispiel #20
0
        public void StubDataReader_CurrentResultSet_NextResult_Failure()
        {
            using (var reader = new StubDataReader())
            {
                Assert.IsNotNull(reader, "The StubDataReader object should not have been null");
                Assert.IsFalse(reader.NextResult(), "NextResult() should not have had data");

                try
                {
                    var results = reader.CurrentResultSet;
                    Assert.Fail("Call to CurrentResultSet should have thrown an exception");
                }
                catch (InvalidOperationException exception)
                {
                    Assert.AreEqual("Current ResultSet is at EOF", exception.Message,
                                    "Unexpected EOF exception message");
                }
            }
        }
Beispiel #21
0
        public void StubDataReader_CurrentResultSet_NextResult_Success()
        {
            var result1 = new StubResultSet("col1", "col2", "col3");
            var result2 = new StubResultSet("col4", "col5");

            using (var reader = new StubDataReader(result1, result2))
            {
                Assert.IsNotNull(reader, "The StubDataReader object should not have been null");

                var currentSet = reader.CurrentResultSet;
                Assert.IsNotNull(currentSet, "First call to CurrentResultSet should not have returned null");
                Assert.AreEqual(result1, currentSet, "First call to CurrentResultSet did not return the first set");

                Assert.IsTrue(reader.NextResult(), "First call to NextResult() should have had data");

                currentSet = reader.CurrentResultSet;
                Assert.IsNotNull(currentSet, "Second call to CurrentResultSet should not have returned null");
                Assert.AreEqual(result2, currentSet, "Second call to CurrentResultSet did not return the second set");
            }
        }