Beispiel #1
0
 public IDatabaseRow LoadRowUsing(IQuery query)
 {
     using (IDatabaseConnection connection = _connectionFactory.Create( )) {
         DataTable table = connection.CreateCommandFor(query).ExecuteQuery( );
         return(table.Rows.Count > 0 ? new DatabaseRow(table.Rows[0]) : DatabaseRow.Blank);
     }
 }
Beispiel #2
0
 public DataTable LoadTableUsing(string sqlQuery)
 {
     using (IDatabaseConnection connection = _connectionFactory.Create( )) {
         IDatabaseCommand command = connection.CreateCommandFor(sqlQuery);
         return((null != command) ? command.ExecuteQuery( ) : null);
     }
 }
Beispiel #3
0
 public void Execute(IEnumerable <IQuery> queries)
 {
     using (IDatabaseConnection connection = _connectionFactory.Create( )) {
         foreach (IQuery query in queries)
         {
             connection.CreateCommandFor(query).ExecuteQuery( );
         }
     }
 }
Beispiel #4
0
 public IEnumerable <IDatabaseRow> FindAllRowsMatching(IQuery query)
 {
     using (IDatabaseConnection connection = _connectionFactory.Create( )) {
         DataTable table = connection.CreateCommandFor(query).ExecuteQuery( );
         if (null != table)
         {
             foreach (DataRow row in table.Rows)
             {
                 yield return(new DatabaseRow(row));
             }
         }
     }
 }
Beispiel #5
0
        public void Should_create_command_using_database_connection()
        {
            IDatabaseConnection mockConnection = _mockery.DynamicMock <IDatabaseConnection>( );
            IDatabaseCommand    mockCommand    = _mockery.DynamicMock <IDatabaseCommand>( );
            string sqlQuery = "SELECT * FROM ?";

            using (_mockery.Record( )) {
                SetupResult.For(_mockConnectionFactory.Create( )).Return(mockConnection);
                Expect.Call(mockConnection.CreateCommandFor(sqlQuery)).Return(mockCommand);
            }

            using (_mockery.Playback( )) {
                CreateSUT( ).LoadTableUsing(sqlQuery);
            }
        }
Beispiel #6
0
        public void Should_execute_query_on_command(string sqlQuery)
        {
            IDatabaseConnection mockConnection = _mockery.DynamicMock <IDatabaseConnection>( );
            IDatabaseCommand    mockCommand    = _mockery.DynamicMock <IDatabaseCommand>( );

            DataTable table = new DataTable( );

            using (_mockery.Record( )) {
                SetupResult.For(_mockConnectionFactory.Create( )).Return(mockConnection);
                SetupResult.For(mockConnection.CreateCommandFor(sqlQuery)).Return(mockCommand);
                Expect.Call(mockCommand.ExecuteQuery( )).Return(table);
            }

            using (_mockery.Playback( )) {
                Assert.AreEqual(table, CreateSUT( ).LoadTableUsing(sqlQuery));
            }
        }
Beispiel #7
0
        public void Should_close_the_connection_after_executing_the_command()
        {
            IDatabaseConnection mockConnection = _mockery.DynamicMock <IDatabaseConnection>( );
            IDatabaseCommand    mockCommand    = _mockery.DynamicMock <IDatabaseCommand>( );
            string sqlQuery = "SELECT * FROM ?";

            DataTable table = new DataTable( );

            using (_mockery.Record( )) {
                SetupResult.For(_mockConnectionFactory.Create( )).Return(mockConnection);
                SetupResult.For(mockConnection.CreateCommandFor(sqlQuery)).Return(mockCommand);

                using (_mockery.Ordered( )) {
                    Expect.Call(mockCommand.ExecuteQuery( )).Return(table);
                    mockConnection.Dispose( );
                }
            }

            using (_mockery.Playback( )) {
                CreateSUT( ).LoadTableUsing(sqlQuery);
            }
        }
Beispiel #8
0
 public long ExecuteScalar(IQuery query)
 {
     using (IDatabaseConnection connection = _connectionFactory.Create( )) {
         return(connection.CreateCommandFor(query).ExecuteScalarQuery( ));
     }
 }