public void Should_be_able_to_create_a_command()
        {
            var dataSource = DefaultDataSource();

            var dbCommandFactory = new Mock<IDbCommandFactory>();
            var dbConnection = DbConnectionFactory.Default().CreateConnection(dataSource);
            var query = new Mock<IQuery>();
            var dbCommand = new Mock<IDbCommand>();

            dbCommandFactory.Setup(m => m.CreateCommandUsing(dataSource, dbConnection, query.Object)).Returns(dbCommand.Object);

            using (
                var connection = new DatabaseConnection(dataSource,
                                                        dbConnection,
                                                        dbCommandFactory.Object,
                                                        new Mock<IDatabaseConnectionCache>().Object))
            {
                connection.CreateCommandToExecute(query.Object);
            }

            dbCommandFactory.VerifyAll();
        }