diff options
58 files changed, 8338 insertions, 9 deletions
diff --git a/app/controllers/projects/merge_requests_controller.rb b/app/controllers/projects/merge_requests_controller.rb index dc6551fc761..eaf4434f913 100644 --- a/app/controllers/projects/merge_requests_controller.rb +++ b/app/controllers/projects/merge_requests_controller.rb @@ -99,6 +99,23 @@ class Projects::MergeRequestsController < Projects::MergeRequests::ApplicationCo } end + def test_reports + result = @merge_request.compare_test_reports + + Gitlab::PollingInterval.set_header(response, interval: 10_000) + + case result[:status] + when :parsing + render json: '', status: :no_content + when :parsed + render json: result[:data].to_json, status: :ok + when :error + render json: { status_reason: result[:status_reason] }, status: :bad_request + else + render json: { status_reason: 'Unknown error' }, status: :internal_server_error + end + end + def edit define_edit_vars end diff --git a/app/models/ci/build.rb b/app/models/ci/build.rb index 8ea252cdafb..9292929be98 100644 --- a/app/models/ci/build.rb +++ b/app/models/ci/build.rb @@ -71,6 +71,11 @@ module Ci where('NOT EXISTS (?)', Ci::JobArtifact.select(1).where('ci_builds.id = ci_job_artifacts.job_id').trace) end + scope :with_test_reports, ->() do + includes(:job_artifacts_junit) # Prevent N+1 problem when iterating each ci_job_artifact row + .where('EXISTS (?)', Ci::JobArtifact.select(1).where('ci_builds.id = ci_job_artifacts.job_id').test_reports) + end + scope :with_artifacts_stored_locally, -> { with_artifacts_archive.where(artifacts_file_store: [nil, LegacyArtifactUploader::Store::LOCAL]) } scope :with_artifacts_not_expired, ->() { with_artifacts_archive.where('artifacts_expire_at IS NULL OR artifacts_expire_at > ?', Time.now) } scope :with_expired_artifacts, ->() { with_artifacts_archive.where('artifacts_expire_at < ?', Time.now) } @@ -629,8 +634,24 @@ module Ci running? && runner_session_url.present? end + def collect_test_reports!(test_reports) + test_reports.get_suite(group_name).tap do |test_suite| + each_test_report do |file_type, blob| + Gitlab::Ci::Parsers.fabricate!(file_type).parse!(blob, test_suite) + end + end + end + private + def each_test_report + Ci::JobArtifact::TEST_REPORT_FILE_TYPES.each do |file_type| + public_send("job_artifacts_#{file_type}").each_blob do |blob| # rubocop:disable GitlabSecurity/PublicSend + yield file_type, blob + end + end + end + def update_artifacts_size self.artifacts_size = legacy_artifacts_file&.size end diff --git a/app/models/ci/job_artifact.rb b/app/models/ci/job_artifact.rb index 7b31b4e2e47..d7c5f29be96 100644 --- a/app/models/ci/job_artifact.rb +++ b/app/models/ci/job_artifact.rb @@ -6,6 +6,8 @@ module Ci include ObjectStorage::BackgroundMove extend Gitlab::Ci::Model + NotSupportedAdapterError = Class.new(StandardError) + TEST_REPORT_FILE_TYPES = %w[junit].freeze DEFAULT_FILE_NAMES = { junit: 'junit.xml' }.freeze TYPE_AND_FORMAT_PAIRS = { archive: :zip, metadata: :gzip, trace: :raw, junit: :gzip }.freeze @@ -46,6 +48,10 @@ module Ci gzip: 3 } + FILE_FORMAT_ADAPTERS = { + gzip: Gitlab::Ci::Build::Artifacts::GzipFileAdapter + }.freeze + def valid_file_format? unless TYPE_AND_FORMAT_PAIRS[self.file_type&.to_sym] == self.file_format&.to_sym errors.add(:file_format, 'Invalid file format with specified file type') @@ -77,8 +83,22 @@ module Ci end end + def each_blob(&blk) + unless file_format_adapter_class + raise NotSupportedAdapterError, 'This file format requires a dedicated adapter' + end + + file.open do |stream| + file_format_adapter_class.new(stream).each_blob(&blk) + end + end + private + def file_format_adapter_class + FILE_FORMAT_ADAPTERS[file_format.to_sym] + end + def set_size self.size = file.size end diff --git a/app/models/ci/pipeline.rb b/app/models/ci/pipeline.rb index 85c51fb3869..75dfa00d12e 100644 --- a/app/models/ci/pipeline.rb +++ b/app/models/ci/pipeline.rb @@ -605,6 +605,18 @@ module Ci @latest_builds_with_artifacts ||= builds.latest.with_artifacts_archive.to_a end + def has_test_reports? + complete? && builds.with_test_reports.any? + end + + def test_reports + Gitlab::Ci::Reports::TestReports.new.tap do |test_reports| + builds.with_test_reports.each do |build| + build.collect_test_reports!(test_reports) + end + end + end + private def ci_yaml_from_repo diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index 06642c15585..6de44751f1b 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -13,6 +13,11 @@ class MergeRequest < ActiveRecord::Base include ThrottledTouch include Gitlab::Utils::StrongMemoize include LabelEventable + include ReactiveCaching + + self.reactive_cache_key = ->(model) { [model.project.id, model.iid] } + self.reactive_cache_refresh_interval = 1.hour + self.reactive_cache_lifetime = 1.hour ignore_column :locked_at, :ref_fetched, @@ -1012,6 +1017,30 @@ class MergeRequest < ActiveRecord::Base .order(id: :desc) end + def has_test_reports? + actual_head_pipeline&.has_test_reports? + end + + def compare_test_reports + unless has_test_reports? + return { status: :error, status_reason: 'This merge request does not have test reports' } + end + + with_reactive_cache( + :compare_test_results, + base_pipeline&.iid, + actual_head_pipeline.iid) { |data| data } || { status: :parsing } + end + + def calculate_reactive_cache(identifier, *args) + case identifier.to_sym + when :compare_test_results + Ci::CompareTestReportsService.new(project).execute(*args) + else + raise NotImplementedError, "Unknown identifier: #{identifier}" + end + end + def all_commits # MySQL doesn't support LIMIT in a subquery. diffs_relation = if Gitlab::Database.postgresql? @@ -1124,6 +1153,12 @@ class MergeRequest < ActiveRecord::Base true end + def base_pipeline + @base_pipeline ||= project.pipelines + .order(id: :desc) + .find_by(sha: diff_base_sha) + end + def discussions_rendered_on_frontend? true end diff --git a/app/serializers/merge_request_widget_entity.rb b/app/serializers/merge_request_widget_entity.rb index 63fd9d63ec4..f55d448235a 100644 --- a/app/serializers/merge_request_widget_entity.rb +++ b/app/serializers/merge_request_widget_entity.rb @@ -231,6 +231,12 @@ class MergeRequestWidgetEntity < IssuableEntity end end + expose :test_reports_path do |merge_request| + if merge_request.has_test_reports? + test_reports_project_merge_request_path(merge_request.project, merge_request, format: :json) + end + end + private delegate :current_user, to: :request diff --git a/app/serializers/test_case_entity.rb b/app/serializers/test_case_entity.rb new file mode 100644 index 00000000000..5c1cbf37182 --- /dev/null +++ b/app/serializers/test_case_entity.rb @@ -0,0 +1,7 @@ +class TestCaseEntity < Grape::Entity + expose :status + expose :name + expose :execution_time + expose :system_output + expose :stack_trace +end diff --git a/app/serializers/test_reports_comparer_entity.rb b/app/serializers/test_reports_comparer_entity.rb new file mode 100644 index 00000000000..b95d820d093 --- /dev/null +++ b/app/serializers/test_reports_comparer_entity.rb @@ -0,0 +1,11 @@ +class TestReportsComparerEntity < Grape::Entity + expose :total_status, as: :status + + expose :summary do + expose :total_count, as: :total + expose :resolved_count, as: :resolved + expose :failed_count, as: :failed + end + + expose :suite_comparers, as: :suites, using: TestSuiteComparerEntity +end diff --git a/app/serializers/test_reports_comparer_serializer.rb b/app/serializers/test_reports_comparer_serializer.rb new file mode 100644 index 00000000000..a739858efb2 --- /dev/null +++ b/app/serializers/test_reports_comparer_serializer.rb @@ -0,0 +1,3 @@ +class TestReportsComparerSerializer < BaseSerializer + entity TestReportsComparerEntity +end diff --git a/app/serializers/test_suite_comparer_entity.rb b/app/serializers/test_suite_comparer_entity.rb new file mode 100644 index 00000000000..a3965ba3930 --- /dev/null +++ b/app/serializers/test_suite_comparer_entity.rb @@ -0,0 +1,14 @@ +class TestSuiteComparerEntity < Grape::Entity + expose :name + expose :total_status, as: :status + + expose :summary do + expose :total_count, as: :total + expose :resolved_count, as: :resolved + expose :failed_count, as: :failed + end + + expose :new_failures, using: TestCaseEntity + expose :resolved_failures, using: TestCaseEntity + expose :existing_failures, using: TestCaseEntity +end diff --git a/app/services/ci/compare_test_reports_service.rb b/app/services/ci/compare_test_reports_service.rb new file mode 100644 index 00000000000..7a112211d94 --- /dev/null +++ b/app/services/ci/compare_test_reports_service.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +module Ci + class CompareTestReportsService < ::BaseService + def execute(base_pipeline_iid, head_pipeline_iid) + base_pipeline = project.pipelines.find_by_iid(base_pipeline_iid) if base_pipeline_iid + head_pipeline = project.pipelines.find_by_iid(head_pipeline_iid) + + begin + comparer = Gitlab::Ci::Reports::TestReportsComparer + .new(base_pipeline&.test_reports, head_pipeline.test_reports) + + { + status: :parsed, + data: TestReportsComparerSerializer + .new(project: project) + .represent(comparer).as_json + } + rescue => e + { status: :error, status_reason: e.message } + end + end + end +end diff --git a/changelogs/unreleased/artifact-format-v2-with-parser.yml b/changelogs/unreleased/artifact-format-v2-with-parser.yml new file mode 100644 index 00000000000..e1a779cf6dd --- /dev/null +++ b/changelogs/unreleased/artifact-format-v2-with-parser.yml @@ -0,0 +1,5 @@ +--- +title: JUnit XML Test Summary In MR widget +merge_request: 20576 +author: +type: added diff --git a/config/routes/project.rb b/config/routes/project.rb index 8e019f8c8bb..0220e88c819 100644 --- a/config/routes/project.rb +++ b/config/routes/project.rb @@ -109,6 +109,7 @@ constraints(::Constraints::ProjectUrlConstrainer.new) do post :assign_related_issues get :discussions, format: :json post :rebase + get :test_reports scope constraints: { format: nil }, action: :show do get :commits, defaults: { tab: 'commits' } diff --git a/lib/gitlab/ci/build/artifacts/gzip_file_adapter.rb b/lib/gitlab/ci/build/artifacts/gzip_file_adapter.rb new file mode 100644 index 00000000000..65f65cdce08 --- /dev/null +++ b/lib/gitlab/ci/build/artifacts/gzip_file_adapter.rb @@ -0,0 +1,46 @@ +module Gitlab + module Ci + module Build + module Artifacts + class GzipFileAdapter + attr_reader :stream + + InvalidStreamError = Class.new(StandardError) + + def initialize(stream) + raise InvalidStreamError, "Stream is required" unless stream + + @stream = stream + end + + def each_blob + stream.seek(0) + + until stream.eof? + gzip(stream) do |gz| + yield gz.read, gz.orig_name + unused = gz.unused&.length.to_i + # pos has already reached to EOF at the moment + # We rewind the pos to the top of unused files + # to read next gzip stream, to support multistream archives + # https://golang.org/src/compress/gzip/gunzip.go#L117 + stream.seek(-unused, IO::SEEK_CUR) + end + end + end + + private + + def gzip(stream, &block) + gz = Zlib::GzipReader.new(stream) + yield(gz) + rescue Zlib::Error => e + raise InvalidStreamError, e.message + ensure + gz&.finish + end + end + end + end + end +end diff --git a/lib/gitlab/ci/parsers.rb b/lib/gitlab/ci/parsers.rb new file mode 100644 index 00000000000..a4eccc08dfc --- /dev/null +++ b/lib/gitlab/ci/parsers.rb @@ -0,0 +1,9 @@ +module Gitlab + module Ci + module Parsers + def self.fabricate!(file_type) + "Gitlab::Ci::Parsers::#{file_type.classify}".constantize.new + end + end + end +end diff --git a/lib/gitlab/ci/parsers/junit.rb b/lib/gitlab/ci/parsers/junit.rb new file mode 100644 index 00000000000..3c4668ec13b --- /dev/null +++ b/lib/gitlab/ci/parsers/junit.rb @@ -0,0 +1,69 @@ +module Gitlab + module Ci + module Parsers + class Junit + attr_reader :data + + JunitParserError = Class.new(StandardError) + + def parse!(xml_data, test_suite) + @data = Hash.from_xml(xml_data) + + each_suite do |testcases| + testcases.each do |testcase| + test_case = create_test_case(testcase) + test_suite.add_test_case(test_case) + end + end + rescue REXML::ParseException => e + raise JunitParserError, "XML parsing failed: #{e.message}" + rescue => e + raise JunitParserError, "JUnit parsing failed: #{e.message}" + end + + private + + def each_suite + testsuites.each do |testsuite| + yield testcases(testsuite) + end + end + + def testsuites + if data['testsuites'] + data['testsuites']['testsuite'] + else + [data['testsuite']] + end + end + + def testcases(testsuite) + if testsuite['testcase'].is_a?(Array) + testsuite['testcase'] + else + [testsuite['testcase']] + end + end + + def create_test_case(data) + if data['failure'] + status = ::Gitlab::Ci::Reports::TestCase::STATUS_FAILED + system_output = data['failure'] + else + status = ::Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS + system_output = nil + end + + ::Gitlab::Ci::Reports::TestCase.new( + classname: data['classname'], + name: data['name'], + file: data['file'], + execution_time: data['time'], + status: status, + system_output: system_output + ) + end + end + end + end +end diff --git a/lib/gitlab/ci/reports/test_case.rb b/lib/gitlab/ci/reports/test_case.rb new file mode 100644 index 00000000000..b4d08ed257f --- /dev/null +++ b/lib/gitlab/ci/reports/test_case.rb @@ -0,0 +1,32 @@ +module Gitlab + module Ci + module Reports + class TestCase + STATUS_SUCCESS = 'success'.freeze + STATUS_FAILED = 'failed'.freeze + STATUS_SKIPPED = 'skipped'.freeze + STATUS_ERROR = 'error'.freeze + STATUS_TYPES = [STATUS_SUCCESS, STATUS_FAILED, STATUS_SKIPPED, STATUS_ERROR].freeze + + attr_reader :name, :classname, :execution_time, :status, :file, :system_output, :stack_trace, :key + + def initialize(name:, classname:, execution_time:, status:, file: nil, system_output: nil, stack_trace: nil) + @name = name + @classname = classname + @file = file + @execution_time = execution_time.to_f + @status = status + @system_output = system_output + @stack_trace = stack_trace + @key = sanitize_key_name("#{classname}_#{name}") + end + + private + + def sanitize_key_name(key) + key.gsub(/[^0-9A-Za-z]/, '-') + end + end + end + end +end diff --git a/lib/gitlab/ci/reports/test_reports.rb b/lib/gitlab/ci/reports/test_reports.rb new file mode 100644 index 00000000000..c6e732e68eb --- /dev/null +++ b/lib/gitlab/ci/reports/test_reports.rb @@ -0,0 +1,39 @@ +module Gitlab + module Ci + module Reports + class TestReports + attr_reader :test_suites + + def initialize + @test_suites = {} + end + + def get_suite(suite_name) + test_suites[suite_name] ||= TestSuite.new(suite_name) + end + + def total_time + test_suites.values.sum(&:total_time) + end + + def total_count + test_suites.values.sum(&:total_count) + end + + def total_status + if failed_count > 0 || error_count > 0 + TestCase::STATUS_FAILED + else + TestCase::STATUS_SUCCESS + end + end + + TestCase::STATUS_TYPES.each do |status_type| + define_method("#{status_type}_count") do + test_suites.values.sum { |suite| suite.public_send("#{status_type}_count") } # rubocop:disable GitlabSecurity/PublicSend + end + end + end + end + end +end diff --git a/lib/gitlab/ci/reports/test_reports_comparer.rb b/lib/gitlab/ci/reports/test_reports_comparer.rb new file mode 100644 index 00000000000..c0943f5a51a --- /dev/null +++ b/lib/gitlab/ci/reports/test_reports_comparer.rb @@ -0,0 +1,38 @@ +module Gitlab + module Ci + module Reports + class TestReportsComparer + include Gitlab::Utils::StrongMemoize + + attr_reader :base_reports, :head_reports + + def initialize(base_reports, head_reports) + @base_reports = base_reports || TestReports.new + @head_reports = head_reports + end + + def suite_comparers + strong_memoize(:suite_comparers) do + head_reports.test_suites.map do |name, test_suite| + TestSuiteComparer.new(name, base_reports.get_suite(name), test_suite) + end + end + end + + def total_status + if suite_comparers.any? { |suite| suite.total_status == TestCase::STATUS_FAILED } + TestCase::STATUS_FAILED + else + TestCase::STATUS_SUCCESS + end + end + + %w(total_count resolved_count failed_count).each do |method| + define_method(method) do + suite_comparers.sum { |suite| suite.public_send(method) } # rubocop:disable GitlabSecurity/PublicSend + end + end + end + end + end +end diff --git a/lib/gitlab/ci/reports/test_suite.rb b/lib/gitlab/ci/reports/test_suite.rb new file mode 100644 index 00000000000..b722d0ba735 --- /dev/null +++ b/lib/gitlab/ci/reports/test_suite.rb @@ -0,0 +1,54 @@ +module Gitlab + module Ci + module Reports + class TestSuite + attr_reader :name + attr_reader :test_cases + attr_reader :total_time + + def initialize(name = nil) + @name = name + @test_cases = {} + @total_time = 0.0 + @duplicate_cases = [] + end + + def add_test_case(test_case) + @duplicate_cases << test_case if existing_key?(test_case) + + @test_cases[test_case.status] ||= {} + @test_cases[test_case.status][test_case.key] = test_case + @total_time += test_case.execution_time + end + + def total_count + test_cases.values.sum(&:count) + end + + def total_status + if failed_count > 0 || error_count > 0 + TestCase::STATUS_FAILED + else + TestCase::STATUS_SUCCESS + end + end + + TestCase::STATUS_TYPES.each do |status_type| + define_method("#{status_type}") do + test_cases[status_type] || {} + end + + define_method("#{status_type}_count") do + test_cases[status_type]&.length.to_i + end + end + + private + + def existing_key?(test_case) + @test_cases[test_case.status]&.key?(test_case.key) + end + end + end + end +end diff --git a/lib/gitlab/ci/reports/test_suite_comparer.rb b/lib/gitlab/ci/reports/test_suite_comparer.rb new file mode 100644 index 00000000000..642aa593092 --- /dev/null +++ b/lib/gitlab/ci/reports/test_suite_comparer.rb @@ -0,0 +1,57 @@ +module Gitlab + module Ci + module Reports + class TestSuiteComparer + include Gitlab::Utils::StrongMemoize + + attr_reader :name, :base_suite, :head_suite + + def initialize(name, base_suite, head_suite) + @name = name + @base_suite = base_suite || TestSuite.new + @head_suite = head_suite + end + + def new_failures + strong_memoize(:new_failures) do + head_suite.failed.reject do |key, _| + base_suite.failed.include?(key) + end.values + end + end + + def existing_failures + strong_memoize(:existing_failures) do + head_suite.failed.select do |key, _| + base_suite.failed.include?(key) + end.values + end + end + + def resolved_failures + strong_memoize(:resolved_failures) do + head_suite.success.select do |key, _| + base_suite.failed.include?(key) + end.values + end + end + + def total_count + head_suite.total_count + end + + def total_status + head_suite.total_status + end + + def resolved_count + resolved_failures.count + end + + def failed_count + new_failures.count + existing_failures.count + end + end + end + end +end diff --git a/spec/controllers/projects/merge_requests_controller_spec.rb b/spec/controllers/projects/merge_requests_controller_spec.rb index 1692f299552..375018e2229 100644 --- a/spec/controllers/projects/merge_requests_controller_spec.rb +++ b/spec/controllers/projects/merge_requests_controller_spec.rb @@ -580,6 +580,64 @@ describe Projects::MergeRequestsController do end end + describe 'GET test_reports' do + subject do + get :test_reports, + namespace_id: project.namespace.to_param, + project_id: project, + id: merge_request.iid, + format: :json + end + + before do + allow_any_instance_of(MergeRequest) + .to receive(:compare_test_reports).and_return(comparison_status) + end + + context 'when comparison is being processed' do + let(:comparison_status) { { status: :parsing } } + + it 'returns 204 HTTP status' do + subject + + expect(response).to have_gitlab_http_status(:no_content) + end + end + + context 'when comparison is done' do + let(:comparison_status) { { status: :parsed, data: { summary: 1 } } } + + it 'returns 200 HTTP status' do + subject + + expect(response).to have_gitlab_http_status(:ok) + expect(json_response).to eq({ 'summary' => 1 }) + end + end + + context 'when user created corrupted test reports' do + let(:comparison_status) { { status: :error, status_reason: 'Failed to parse test reports' } } + + it 'returns 400 HTTP status' do + subject + + expect(response).to have_gitlab_http_status(:bad_request) + expect(json_response).to eq({ 'status_reason' => 'Failed to parse test reports' }) + end + end + + context 'when something went wrong on our system' do + let(:comparison_status) { {} } + + it 'returns 500 HTTP status' do + subject + + expect(response).to have_gitlab_http_status(:internal_server_error) + expect(json_response).to eq({ 'status_reason' => 'Unknown error' }) + end + end + end + describe 'POST remove_wip' do before do merge_request.title = merge_request.wip_title diff --git a/spec/factories/ci/builds.rb b/spec/factories/ci/builds.rb index 8bd1f1ae4e0..9813190925b 100644 --- a/spec/factories/ci/builds.rb +++ b/spec/factories/ci/builds.rb @@ -188,9 +188,8 @@ FactoryBot.define do end trait :test_reports do - after(:create) do |build| - create(:ci_job_artifact, :junit, job: build) - build.reload + after(:build) do |build| + build.job_artifacts << create(:ci_job_artifact, :junit, job: build) end end diff --git a/spec/factories/ci/job_artifacts.rb b/spec/factories/ci/job_artifacts.rb index a6a87782fe7..46aaaf6aa5d 100644 --- a/spec/factories/ci/job_artifacts.rb +++ b/spec/factories/ci/job_artifacts.rb @@ -50,7 +50,37 @@ FactoryBot.define do after(:build) do |artifact, evaluator| artifact.file = fixture_file_upload( - Rails.root.join('spec/fixtures/junit.xml.gz'), 'application/x-gzip') + Rails.root.join('spec/fixtures/junit/junit.xml.gz'), 'application/x-gzip') + end + end + + trait :junit_with_ant do + file_type :junit + file_format :gzip + + after(:build) do |artifact, evaluator| + artifact.file = fixture_file_upload( + Rails.root.join('spec/fixtures/junit/junit_ant.xml.gz'), 'application/x-gzip') + end + end + + trait :junit_with_three_testsuites do + file_type :junit + file_format :gzip + + after(:build) do |artifact, evaluator| + artifact.file = fixture_file_upload( + Rails.root.join('spec/fixtures/junit/junit_with_three_testsuites.xml.gz'), 'application/x-gzip') + end + end + + trait :junit_with_corrupted_data do + file_type :junit + file_format :gzip + + after(:build) do |artifact, evaluator| + artifact.file = fixture_file_upload( + Rails.root.join('spec/fixtures/junit/junit_with_corrupted_data.xml.gz'), 'application/x-gzip') end end diff --git a/spec/factories/ci/pipelines.rb b/spec/factories/ci/pipelines.rb index 51a767e5b93..a6ff226fa75 100644 --- a/spec/factories/ci/pipelines.rb +++ b/spec/factories/ci/pipelines.rb @@ -58,6 +58,10 @@ FactoryBot.define do status :success end + trait :running do + status :running + end + trait :failed do status :failed end @@ -65,6 +69,14 @@ FactoryBot.define do trait :protected do protected true end + + trait :with_test_reports do + status :success + + after(:build) do |pipeline, evaluator| + pipeline.builds << build(:ci_build, :test_reports, pipeline: pipeline, project: pipeline.project) + end + end end end end diff --git a/spec/factories/merge_requests.rb b/spec/factories/merge_requests.rb index f722bb9cb0d..cbc0b943396 100644 --- a/spec/factories/merge_requests.rb +++ b/spec/factories/merge_requests.rb @@ -89,6 +89,18 @@ FactoryBot.define do end end + trait :with_test_reports do + after(:build) do |merge_request| + merge_request.head_pipeline = build( + :ci_pipeline, + :success, + :with_test_reports, + project: merge_request.source_project, + ref: merge_request.source_branch, + sha: merge_request.diff_head_sha) + end + end + after(:build) do |merge_request| target_project = merge_request.target_project source_project = merge_request.source_project diff --git a/spec/fixtures/api/schemas/entities/merge_request_widget.json b/spec/fixtures/api/schemas/entities/merge_request_widget.json index a2ac4d238c7..c40977bc4ee 100644 --- a/spec/fixtures/api/schemas/entities/merge_request_widget.json +++ b/spec/fixtures/api/schemas/entities/merge_request_widget.json @@ -117,7 +117,8 @@ "rebase_in_progress": { "type": "boolean" }, "can_push_to_source_branch": { "type": "boolean" }, "rebase_path": { "type": ["string", "null"] }, - "squash": { "type": "boolean" } + "squash": { "type": "boolean" }, + "test_reports_path": { "type": ["string", "null"] } }, "additionalProperties": false } diff --git a/spec/fixtures/api/schemas/entities/test_case.json b/spec/fixtures/api/schemas/entities/test_case.json new file mode 100644 index 00000000000..c9ba1f3ad18 --- /dev/null +++ b/spec/fixtures/api/schemas/entities/test_case.json @@ -0,0 +1,15 @@ +{ + "type": "object", + "required" : [ + "status", + "name" + ], + "properties": { + "status": { "type": "string" }, + "name": { "type": "string" }, + "execution_time": { "type": "float" }, + "system_output": { "type": ["string", "null"] }, + "stack_trace": { "type": ["string", "null"] } + }, + "additionalProperties": false +} diff --git a/spec/fixtures/api/schemas/entities/test_reports_comparer.json b/spec/fixtures/api/schemas/entities/test_reports_comparer.json new file mode 100644 index 00000000000..d7880801c01 --- /dev/null +++ b/spec/fixtures/api/schemas/entities/test_reports_comparer.json @@ -0,0 +1,26 @@ +{ + "type": "object", + "required" : [ + "status", + "summary", + "suites" + ], + "properties": { + "status": { "type": "string" }, + "summary": { + "type": "object", + "properties": { + "total": { "type": "integer" }, + "resolved": { "type": "integer" }, + "failed": { "type": "integer" } + }, + "required": [ + "total", + "resolved", + "failed" + ] + }, + "suites": { "type": "array", "items": { "$ref": "test_suite_comparer.json" } } + }, + "additionalProperties": false +} diff --git a/spec/fixtures/api/schemas/entities/test_suite_comparer.json b/spec/fixtures/api/schemas/entities/test_suite_comparer.json new file mode 100644 index 00000000000..d63fea1f0db --- /dev/null +++ b/spec/fixtures/api/schemas/entities/test_suite_comparer.json @@ -0,0 +1,32 @@ +{ + "type": "object", + "required": [ + "name", + "status", + "summary", + "new_failures", + "resolved_failures", + "existing_failures" + ], + "properties": { + "name": { "type": "string" }, + "status": { "type": "string" }, + "summary": { + "type": "object", + "properties": { + "total": { "type": "integer" }, + "resolved": { "type": "integer" }, + "failed": { "type": "integer" } + }, + "required": [ + "total", + "resolved", + "failed" + ] + }, + "new_failures": { "type": "array", "items": { "$ref": "test_case.json" } }, + "resolved_failures": { "type": "array", "items": { "$ref": "test_case.json" } }, + "existing_failures": { "type": "array", "items": { "$ref": "test_case.json" } } + }, + "additionalProperties": false +} diff --git a/spec/fixtures/junit/junit.xml b/spec/fixtures/junit/junit.xml new file mode 100644 index 00000000000..b826afdc3ae --- /dev/null +++ b/spec/fixtures/junit/junit.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> +<testsuite name="rspec" tests="4" skipped="0" failures="2" errors="0" time="0.011289" timestamp="2018-07-17T10:48:13+00:00" hostname="runner-400e3f62-project-15-concurrent-0"> +<properties> +<property name="seed" value="404"/> +</properties> +<testcase classname="spec.test_spec" name="Test#sum when a is 1 and b is 2 returns summary" file="./spec/test_spec.rb" time="0.009292"><failure message=" +expected: 3 + got: -1 + +(compared using ==) +" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: is_expected.to eq(3) + + expected: 3 + got: -1 + + (compared using ==) +./spec/test_spec.rb:12:in `block (4 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#sum when a is 100 and b is 200 returns summary" file="./spec/test_spec.rb" time="0.000180"><failure message=" +expected: 300 + got: -100 + +(compared using ==) +" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: is_expected.to eq(300) + + expected: 300 + got: -100 + + (compared using ==) +./spec/test_spec.rb:21:in `block (4 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract when a is 1 and b is 2 raises an error" file="./spec/test_spec.rb" time="0.000748"></testcase> +<testcase classname="spec.test_spec" name="Test#subtract when a is 2 and b is 1 returns correct result" file="./spec/test_spec.rb" time="0.000064"></testcase> +</testsuite> diff --git a/spec/fixtures/junit.xml.gz b/spec/fixtures/junit/junit.xml.gz Binary files differindex 88b7de6fa61..88b7de6fa61 100644 --- a/spec/fixtures/junit.xml.gz +++ b/spec/fixtures/junit/junit.xml.gz diff --git a/spec/fixtures/junit/junit_ant.xml.gz b/spec/fixtures/junit/junit_ant.xml.gz Binary files differnew file mode 100644 index 00000000000..e9cca1b0c73 --- /dev/null +++ b/spec/fixtures/junit/junit_ant.xml.gz diff --git a/spec/fixtures/junit/junit_with_corrupted_data.xml.gz b/spec/fixtures/junit/junit_with_corrupted_data.xml.gz Binary files differnew file mode 100644 index 00000000000..e6d17e4595d --- /dev/null +++ b/spec/fixtures/junit/junit_with_corrupted_data.xml.gz diff --git a/spec/fixtures/junit/junit_with_three_testsuites.xml.gz b/spec/fixtures/junit/junit_with_three_testsuites.xml.gz Binary files differnew file mode 100644 index 00000000000..aa4ad154de8 --- /dev/null +++ b/spec/fixtures/junit/junit_with_three_testsuites.xml.gz diff --git a/spec/fixtures/junit/junit_with_three_testsuites_1.xml b/spec/fixtures/junit/junit_with_three_testsuites_1.xml new file mode 100644 index 00000000000..5f31824042e --- /dev/null +++ b/spec/fixtures/junit/junit_with_three_testsuites_1.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<testsuite name="rspec" tests="2" skipped="0" failures="0" errors="0" time="0.001670" timestamp="2018-07-30T10:02:37+00:00" hostname="runner-7661726c-project-14-concurrent-0"> +<properties> +<property name="seed" value="52549"/> +</properties> +<testcase classname="spec.hash_scan_spec" name="HashScan#scan when argument is hash returns the value" file="./spec/hash_scan_spec.rb" time="0.000287"></testcase> +<testcase classname="spec.hash_scan_spec" name="HashScan#scan when argument is not hash raises and error" file="./spec/hash_scan_spec.rb" time="0.000686"></testcase> +</testsuite> diff --git a/spec/fixtures/junit/junit_with_three_testsuites_2.xml b/spec/fixtures/junit/junit_with_three_testsuites_2.xml new file mode 100644 index 00000000000..8ae771978e0 --- /dev/null +++ b/spec/fixtures/junit/junit_with_three_testsuites_2.xml @@ -0,0 +1,6010 @@ +<?xml version="1.0" encoding="UTF-8"?> +<testsuite name="rspec" tests="1004" skipped="0" failures="1000" errors="0" time="0.202645" timestamp="2018-07-30T10:02:36+00:00" hostname="runner-7661726c-project-14-concurrent-0"> +<properties> +<property name="seed" value="28152"/> +</properties> +<testcase classname="spec.test_spec" name="Test#sum when a is 1 and b is 2 returns summary" file="./spec/test_spec.rb" time="0.000368"></testcase> +<testcase classname="spec.test_spec" name="Test#sum when a is 100 and b is 200 returns summary" file="./spec/test_spec.rb" time="0.000069"></testcase> +<testcase classname="spec.test_spec" name="Test#subtract when a is 1 and b is 2 raises an error" file="./spec/test_spec.rb" time="0.000734"></testcase> +<testcase classname="spec.test_spec" name="Test#subtract when a is 2 and b is 1 returns correct result" file="./spec/test_spec.rb" time="0.000066"></testcase> +<testcase classname="spec.test_spec" name="Test#subtract1 fails" file="./spec/test_spec.rb" time="0.009856"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:52:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract2 fails" file="./spec/test_spec.rb" time="0.000185"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:59:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract3 fails" file="./spec/test_spec.rb" time="0.000102"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:66:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract4 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:73:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract5 fails" file="./spec/test_spec.rb" time="0.000100"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:80:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract6 fails" file="./spec/test_spec.rb" time="0.000101"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:87:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract7 fails" file="./spec/test_spec.rb" time="0.000099"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:94:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract8 fails" file="./spec/test_spec.rb" time="0.000101"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:101:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract9 fails" file="./spec/test_spec.rb" time="0.000101"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:108:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract10 fails" file="./spec/test_spec.rb" time="0.013083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:115:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract11 fails" file="./spec/test_spec.rb" time="0.000117"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:122:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract12 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:129:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract13 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:136:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract14 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:143:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract15 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:150:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract16 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:157:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract17 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:164:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract18 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:171:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract19 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:178:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract20 fails" file="./spec/test_spec.rb" time="0.000099"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:185:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract21 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:192:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract22 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:199:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract23 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:206:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract24 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:213:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract25 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:220:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract26 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:227:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract27 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:234:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract28 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:241:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract29 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:248:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract30 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:255:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract31 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:262:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract32 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:269:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract33 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:276:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract34 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:283:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract35 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:290:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract36 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:297:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract37 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:304:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract38 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:311:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract39 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:318:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract40 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:325:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract41 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:332:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract42 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:339:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract43 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:346:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract44 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:353:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract45 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:360:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract46 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:367:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract47 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:374:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract48 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:381:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract49 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:388:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract50 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:395:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract51 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:402:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract52 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:409:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract53 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:416:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract54 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:423:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract55 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:430:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract56 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:437:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract57 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:444:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract58 fails" file="./spec/test_spec.rb" time="0.000110"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:451:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract59 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:458:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract60 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:465:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract61 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:472:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract62 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:479:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract63 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:486:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract64 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:493:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract65 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:500:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract66 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:507:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract67 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:514:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract68 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:521:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract69 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:528:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract70 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:535:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract71 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:542:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract72 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:549:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract73 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:556:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract74 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:563:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract75 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:570:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract76 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:577:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract77 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:584:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract78 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:591:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract79 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:598:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract80 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:605:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract81 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:612:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract82 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:619:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract83 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:626:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract84 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:633:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract85 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:640:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract86 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:647:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract87 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:654:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract88 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:661:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract89 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:668:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract90 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:675:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract91 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:682:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract92 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:689:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract93 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:696:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract94 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:703:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract95 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:710:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract96 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:717:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract97 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:724:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract98 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:731:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract99 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:738:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract100 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:745:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract101 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:752:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract102 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:759:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract103 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:766:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract104 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:773:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract105 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:780:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract106 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:787:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract107 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:794:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract108 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:801:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract109 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:808:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract110 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:815:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract111 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:822:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract112 fails" file="./spec/test_spec.rb" time="0.000099"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:829:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract113 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:836:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract114 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:843:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract115 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:850:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract116 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:857:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract117 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:864:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract118 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:871:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract119 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:878:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract120 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:885:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract121 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:892:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract122 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:899:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract123 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:906:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract124 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:913:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract125 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:920:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract126 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:927:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract127 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:934:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract128 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:941:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract129 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:948:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract130 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:955:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract131 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:962:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract132 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:969:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract133 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:976:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract134 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:983:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract135 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:990:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract136 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:997:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract137 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1004:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract138 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1011:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract139 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1018:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract140 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1025:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract141 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1032:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract142 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1039:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract143 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1046:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract144 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1053:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract145 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1060:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract146 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1067:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract147 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1074:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract148 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1081:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract149 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1088:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract150 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1095:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract151 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1102:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract152 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1109:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract153 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1116:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract154 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1123:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract155 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1130:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract156 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1137:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract157 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1144:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract158 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1151:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract159 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1158:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract160 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1165:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract161 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1172:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract162 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1179:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract163 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1186:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract164 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1193:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract165 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1200:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract166 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1207:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract167 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1214:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract168 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1221:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract169 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1228:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract170 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1235:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract171 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1242:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract172 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1249:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract173 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1256:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract174 fails" file="./spec/test_spec.rb" time="0.000101"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1263:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract175 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1270:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract176 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1277:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract177 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1284:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract178 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1291:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract179 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1298:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract180 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1305:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract181 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1312:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract182 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1319:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract183 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1326:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract184 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1333:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract185 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1340:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract186 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1347:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract187 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1354:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract188 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1361:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract189 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1368:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract190 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1375:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract191 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1382:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract192 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1389:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract193 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1396:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract194 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1403:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract195 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1410:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract196 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1417:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract197 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1424:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract198 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1431:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract199 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1438:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract200 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1445:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract201 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1452:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract202 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1459:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract203 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1466:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract204 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1473:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract205 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1480:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract206 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1487:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract207 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1494:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract208 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1501:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract209 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1508:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract210 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1515:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract211 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1522:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract212 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1529:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract213 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1536:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract214 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1543:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract215 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1550:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract216 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1557:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract217 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1564:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract218 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1571:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract219 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1578:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract220 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1585:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract221 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1592:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract222 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1599:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract223 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1606:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract224 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1613:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract225 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1620:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract226 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1627:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract227 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1634:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract228 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1641:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract229 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1648:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract230 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1655:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract231 fails" file="./spec/test_spec.rb" time="0.000102"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1662:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract232 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1669:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract233 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1676:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract234 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1683:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract235 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1690:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract236 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1697:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract237 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1704:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract238 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1711:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract239 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1718:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract240 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1725:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract241 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1732:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract242 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1739:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract243 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1746:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract244 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1753:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract245 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1760:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract246 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1767:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract247 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1774:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract248 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1781:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract249 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1788:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract250 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1795:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract251 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1802:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract252 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1809:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract253 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1816:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract254 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1823:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract255 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1830:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract256 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1837:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract257 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1844:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract258 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1851:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract259 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1858:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract260 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1865:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract261 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1872:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract262 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1879:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract263 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1886:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract264 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1893:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract265 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1900:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract266 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1907:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract267 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1914:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract268 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1921:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract269 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1928:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract270 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1935:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract271 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1942:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract272 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1949:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract273 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1956:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract274 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1963:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract275 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1970:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract276 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1977:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract277 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1984:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract278 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1991:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract279 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:1998:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract280 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2005:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract281 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2012:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract282 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2019:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract283 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2026:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract284 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2033:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract285 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2040:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract286 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2047:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract287 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2054:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract288 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2061:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract289 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2068:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract290 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2075:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract291 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2082:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract292 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2089:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract293 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2096:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract294 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2103:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract295 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2110:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract296 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2117:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract297 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2124:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract298 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2131:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract299 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2138:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract300 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2145:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract301 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2152:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract302 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2159:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract303 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2166:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract304 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2173:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract305 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2180:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract306 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2187:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract307 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2194:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract308 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2201:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract309 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2208:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract310 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2215:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract311 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2222:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract312 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2229:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract313 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2236:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract314 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2243:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract315 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2250:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract316 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2257:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract317 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2264:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract318 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2271:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract319 fails" file="./spec/test_spec.rb" time="0.000099"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2278:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract320 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2285:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract321 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2292:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract322 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2299:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract323 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2306:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract324 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2313:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract325 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2320:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract326 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2327:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract327 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2334:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract328 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2341:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract329 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2348:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract330 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2355:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract331 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2362:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract332 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2369:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract333 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2376:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract334 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2383:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract335 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2390:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract336 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2397:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract337 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2404:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract338 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2411:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract339 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2418:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract340 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2425:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract341 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2432:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract342 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2439:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract343 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2446:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract344 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2453:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract345 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2460:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract346 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2467:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract347 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2474:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract348 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2481:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract349 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2488:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract350 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2495:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract351 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2502:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract352 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2509:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract353 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2516:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract354 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2523:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract355 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2530:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract356 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2537:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract357 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2544:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract358 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2551:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract359 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2558:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract360 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2565:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract361 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2572:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract362 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2579:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract363 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2586:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract364 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2593:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract365 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2600:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract366 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2607:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract367 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2614:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract368 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2621:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract369 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2628:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract370 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2635:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract371 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2642:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract372 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2649:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract373 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2656:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract374 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2663:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract375 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2670:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract376 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2677:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract377 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2684:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract378 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2691:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract379 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2698:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract380 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2705:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract381 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2712:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract382 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2719:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract383 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2726:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract384 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2733:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract385 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2740:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract386 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2747:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract387 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2754:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract388 fails" file="./spec/test_spec.rb" time="0.006281"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2761:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract389 fails" file="./spec/test_spec.rb" time="0.000197"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2768:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract390 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2775:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract391 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2782:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract392 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2789:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract393 fails" file="./spec/test_spec.rb" time="0.000100"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2796:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract394 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2803:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract395 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2810:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract396 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2817:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract397 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2824:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract398 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2831:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract399 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2838:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract400 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2845:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract401 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2852:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract402 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2859:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract403 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2866:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract404 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2873:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract405 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2880:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract406 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2887:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract407 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2894:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract408 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2901:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract409 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2908:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract410 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2915:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract411 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2922:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract412 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2929:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract413 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2936:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract414 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2943:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract415 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2950:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract416 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2957:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract417 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2964:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract418 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2971:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract419 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2978:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract420 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2985:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract421 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2992:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract422 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:2999:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract423 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3006:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract424 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3013:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract425 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3020:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract426 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3027:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract427 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3034:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract428 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3041:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract429 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3048:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract430 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3055:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract431 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3062:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract432 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3069:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract433 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3076:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract434 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3083:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract435 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3090:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract436 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3097:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract437 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3104:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract438 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3111:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract439 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3118:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract440 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3125:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract441 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3132:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract442 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3139:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract443 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3146:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract444 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3153:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract445 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3160:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract446 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3167:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract447 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3174:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract448 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3181:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract449 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3188:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract450 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3195:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract451 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3202:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract452 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3209:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract453 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3216:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract454 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3223:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract455 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3230:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract456 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3237:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract457 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3244:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract458 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3251:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract459 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3258:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract460 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3265:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract461 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3272:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract462 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3279:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract463 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3286:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract464 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3293:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract465 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3300:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract466 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3307:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract467 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3314:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract468 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3321:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract469 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3328:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract470 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3335:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract471 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3342:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract472 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3349:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract473 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3356:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract474 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3363:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract475 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3370:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract476 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3377:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract477 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3384:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract478 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3391:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract479 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3398:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract480 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3405:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract481 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3412:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract482 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3419:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract483 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3426:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract484 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3433:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract485 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3440:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract486 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3447:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract487 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3454:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract488 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3461:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract489 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3468:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract490 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3475:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract491 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3482:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract492 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3489:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract493 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3496:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract494 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3503:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract495 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3510:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract496 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3517:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract497 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3524:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract498 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3531:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract499 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3538:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract500 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3545:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract501 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3552:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract502 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3559:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract503 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3566:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract504 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3573:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract505 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3580:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract506 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3587:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract507 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3594:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract508 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3601:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract509 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3608:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract510 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3615:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract511 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3622:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract512 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3629:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract513 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3636:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract514 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3643:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract515 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3650:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract516 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3657:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract517 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3664:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract518 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3671:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract519 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3678:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract520 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3685:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract521 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3692:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract522 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3699:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract523 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3706:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract524 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3713:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract525 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3720:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract526 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3727:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract527 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3734:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract528 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3741:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract529 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3748:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract530 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3755:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract531 fails" file="./spec/test_spec.rb" time="0.000099"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3762:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract532 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3769:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract533 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3776:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract534 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3783:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract535 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3790:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract536 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3797:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract537 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3804:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract538 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3811:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract539 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3818:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract540 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3825:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract541 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3832:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract542 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3839:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract543 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3846:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract544 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3853:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract545 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3860:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract546 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3867:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract547 fails" file="./spec/test_spec.rb" time="0.000100"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3874:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract548 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3881:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract549 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3888:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract550 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3895:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract551 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3902:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract552 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3909:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract553 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3916:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract554 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3923:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract555 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3930:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract556 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3937:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract557 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3944:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract558 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3951:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract559 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3958:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract560 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3965:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract561 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3972:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract562 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3979:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract563 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3986:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract564 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:3993:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract565 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4000:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract566 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4007:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract567 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4014:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract568 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4021:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract569 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4028:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract570 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4035:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract571 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4042:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract572 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4049:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract573 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4056:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract574 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4063:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract575 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4070:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract576 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4077:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract577 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4084:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract578 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4091:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract579 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4098:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract580 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4105:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract581 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4112:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract582 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4119:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract583 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4126:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract584 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4133:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract585 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4140:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract586 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4147:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract587 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4154:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract588 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4161:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract589 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4168:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract590 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4175:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract591 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4182:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract592 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4189:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract593 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4196:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract594 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4203:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract595 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4210:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract596 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4217:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract597 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4224:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract598 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4231:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract599 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4238:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract600 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4245:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract601 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4252:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract602 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4259:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract603 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4266:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract604 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4273:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract605 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4280:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract606 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4287:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract607 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4294:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract608 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4301:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract609 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4308:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract610 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4315:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract611 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4322:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract612 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4329:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract613 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4336:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract614 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4343:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract615 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4350:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract616 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4357:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract617 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4364:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract618 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4371:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract619 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4378:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract620 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4385:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract621 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4392:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract622 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4399:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract623 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4406:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract624 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4413:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract625 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4420:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract626 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4427:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract627 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4434:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract628 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4441:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract629 fails" file="./spec/test_spec.rb" time="0.000100"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4448:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract630 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4455:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract631 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4462:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract632 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4469:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract633 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4476:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract634 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4483:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract635 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4490:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract636 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4497:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract637 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4504:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract638 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4511:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract639 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4518:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract640 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4525:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract641 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4532:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract642 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4539:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract643 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4546:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract644 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4553:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract645 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4560:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract646 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4567:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract647 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4574:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract648 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4581:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract649 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4588:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract650 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4595:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract651 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4602:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract652 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4609:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract653 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4616:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract654 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4623:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract655 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4630:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract656 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4637:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract657 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4644:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract658 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4651:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract659 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4658:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract660 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4665:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract661 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4672:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract662 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4679:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract663 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4686:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract664 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4693:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract665 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4700:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract666 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4707:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract667 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4714:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract668 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4721:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract669 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4728:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract670 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4735:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract671 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4742:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract672 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4749:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract673 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4756:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract674 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4763:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract675 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4770:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract676 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4777:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract677 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4784:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract678 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4791:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract679 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4798:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract680 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4805:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract681 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4812:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract682 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4819:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract683 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4826:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract684 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4833:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract685 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4840:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract686 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4847:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract687 fails" file="./spec/test_spec.rb" time="0.000101"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4854:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract688 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4861:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract689 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4868:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract690 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4875:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract691 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4882:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract692 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4889:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract693 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4896:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract694 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4903:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract695 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4910:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract696 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4917:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract697 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4924:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract698 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4931:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract699 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4938:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract700 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4945:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract701 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4952:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract702 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4959:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract703 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4966:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract704 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4973:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract705 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4980:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract706 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4987:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract707 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:4994:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract708 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5001:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract709 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5008:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract710 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5015:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract711 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5022:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract712 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5029:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract713 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5036:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract714 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5043:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract715 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5050:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract716 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5057:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract717 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5064:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract718 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5071:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract719 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5078:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract720 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5085:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract721 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5092:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract722 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5099:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract723 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5106:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract724 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5113:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract725 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5120:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract726 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5127:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract727 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5134:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract728 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5141:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract729 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5148:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract730 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5155:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract731 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5162:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract732 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5169:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract733 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5176:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract734 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5183:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract735 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5190:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract736 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5197:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract737 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5204:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract738 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5211:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract739 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5218:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract740 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5225:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract741 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5232:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract742 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5239:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract743 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5246:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract744 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5253:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract745 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5260:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract746 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5267:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract747 fails" file="./spec/test_spec.rb" time="0.000083"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5274:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract748 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5281:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract749 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5288:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract750 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5295:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract751 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5302:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract752 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5309:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract753 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5316:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract754 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5323:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract755 fails" file="./spec/test_spec.rb" time="0.005906"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5330:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract756 fails" file="./spec/test_spec.rb" time="0.000117"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5337:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract757 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5344:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract758 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5351:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract759 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5358:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract760 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5365:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract761 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5372:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract762 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5379:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract763 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5386:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract764 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5393:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract765 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5400:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract766 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5407:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract767 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5414:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract768 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5421:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract769 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5428:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract770 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5435:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract771 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5442:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract772 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5449:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract773 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5456:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract774 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5463:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract775 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5470:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract776 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5477:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract777 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5484:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract778 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5491:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract779 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5498:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract780 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5505:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract781 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5512:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract782 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5519:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract783 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5526:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract784 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5533:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract785 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5540:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract786 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5547:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract787 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5554:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract788 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5561:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract789 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5568:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract790 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5575:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract791 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5582:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract792 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5589:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract793 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5596:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract794 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5603:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract795 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5610:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract796 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5617:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract797 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5624:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract798 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5631:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract799 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5638:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract800 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5645:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract801 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5652:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract802 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5659:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract803 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5666:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract804 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5673:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract805 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5680:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract806 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5687:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract807 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5694:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract808 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5701:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract809 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5708:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract810 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5715:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract811 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5722:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract812 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5729:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract813 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5736:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract814 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5743:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract815 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5750:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract816 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5757:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract817 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5764:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract818 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5771:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract819 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5778:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract820 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5785:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract821 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5792:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract822 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5799:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract823 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5806:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract824 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5813:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract825 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5820:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract826 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5827:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract827 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5834:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract828 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5841:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract829 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5848:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract830 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5855:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract831 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5862:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract832 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5869:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract833 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5876:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract834 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5883:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract835 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5890:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract836 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5897:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract837 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5904:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract838 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5911:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract839 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5918:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract840 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5925:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract841 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5932:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract842 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5939:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract843 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5946:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract844 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5953:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract845 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5960:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract846 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5967:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract847 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5974:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract848 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5981:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract849 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5988:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract850 fails" file="./spec/test_spec.rb" time="0.000100"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:5995:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract851 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6002:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract852 fails" file="./spec/test_spec.rb" time="0.000101"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6009:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract853 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6016:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract854 fails" file="./spec/test_spec.rb" time="0.000099"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6023:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract855 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6030:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract856 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6037:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract857 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6044:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract858 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6051:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract859 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6058:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract860 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6065:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract861 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6072:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract862 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6079:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract863 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6086:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract864 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6093:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract865 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6100:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract866 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6107:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract867 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6114:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract868 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6121:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract869 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6128:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract870 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6135:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract871 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6142:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract872 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6149:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract873 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6156:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract874 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6163:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract875 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6170:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract876 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6177:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract877 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6184:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract878 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6191:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract879 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6198:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract880 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6205:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract881 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6212:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract882 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6219:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract883 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6226:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract884 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6233:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract885 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6240:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract886 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6247:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract887 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6254:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract888 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6261:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract889 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6268:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract890 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6275:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract891 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6282:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract892 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6289:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract893 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6296:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract894 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6303:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract895 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6310:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract896 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6317:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract897 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6324:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract898 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6331:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract899 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6338:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract900 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6345:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract901 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6352:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract902 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6359:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract903 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6366:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract904 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6373:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract905 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6380:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract906 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6387:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract907 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6394:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract908 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6401:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract909 fails" file="./spec/test_spec.rb" time="0.000099"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6408:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract910 fails" file="./spec/test_spec.rb" time="0.000096"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6415:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract911 fails" file="./spec/test_spec.rb" time="0.000099"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6422:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract912 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6429:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract913 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6436:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract914 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6443:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract915 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6450:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract916 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6457:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract917 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6464:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract918 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6471:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract919 fails" file="./spec/test_spec.rb" time="0.000084"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6478:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract920 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6485:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract921 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6492:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract922 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6499:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract923 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6506:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract924 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6513:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract925 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6520:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract926 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6527:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract927 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6534:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract928 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6541:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract929 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6548:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract930 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6555:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract931 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6562:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract932 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6569:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract933 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6576:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract934 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6583:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract935 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6590:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract936 fails" file="./spec/test_spec.rb" time="0.000093"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6597:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract937 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6604:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract938 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6611:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract939 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6618:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract940 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6625:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract941 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6632:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract942 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6639:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract943 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6646:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract944 fails" file="./spec/test_spec.rb" time="0.000095"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6653:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract945 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6660:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract946 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6667:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract947 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6674:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract948 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6681:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract949 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6688:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract950 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6695:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract951 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6702:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract952 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6709:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract953 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6716:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract954 fails" file="./spec/test_spec.rb" time="0.000092"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6723:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract955 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6730:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract956 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6737:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract957 fails" file="./spec/test_spec.rb" time="0.000082"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6744:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract958 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6751:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract959 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6758:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract960 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6765:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract961 fails" file="./spec/test_spec.rb" time="0.000094"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6772:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract962 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6779:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract963 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6786:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract964 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6793:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract965 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6800:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract966 fails" file="./spec/test_spec.rb" time="0.000088"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6807:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract967 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6814:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract968 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6821:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract969 fails" file="./spec/test_spec.rb" time="0.000085"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6828:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract970 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6835:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract971 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6842:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract972 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6849:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract973 fails" file="./spec/test_spec.rb" time="0.000086"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6856:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract974 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6863:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract975 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6870:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract976 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6877:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract977 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6884:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract978 fails" file="./spec/test_spec.rb" time="0.000089"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6891:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract979 fails" file="./spec/test_spec.rb" time="0.000091"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6898:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract980 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6905:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract981 fails" file="./spec/test_spec.rb" time="0.000090"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6912:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract982 fails" file="./spec/test_spec.rb" time="0.000087"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6919:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract983 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6926:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract984 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6933:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract985 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6940:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract986 fails" file="./spec/test_spec.rb" time="0.000100"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6947:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract987 fails" file="./spec/test_spec.rb" time="0.000098"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6954:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract988 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6961:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract989 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6968:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract990 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6975:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract991 fails" file="./spec/test_spec.rb" time="0.000113"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6982:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract992 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6989:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract993 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:6996:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract994 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:7003:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract995 fails" file="./spec/test_spec.rb" time="0.000104"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:7010:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract996 fails" file="./spec/test_spec.rb" time="0.000079"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:7017:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract997 fails" file="./spec/test_spec.rb" time="0.000081"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:7024:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract998 fails" file="./spec/test_spec.rb" time="0.000080"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:7031:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract999 fails" file="./spec/test_spec.rb" time="0.000097"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:7038:in `block (3 levels) in <top (required)>'</failure></testcase> +<testcase classname="spec.test_spec" name="Test#subtract1000 fails" file="./spec/test_spec.rb" time="0.000078"><failure message="expected: falsey value + got: true" type="RSpec::Expectations::ExpectationNotMetError">Failure/Error: expect(true).to be_falsy + + expected: falsey value + got: true +./spec/test_spec.rb:7045:in `block (3 levels) in <top (required)>'</failure></testcase> +</testsuite> diff --git a/spec/fixtures/junit/junit_with_three_testsuites_3.xml b/spec/fixtures/junit/junit_with_three_testsuites_3.xml new file mode 100644 index 00000000000..9b3c287aec8 --- /dev/null +++ b/spec/fixtures/junit/junit_with_three_testsuites_3.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<testsuite name="rspec" tests="2" skipped="0" failures="0" errors="0" time="0.001691" timestamp="2018-07-30T10:02:37+00:00" hostname="runner-7661726c-project-14-concurrent-0"> +<properties> +<property name="seed" value="8528"/> +</properties> +<testcase classname="spec.string_helper_spec" name="StringHelper#concatenate when a is git and b is lab returns summary" file="./spec/string_helper_spec.rb" time="0.000287"></testcase> +<testcase classname="spec.string_helper_spec" name="StringHelper#concatenate when a is git and b is 200 raises an error" file="./spec/string_helper_spec.rb" time="0.000706"></testcase> +</testsuite> diff --git a/spec/lib/gitlab/ci/build/artifacts/gzip_file_adapter_spec.rb b/spec/lib/gitlab/ci/build/artifacts/gzip_file_adapter_spec.rb new file mode 100644 index 00000000000..384329dda18 --- /dev/null +++ b/spec/lib/gitlab/ci/build/artifacts/gzip_file_adapter_spec.rb @@ -0,0 +1,56 @@ +require 'spec_helper' + +describe Gitlab::Ci::Build::Artifacts::GzipFileAdapter do + describe '#initialize' do + context 'when stream is passed' do + let(:stream) { File.open(expand_fixture_path('junit/junit.xml.gz'), 'rb') } + + it 'initialized' do + expect { described_class.new(stream) }.not_to raise_error + end + end + + context 'when stream is not passed' do + let(:stream) { nil } + + it 'raises an error' do + expect { described_class.new(stream) }.to raise_error(described_class::InvalidStreamError) + end + end + end + + describe '#each_blob' do + let(:adapter) { described_class.new(stream) } + + context 'when stream is gzip file' do + context 'when gzip file contains one file' do + let(:stream) { File.open(expand_fixture_path('junit/junit.xml.gz'), 'rb') } + + it 'iterates content and file_name' do + expect { |b| adapter.each_blob(&b) } + .to yield_with_args(fixture_file('junit/junit.xml'), 'rspec.xml') + end + end + + context 'when gzip file contains three files' do + let(:stream) { File.open(expand_fixture_path('junit/junit_with_three_testsuites.xml.gz'), 'rb') } + + it 'iterates content and file_name' do + expect { |b| adapter.each_blob(&b) } + .to yield_successive_args( + [fixture_file('junit/junit_with_three_testsuites_1.xml'), 'rspec-3.xml'], + [fixture_file('junit/junit_with_three_testsuites_2.xml'), 'rspec-1.xml'], + [fixture_file('junit/junit_with_three_testsuites_3.xml'), 'rspec-2.xml']) + end + end + end + + context 'when stream is zip file' do + let(:stream) { File.open(expand_fixture_path('ci_build_artifacts.zip'), 'rb') } + + it 'raises an error' do + expect { |b| adapter.each_blob(&b) }.to raise_error(described_class::InvalidStreamError) + end + end + end +end diff --git a/spec/lib/gitlab/ci/parsers/junit_spec.rb b/spec/lib/gitlab/ci/parsers/junit_spec.rb new file mode 100644 index 00000000000..f7ec86f5385 --- /dev/null +++ b/spec/lib/gitlab/ci/parsers/junit_spec.rb @@ -0,0 +1,118 @@ +require 'spec_helper' + +describe Gitlab::Ci::Parsers::Junit do + describe '#parse!' do + subject { described_class.new.parse!(junit, test_suite) } + + let(:test_suite) { Gitlab::Ci::Reports::TestSuite.new('rspec') } + let(:test_cases) { flattened_test_cases(test_suite) } + + context 'when data is JUnit style XML' do + context 'when there are no test cases' do + let(:junit) do + <<-EOF.strip_heredoc + <testsuite></testsuite> + EOF + end + + it 'raises an error and does not add any test cases' do + expect { subject }.to raise_error(described_class::JunitParserError) + + expect(test_cases.count).to eq(0) + end + end + + context 'when there is a test case' do + let(:junit) do + <<-EOF.strip_heredoc + <testsuite> + <testcase classname='Calculator' name='sumTest1' time='0.01'></testcase> + </testsuite> + EOF + end + + it 'parses XML and adds a test case to a suite' do + expect { subject }.not_to raise_error + + expect(test_cases[0].classname).to eq('Calculator') + expect(test_cases[0].name).to eq('sumTest1') + expect(test_cases[0].execution_time).to eq(0.01) + end + end + + context 'when there are two test cases' do + let(:junit) do + <<-EOF.strip_heredoc + <testsuite> + <testcase classname='Calculator' name='sumTest1' time='0.01'></testcase> + <testcase classname='Calculator' name='sumTest2' time='0.02'></testcase> + </testsuite> + EOF + end + + it 'parses XML and adds test cases to a suite' do + expect { subject }.not_to raise_error + + expect(test_cases[0].classname).to eq('Calculator') + expect(test_cases[0].name).to eq('sumTest1') + expect(test_cases[0].execution_time).to eq(0.01) + expect(test_cases[1].classname).to eq('Calculator') + expect(test_cases[1].name).to eq('sumTest2') + expect(test_cases[1].execution_time).to eq(0.02) + end + end + + context 'when there are two test suites' do + let(:junit) do + <<-EOF.strip_heredoc + <testsuites> + <testsuite> + <testcase classname='Calculator' name='sumTest1' time='0.01'></testcase> + <testcase classname='Calculator' name='sumTest2' time='0.02'></testcase> + </testsuite> + <testsuite> + <testcase classname='Statemachine' name='happy path' time='100'></testcase> + <testcase classname='Statemachine' name='unhappy path' time='200'></testcase> + </testsuite> + </testsuites> + EOF + end + + it 'parses XML and adds test cases to a suite' do + expect { subject }.not_to raise_error + + expect(test_cases[0].classname).to eq('Calculator') + expect(test_cases[0].name).to eq('sumTest1') + expect(test_cases[0].execution_time).to eq(0.01) + expect(test_cases[1].classname).to eq('Calculator') + expect(test_cases[1].name).to eq('sumTest2') + expect(test_cases[1].execution_time).to eq(0.02) + expect(test_cases[2].classname).to eq('Statemachine') + expect(test_cases[2].name).to eq('happy path') + expect(test_cases[2].execution_time).to eq(100) + expect(test_cases[3].classname).to eq('Statemachine') + expect(test_cases[3].name).to eq('unhappy path') + expect(test_cases[3].execution_time).to eq(200) + end + end + end + + context 'when data is not JUnit style XML' do + let(:junit) { { testsuite: 'abc' }.to_json } + + it 'raises an error' do + expect { subject }.to raise_error(described_class::JunitParserError) + end + end + + private + + def flattened_test_cases(test_suite) + test_suite.test_cases.map do |status, value| + value.map do |key, test_case| + test_case + end + end.flatten + end + end +end diff --git a/spec/lib/gitlab/ci/parsers_spec.rb b/spec/lib/gitlab/ci/parsers_spec.rb new file mode 100644 index 00000000000..2fa83c4abae --- /dev/null +++ b/spec/lib/gitlab/ci/parsers_spec.rb @@ -0,0 +1,23 @@ +require 'spec_helper' + +describe Gitlab::Ci::Parsers do + describe '.fabricate!' do + subject { described_class.fabricate!(file_type) } + + context 'when file_type exists' do + let(:file_type) { 'junit' } + + it 'fabricates the class' do + is_expected.to be_a(described_class::Junit) + end + end + + context 'when file_type does not exist' do + let(:file_type) { 'undefined' } + + it 'raises an error' do + expect { subject }.to raise_error(NameError) + end + end + end +end diff --git a/spec/lib/gitlab/ci/reports/test_case_spec.rb b/spec/lib/gitlab/ci/reports/test_case_spec.rb new file mode 100644 index 00000000000..6932f79f0ce --- /dev/null +++ b/spec/lib/gitlab/ci/reports/test_case_spec.rb @@ -0,0 +1,90 @@ +require 'spec_helper' + +describe Gitlab::Ci::Reports::TestCase do + describe '#initialize' do + let(:test_case) { described_class.new(**params)} + + context 'when both classname and name are given' do + context 'when test case is passed' do + let(:params) do + { + name: 'test-1', + classname: 'trace', + file: 'spec/trace_spec.rb', + execution_time: 1.23, + status: described_class::STATUS_SUCCESS, + system_output: nil + } + end + + it 'initializes an instance' do + expect { test_case }.not_to raise_error + + expect(test_case.name).to eq('test-1') + expect(test_case.classname).to eq('trace') + expect(test_case.file).to eq('spec/trace_spec.rb') + expect(test_case.execution_time).to eq(1.23) + expect(test_case.status).to eq(described_class::STATUS_SUCCESS) + expect(test_case.system_output).to be_nil + end + end + + context 'when test case is failed' do + let(:params) do + { + name: 'test-1', + classname: 'trace', + file: 'spec/trace_spec.rb', + execution_time: 1.23, + status: described_class::STATUS_FAILED, + system_output: "Failure/Error: is_expected.to eq(300) expected: 300 got: -100" + } + end + + it 'initializes an instance' do + expect { test_case }.not_to raise_error + + expect(test_case.name).to eq('test-1') + expect(test_case.classname).to eq('trace') + expect(test_case.file).to eq('spec/trace_spec.rb') + expect(test_case.execution_time).to eq(1.23) + expect(test_case.status).to eq(described_class::STATUS_FAILED) + expect(test_case.system_output) + .to eq('Failure/Error: is_expected.to eq(300) expected: 300 got: -100') + end + end + end + + context 'when classname is missing' do + let(:params) do + { + name: 'test-1', + file: 'spec/trace_spec.rb', + execution_time: 1.23, + status: described_class::STATUS_SUCCESS, + system_output: nil + } + end + + it 'raises an error' do + expect { test_case }.to raise_error(ArgumentError) + end + end + + context 'when name is missing' do + let(:params) do + { + classname: 'trace', + file: 'spec/trace_spec.rb', + execution_time: 1.23, + status: described_class::STATUS_SUCCESS, + system_output: nil + } + end + + it 'raises an error' do + expect { test_case }.to raise_error(ArgumentError) + end + end + end +end diff --git a/spec/lib/gitlab/ci/reports/test_reports_comparer_spec.rb b/spec/lib/gitlab/ci/reports/test_reports_comparer_spec.rb new file mode 100644 index 00000000000..71c61e0345f --- /dev/null +++ b/spec/lib/gitlab/ci/reports/test_reports_comparer_spec.rb @@ -0,0 +1,134 @@ +require 'spec_helper' + +describe Gitlab::Ci::Reports::TestReportsComparer do + include TestReportsHelper + + let(:comparer) { described_class.new(base_reports, head_reports) } + let(:base_reports) { Gitlab::Ci::Reports::TestReports.new } + let(:head_reports) { Gitlab::Ci::Reports::TestReports.new } + + describe '#suite_comparers' do + subject { comparer.suite_comparers } + + context 'when head and base reports include two test suites' do + before do + base_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + base_reports.get_suite('junit').add_test_case(create_test_case_java_success) + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_success) + end + + it 'returns test suite comparers with specified values' do + expect(subject[0]).to be_a(Gitlab::Ci::Reports::TestSuiteComparer) + expect(subject[0].name).to eq('rspec') + expect(subject[0].head_suite).to eq(head_reports.get_suite('rspec')) + expect(subject[0].base_suite).to eq(base_reports.get_suite('rspec')) + expect(subject[1]).to be_a(Gitlab::Ci::Reports::TestSuiteComparer) + expect(subject[1].name).to eq('junit') + expect(subject[1].head_suite).to eq(head_reports.get_suite('junit')) + expect(subject[1].base_suite).to eq(base_reports.get_suite('junit')) + end + end + end + + describe '#total_status' do + subject { comparer.total_status } + + context 'when all tests cases are success in head suites' do + before do + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_success) + end + + it 'returns the total status' do + is_expected.to eq(Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + end + + context 'when there is a failed test case in head suites' do + before do + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + end + + it 'returns the total status in head suite' do + is_expected.to eq(Gitlab::Ci::Reports::TestCase::STATUS_FAILED) + end + end + end + + describe '#total_count' do + subject { comparer.total_count } + + before do + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + end + + it 'returns the total test counts in head suites' do + is_expected.to eq(2) + end + end + + describe '#resolved_count' do + subject { comparer.resolved_count } + + context 'when there is a resolved test case in head suites' do + let(:create_test_case_java_resolved) do + create_test_case_java_failed.tap do |test_case| + test_case.instance_variable_set("@status", Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + end + + before do + base_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + base_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_resolved) + end + + it 'returns the correct count' do + is_expected.to eq(1) + end + end + + context 'when there are no resolved test cases in head suites' do + before do + base_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + base_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + end + + it 'returns the correct count' do + is_expected.to eq(0) + end + end + end + + describe '#failed_count' do + subject { comparer.failed_count } + + context 'when there is a failed test case in head suites' do + before do + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + end + + it 'returns the correct count' do + is_expected.to eq(1) + end + end + + context 'when there are no failed test cases in head suites' do + before do + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_rspec_success) + end + + it 'returns the correct count' do + is_expected.to eq(0) + end + end + end +end diff --git a/spec/lib/gitlab/ci/reports/test_reports_spec.rb b/spec/lib/gitlab/ci/reports/test_reports_spec.rb new file mode 100644 index 00000000000..74ff134b239 --- /dev/null +++ b/spec/lib/gitlab/ci/reports/test_reports_spec.rb @@ -0,0 +1,132 @@ +require 'spec_helper' + +describe Gitlab::Ci::Reports::TestReports do + include TestReportsHelper + + let(:test_reports) { described_class.new } + + describe '#get_suite' do + subject { test_reports.get_suite(suite_name) } + + context 'when suite name is rspec' do + let(:suite_name) { 'rspec' } + + it { expect(subject.name).to eq('rspec') } + + it 'initializes a new test suite and returns it' do + expect(Gitlab::Ci::Reports::TestSuite).to receive(:new).and_call_original + + is_expected.to be_a(Gitlab::Ci::Reports::TestSuite) + end + + context 'when suite name is already allocated' do + before do + subject + end + + it 'does not initialize a new test suite' do + expect(Gitlab::Ci::Reports::TestSuite).not_to receive(:new) + + is_expected.to be_a(Gitlab::Ci::Reports::TestSuite) + end + end + end + end + + describe '#total_time' do + subject { test_reports.total_time } + + before do + test_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + test_reports.get_suite('junit').add_test_case(create_test_case_java_success) + end + + it 'returns the total time' do + is_expected.to eq(6.66) + end + end + + describe '#total_count' do + subject { test_reports.total_count } + + before do + test_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + test_reports.get_suite('junit').add_test_case(create_test_case_java_success) + end + + it 'returns the total count' do + is_expected.to eq(2) + end + end + + describe '#total_status' do + subject { test_reports.total_status } + + context 'when all test cases succeeded' do + before do + test_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + test_reports.get_suite('junit').add_test_case(create_test_case_java_success) + end + + it 'returns correct total status' do + is_expected.to eq(Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + end + + context 'when there is a failed test case' do + before do + test_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + test_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + end + + it 'returns correct total status' do + is_expected.to eq(Gitlab::Ci::Reports::TestCase::STATUS_FAILED) + end + end + + context 'when there is a skipped test case' do + before do + test_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + test_reports.get_suite('junit').add_test_case(create_test_case_java_skipped) + end + + it 'returns correct total status' do + is_expected.to eq(Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + end + + context 'when there is an error test case' do + before do + test_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + test_reports.get_suite('junit').add_test_case(create_test_case_java_error) + end + + it 'returns correct total status' do + is_expected.to eq(Gitlab::Ci::Reports::TestCase::STATUS_FAILED) + end + end + end + + Gitlab::Ci::Reports::TestCase::STATUS_TYPES.each do |status_type| + describe "##{status_type}_count" do + subject { test_reports.public_send("#{status_type}_count") } + + context "when #{status_type} test case exists" do + before do + test_reports.get_suite('rspec').add_test_case(public_send("create_test_case_rspec_#{status_type}")) + test_reports.get_suite('junit').add_test_case(public_send("create_test_case_java_#{status_type}")) + end + + it 'returns the count' do + is_expected.to eq(2) + end + end + + context "when #{status_type} test case do not exist" do + it 'returns nothing' do + is_expected.to be(0) + end + end + end + end +end diff --git a/spec/lib/gitlab/ci/reports/test_suite_comparer_spec.rb b/spec/lib/gitlab/ci/reports/test_suite_comparer_spec.rb new file mode 100644 index 00000000000..6ab16e5518d --- /dev/null +++ b/spec/lib/gitlab/ci/reports/test_suite_comparer_spec.rb @@ -0,0 +1,225 @@ +require 'spec_helper' + +describe Gitlab::Ci::Reports::TestSuiteComparer do + include TestReportsHelper + + let(:comparer) { described_class.new(name, base_suite, head_suite) } + let(:name) { 'rpsec' } + let(:base_suite) { Gitlab::Ci::Reports::TestSuite.new(name) } + let(:head_suite) { Gitlab::Ci::Reports::TestSuite.new(name) } + let(:test_case_success) { create_test_case_rspec_success } + let(:test_case_failed) { create_test_case_rspec_failed } + + let(:test_case_resolved) do + create_test_case_rspec_failed.tap do |test_case| + test_case.instance_variable_set("@status", Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + end + + describe '#new_failures' do + subject { comparer.new_failures } + + context 'when head sutie has a newly failed test case which does not exist in base' do + before do + base_suite.add_test_case(test_case_success) + head_suite.add_test_case(test_case_failed) + end + + it 'returns the failed test case' do + is_expected.to eq([test_case_failed]) + end + end + + context 'when head sutie still has a failed test case which failed in base' do + before do + base_suite.add_test_case(test_case_failed) + head_suite.add_test_case(test_case_failed) + end + + it 'does not return the failed test case' do + is_expected.to be_empty + end + end + + context 'when head sutie has a success test case which failed in base' do + before do + base_suite.add_test_case(test_case_failed) + head_suite.add_test_case(test_case_resolved) + end + + it 'does not return the failed test case' do + is_expected.to be_empty + end + end + end + + describe '#existing_failures' do + subject { comparer.existing_failures } + + context 'when head sutie has a newly failed test case which does not exist in base' do + before do + base_suite.add_test_case(test_case_success) + head_suite.add_test_case(test_case_failed) + end + + it 'returns the failed test case' do + is_expected.to be_empty + end + end + + context 'when head sutie still has a failed test case which failed in base' do + before do + base_suite.add_test_case(test_case_failed) + head_suite.add_test_case(test_case_failed) + end + + it 'does not return the failed test case' do + is_expected.to eq([test_case_failed]) + end + end + + context 'when head sutie has a success test case which failed in base' do + before do + base_suite.add_test_case(test_case_failed) + head_suite.add_test_case(test_case_resolved) + end + + it 'does not return the failed test case' do + is_expected.to be_empty + end + end + end + + describe '#resolved_failures' do + subject { comparer.resolved_failures } + + context 'when head sutie has a newly failed test case which does not exist in base' do + before do + base_suite.add_test_case(test_case_success) + head_suite.add_test_case(test_case_failed) + end + + it 'returns the failed test case' do + is_expected.to be_empty + end + + it 'returns the correct resolved count' do + expect(comparer.resolved_count).to eq(0) + end + end + + context 'when head sutie still has a failed test case which failed in base' do + before do + base_suite.add_test_case(test_case_failed) + head_suite.add_test_case(test_case_failed) + end + + it 'does not return the failed test case' do + is_expected.to be_empty + end + + it 'returns the correct resolved count' do + expect(comparer.resolved_count).to eq(0) + end + end + + context 'when head sutie has a success test case which failed in base' do + before do + base_suite.add_test_case(test_case_failed) + head_suite.add_test_case(test_case_resolved) + end + + it 'does not return the resolved test case' do + is_expected.to eq([test_case_resolved]) + end + + it 'returns the correct resolved count' do + expect(comparer.resolved_count).to eq(1) + end + end + end + + describe '#total_count' do + subject { comparer.total_count } + + before do + head_suite.add_test_case(test_case_success) + end + + it 'returns the total test counts in head suite' do + is_expected.to eq(1) + end + end + + describe '#failed_count' do + subject { comparer.failed_count } + + context 'when there are a new failure and an existing failure' do + let(:test_case_1_success) { create_test_case_rspec_success } + let(:test_case_2_failed) { create_test_case_rspec_failed } + + let(:test_case_1_failed) do + create_test_case_rspec_success.tap do |test_case| + test_case.instance_variable_set("@status", Gitlab::Ci::Reports::TestCase::STATUS_FAILED) + end + end + + before do + base_suite.add_test_case(test_case_1_success) + base_suite.add_test_case(test_case_2_failed) + head_suite.add_test_case(test_case_1_failed) + head_suite.add_test_case(test_case_2_failed) + end + + it 'returns the correct count' do + is_expected.to eq(2) + end + end + + context 'when there is a new failure' do + before do + base_suite.add_test_case(test_case_success) + head_suite.add_test_case(test_case_failed) + end + + it 'returns the correct count' do + is_expected.to eq(1) + end + end + + context 'when there is an existing failure' do + before do + base_suite.add_test_case(test_case_failed) + head_suite.add_test_case(test_case_failed) + end + + it 'returns the correct count' do + is_expected.to eq(1) + end + end + end + + describe '#total_status' do + subject { comparer.total_status } + + context 'when all test cases in head suite are success' do + before do + head_suite.add_test_case(test_case_success) + end + + it 'returns the total status in head suite' do + is_expected.to eq(Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + end + + context 'when there is a failed test case in head suite' do + before do + head_suite.add_test_case(test_case_failed) + end + + it 'returns the total status in head suite' do + is_expected.to eq(Gitlab::Ci::Reports::TestCase::STATUS_FAILED) + end + end + end +end diff --git a/spec/lib/gitlab/ci/reports/test_suite_spec.rb b/spec/lib/gitlab/ci/reports/test_suite_spec.rb new file mode 100644 index 00000000000..cd34dbaf62f --- /dev/null +++ b/spec/lib/gitlab/ci/reports/test_suite_spec.rb @@ -0,0 +1,120 @@ +require 'spec_helper' + +describe Gitlab::Ci::Reports::TestSuite do + include TestReportsHelper + + let(:test_suite) { described_class.new('Rspec') } + let(:test_case_success) { create_test_case_rspec_success } + let(:test_case_failed) { create_test_case_rspec_failed } + let(:test_case_skipped) { create_test_case_rspec_skipped } + let(:test_case_error) { create_test_case_rspec_error } + + it { expect(test_suite.name).to eq('Rspec') } + + describe '#add_test_case' do + context 'when status of the test case is success' do + it 'stores data correctly' do + test_suite.add_test_case(test_case_success) + + expect(test_suite.test_cases[test_case_success.status][test_case_success.key]) + .to eq(test_case_success) + expect(test_suite.total_time).to eq(1.11) + end + end + + context 'when status of the test case is failed' do + it 'stores data correctly' do + test_suite.add_test_case(test_case_failed) + + expect(test_suite.test_cases[test_case_failed.status][test_case_failed.key]) + .to eq(test_case_failed) + expect(test_suite.total_time).to eq(2.22) + end + end + + context 'when two test cases are added' do + it 'sums up total time' do + test_suite.add_test_case(test_case_success) + test_suite.add_test_case(test_case_failed) + + expect(test_suite.total_time).to eq(3.33) + end + end + end + + describe '#total_count' do + subject { test_suite.total_count } + + before do + test_suite.add_test_case(test_case_success) + test_suite.add_test_case(test_case_failed) + end + + it { is_expected.to eq(2) } + end + + describe '#total_status' do + subject { test_suite.total_status } + + context 'when all test cases succeeded' do + before do + test_suite.add_test_case(test_case_success) + end + + it { is_expected.to eq(Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) } + end + + context 'when a test case failed' do + before do + test_suite.add_test_case(test_case_success) + test_suite.add_test_case(test_case_failed) + end + + it { is_expected.to eq(Gitlab::Ci::Reports::TestCase::STATUS_FAILED) } + end + end + + Gitlab::Ci::Reports::TestCase::STATUS_TYPES.each do |status_type| + describe "##{status_type}" do + subject { test_suite.public_send("#{status_type}") } + + context "when #{status_type} test case exists" do + before do + test_suite.add_test_case(public_send("test_case_#{status_type}")) + end + + it 'returns all success test cases' do + is_expected.to eq( { public_send("test_case_#{status_type}").key => public_send("test_case_#{status_type}") }) + end + end + + context "when #{status_type} test case do not exist" do + it 'returns nothing' do + is_expected.to be_empty + end + end + end + end + + Gitlab::Ci::Reports::TestCase::STATUS_TYPES.each do |status_type| + describe "##{status_type}_count" do + subject { test_suite.public_send("#{status_type}_count") } + + context "when #{status_type} test case exists" do + before do + test_suite.add_test_case(public_send("test_case_#{status_type}")) + end + + it 'returns the count' do + is_expected.to eq(1) + end + end + + context "when #{status_type} test case do not exist" do + it 'returns nothing' do + is_expected.to be(0) + end + end + end + end +end diff --git a/spec/models/ci/build_spec.rb b/spec/models/ci/build_spec.rb index 6955f7f4cd8..32b8755ee9a 100644 --- a/spec/models/ci/build_spec.rb +++ b/spec/models/ci/build_spec.rb @@ -151,6 +151,42 @@ describe Ci::Build do end end + describe '.with_test_reports' do + subject { described_class.with_test_reports } + + context 'when build has a test report' do + let!(:build) { create(:ci_build, :success, :test_reports) } + + it 'selects the build' do + is_expected.to eq([build]) + end + end + + context 'when build does not have test reports' do + let!(:build) { create(:ci_build, :success, :trace_artifact) } + + it 'does not select the build' do + is_expected.to be_empty + end + end + + context 'when there are multiple builds with test reports' do + let!(:builds) { create_list(:ci_build, 5, :success, :test_reports) } + + it 'does not execute a query for selecting job artifact one by one' do + recorded = ActiveRecord::QueryRecorder.new do + subject.each do |build| + Ci::JobArtifact::TEST_REPORT_FILE_TYPES.each do |file_type| + build.public_send("job_artifacts_#{file_type}").file.exists? + end + end + end + + expect(recorded.count).to eq(2) + end + end + end + describe '#actionize' do context 'when build is a created' do before do @@ -2760,6 +2796,60 @@ describe Ci::Build do end end + describe '#collect_test_reports!' do + subject { build.collect_test_reports!(test_reports) } + + let(:test_reports) { Gitlab::Ci::Reports::TestReports.new } + + it { expect(test_reports.get_suite(build.name).total_count).to eq(0) } + + context 'when build has a test report' do + context 'when there is a JUnit test report from rspec test suite' do + before do + create(:ci_job_artifact, :junit, job: build, project: build.project) + end + + it 'parses blobs and add the results to the test suite' do + expect { subject }.not_to raise_error + + expect(test_reports.get_suite(build.name).total_count).to eq(4) + expect(test_reports.get_suite(build.name).success_count).to be(2) + expect(test_reports.get_suite(build.name).failed_count).to be(2) + end + end + + context 'when there is a JUnit test report from java ant test suite' do + before do + create(:ci_job_artifact, :junit_with_ant, job: build, project: build.project) + end + + it 'parses blobs and add the results to the test suite' do + expect { subject }.not_to raise_error + + expect(test_reports.get_suite(build.name).total_count).to eq(3) + expect(test_reports.get_suite(build.name).success_count).to be(3) + expect(test_reports.get_suite(build.name).failed_count).to be(0) + end + end + + context 'when there is a corrupted JUnit test report' do + before do + create(:ci_job_artifact, :junit_with_corrupted_data, job: build, project: build.project) + end + + it 'raises an error' do + expect { subject }.to raise_error(Gitlab::Ci::Parsers::Junit::JunitParserError) + end + end + end + + context 'when build does not have test reports' do + it 'raises an error' do + expect { subject }.to raise_error(NoMethodError) + end + end + end + describe '#artifacts_metadata_entry' do set(:build) { create(:ci_build, project: project) } let(:path) { 'other_artifacts_0.1.2/another-subdirectory/banana_sample.gif' } diff --git a/spec/models/ci/job_artifact_spec.rb b/spec/models/ci/job_artifact_spec.rb index 4f34c2e81f8..1bf338f4c70 100644 --- a/spec/models/ci/job_artifact_spec.rb +++ b/spec/models/ci/job_artifact_spec.rb @@ -147,6 +147,34 @@ describe Ci::JobArtifact do end end + describe '#each_blob' do + context 'when file format is gzip' do + context 'when gzip file contains one file' do + let(:artifact) { build(:ci_job_artifact, :junit) } + + it 'iterates blob once' do + expect { |b| artifact.each_blob(&b) }.to yield_control.once + end + end + + context 'when gzip file contains three files' do + let(:artifact) { build(:ci_job_artifact, :junit_with_three_testsuites) } + + it 'iterates blob three times' do + expect { |b| artifact.each_blob(&b) }.to yield_control.exactly(3).times + end + end + end + + context 'when there are no adapters for the file format' do + let(:artifact) { build(:ci_job_artifact, :junit, file_format: :zip) } + + it 'raises an error' do + expect { |b| artifact.each_blob(&b) }.to raise_error(described_class::NotSupportedAdapterError) + end + end + end + describe '#expire_in' do subject { artifact.expire_in } diff --git a/spec/models/ci/pipeline_spec.rb b/spec/models/ci/pipeline_spec.rb index a41657b53b7..3512ba6aee5 100644 --- a/spec/models/ci/pipeline_spec.rb +++ b/spec/models/ci/pipeline_spec.rb @@ -1851,6 +1851,62 @@ describe Ci::Pipeline, :mailer do end end + describe '#has_test_reports?' do + subject { pipeline.has_test_reports? } + + context 'when pipeline has builds with test reports' do + before do + create(:ci_build, pipeline: pipeline, project: project).tap do |build| + create(:ci_job_artifact, :junit, job: build, project: build.project) + end + end + + context 'when pipeline status is running' do + let(:pipeline) { create(:ci_pipeline, :running, project: project) } + + it { is_expected.to be_falsey } + end + + context 'when pipeline status is success' do + let(:pipeline) { create(:ci_pipeline, :success, project: project) } + + it { is_expected.to be_truthy } + end + end + + context 'when pipeline does not have builds with test reports' do + it { is_expected.to be_falsey } + end + end + + describe '#test_reports' do + subject { pipeline.test_reports } + + context 'when pipeline has multiple builds with test reports' do + before do + create(:ci_build, :success, name: 'rspec', pipeline: pipeline, project: project).tap do |build| + create(:ci_job_artifact, :junit, job: build, project: build.project) + end + + create(:ci_build, :success, name: 'java', pipeline: pipeline, project: project).tap do |build| + create(:ci_job_artifact, :junit_with_ant, job: build, project: build.project) + end + end + + it 'returns test reports with collected data' do + expect(subject.total_count).to be(7) + expect(subject.success_count).to be(5) + expect(subject.failed_count).to be(2) + end + end + + context 'when pipeline does not have any builds with test reports' do + it 'returns empty test reports' do + expect(subject.total_count).to be(0) + end + end + end + describe '#total_size' do let!(:build_job1) { create(:ci_build, pipeline: pipeline, stage_idx: 0) } let!(:build_job2) { create(:ci_build, pipeline: pipeline, stage_idx: 0) } diff --git a/spec/models/merge_request_spec.rb b/spec/models/merge_request_spec.rb index b0d9d03bf6c..ffdec09deef 100644 --- a/spec/models/merge_request_spec.rb +++ b/spec/models/merge_request_spec.rb @@ -3,6 +3,7 @@ require 'spec_helper' describe MergeRequest do include RepoHelpers include ProjectForksHelper + include ReactiveCachingHelpers subject { create(:merge_request) } @@ -1079,6 +1080,86 @@ describe MergeRequest do end end + describe '#has_test_reports?' do + subject { merge_request.has_test_reports? } + + let(:project) { create(:project, :repository) } + + context 'when head pipeline has test reports' do + let(:merge_request) { create(:merge_request, :with_test_reports, source_project: project) } + + it { is_expected.to be_truthy } + end + + context 'when head pipeline does not have test reports' do + let(:merge_request) { create(:merge_request, source_project: project) } + + it { is_expected.to be_falsey } + end + end + + describe '#compare_test_reports' do + subject { merge_request.compare_test_reports } + + let(:project) { create(:project, :repository) } + let(:merge_request) { create(:merge_request, source_project: project) } + + let!(:base_pipeline) do + create(:ci_pipeline, + :with_test_reports, + project: project, + ref: merge_request.target_branch, + sha: merge_request.diff_base_sha) + end + + before do + merge_request.update!(head_pipeline_id: head_pipeline.id) + end + + context 'when head pipeline has test reports' do + let!(:head_pipeline) do + create(:ci_pipeline, + :with_test_reports, + project: project, + ref: merge_request.source_branch, + sha: merge_request.diff_head_sha) + end + + context 'when reactive cache worker is parsing asynchronously' do + it 'returns status' do + expect(subject[:status]).to eq(:parsing) + end + end + + context 'when reactive cache worker is inline' do + before do + synchronous_reactive_cache(merge_request) + end + + it 'returns status and data' do + expect_any_instance_of(Ci::CompareTestReportsService) + .to receive(:execute).with(base_pipeline.iid, head_pipeline.iid) + + subject + end + end + end + + context 'when head pipeline does not have test reports' do + let!(:head_pipeline) do + create(:ci_pipeline, + project: project, + ref: merge_request.source_branch, + sha: merge_request.diff_head_sha) + end + + it 'returns status and error message' do + expect(subject[:status]).to eq(:error) + expect(subject[:status_reason]).to eq('This merge request does not have test reports') + end + end + end + describe '#all_commit_shas' do context 'when merge request is persisted' do let(:all_commit_shas) do @@ -2010,6 +2091,26 @@ describe MergeRequest do end end + describe '#base_pipeline' do + let(:pipeline_arguments) do + { + project: project, + ref: merge_request.target_branch, + sha: merge_request.diff_base_sha + } + end + + let(:project) { create(:project, :public, :repository) } + let(:merge_request) { create(:merge_request, source_project: project) } + + let!(:first_pipeline) { create(:ci_pipeline_without_jobs, pipeline_arguments) } + let!(:last_pipeline) { create(:ci_pipeline_without_jobs, pipeline_arguments) } + + it 'returns latest pipeline' do + expect(merge_request.base_pipeline).to eq(last_pipeline) + end + end + describe '#has_commits?' do before do allow(subject.merge_request_diff).to receive(:commits_count) diff --git a/spec/requests/api/runner_spec.rb b/spec/requests/api/runner_spec.rb index 0f41e46cdd5..43ceb332cfb 100644 --- a/spec/requests/api/runner_spec.rb +++ b/spec/requests/api/runner_spec.rb @@ -1449,7 +1449,7 @@ describe API::Runner, :clean_gitlab_redis_shared_state do context 'when artifact_type is junit' do context 'when artifact_format is gzip' do - let(:file_upload) { fixture_file_upload('spec/fixtures/junit.xml.gz') } + let(:file_upload) { fixture_file_upload('spec/fixtures/junit/junit.xml.gz') } let(:params) { { artifact_type: :junit, artifact_format: :gzip } } it 'stores junit test report' do @@ -1461,7 +1461,7 @@ describe API::Runner, :clean_gitlab_redis_shared_state do end context 'when artifact_format is raw' do - let(:file_upload) { fixture_file_upload('spec/fixtures/junit.xml.gz') } + let(:file_upload) { fixture_file_upload('spec/fixtures/junit/junit.xml.gz') } let(:params) { { artifact_type: :junit, artifact_format: :raw } } it 'returns an error' do diff --git a/spec/serializers/test_case_entity_spec.rb b/spec/serializers/test_case_entity_spec.rb new file mode 100644 index 00000000000..a55910f98bb --- /dev/null +++ b/spec/serializers/test_case_entity_spec.rb @@ -0,0 +1,31 @@ +require 'spec_helper' + +describe TestCaseEntity do + include TestReportsHelper + + let(:entity) { described_class.new(test_case) } + + describe '#as_json' do + subject { entity.as_json } + + context 'when test case is success' do + let(:test_case) { create_test_case_rspec_success } + + it 'contains correct test case details' do + expect(subject[:status]).to eq('success') + expect(subject[:name]).to eq('Test#sum when a is 1 and b is 3 returns summary') + expect(subject[:execution_time]).to eq(1.11) + end + end + + context 'when test case is failed' do + let(:test_case) { create_test_case_rspec_failed } + + it 'contains correct test case details' do + expect(subject[:status]).to eq('failed') + expect(subject[:name]).to eq('Test#sum when a is 2 and b is 2 returns summary') + expect(subject[:execution_time]).to eq(2.22) + end + end + end +end diff --git a/spec/serializers/test_reports_comparer_entity_spec.rb b/spec/serializers/test_reports_comparer_entity_spec.rb new file mode 100644 index 00000000000..59c058fe368 --- /dev/null +++ b/spec/serializers/test_reports_comparer_entity_spec.rb @@ -0,0 +1,76 @@ +require 'spec_helper' + +describe TestReportsComparerEntity do + include TestReportsHelper + + let(:entity) { described_class.new(comparer) } + let(:comparer) { Gitlab::Ci::Reports::TestReportsComparer.new(base_reports, head_reports) } + let(:base_reports) { Gitlab::Ci::Reports::TestReports.new } + let(:head_reports) { Gitlab::Ci::Reports::TestReports.new } + + describe '#as_json' do + subject { entity.as_json } + + context 'when head and base reports include two test suites' do + context 'when the status of head report is success' do + before do + base_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + base_reports.get_suite('junit').add_test_case(create_test_case_java_success) + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_success) + end + + it 'contains correct compared test reports details' do + expect(subject[:status]).to eq('success') + expect(subject[:summary]).to include(total: 2, resolved: 0, failed: 0) + expect(subject[:suites].first[:name]).to eq('rspec') + expect(subject[:suites].first[:status]).to eq('success') + expect(subject[:suites].second[:name]).to eq('junit') + expect(subject[:suites].second[:status]).to eq('success') + end + end + + context 'when the status of head report is failed' do + before do + base_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + base_reports.get_suite('junit').add_test_case(create_test_case_java_success) + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + end + + it 'contains correct compared test reports details' do + expect(subject[:status]).to eq('failed') + expect(subject[:summary]).to include(total: 2, resolved: 0, failed: 1) + expect(subject[:suites].first[:name]).to eq('rspec') + expect(subject[:suites].first[:status]).to eq('success') + expect(subject[:suites].second[:name]).to eq('junit') + expect(subject[:suites].second[:status]).to eq('failed') + end + end + + context 'when the status of head report is resolved' do + before do + base_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + base_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_resolved) + end + + let(:create_test_case_java_resolved) do + create_test_case_java_failed.tap do |test_case| + test_case.instance_variable_set("@status", Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + end + + it 'contains correct compared test reports details' do + expect(subject[:status]).to eq('success') + expect(subject[:summary]).to include(total: 2, resolved: 1, failed: 0) + expect(subject[:suites].first[:name]).to eq('rspec') + expect(subject[:suites].first[:status]).to eq('success') + expect(subject[:suites].second[:name]).to eq('junit') + expect(subject[:suites].second[:status]).to eq('success') + end + end + end + end +end diff --git a/spec/serializers/test_reports_comparer_serializer_spec.rb b/spec/serializers/test_reports_comparer_serializer_spec.rb new file mode 100644 index 00000000000..9ea86c0dd83 --- /dev/null +++ b/spec/serializers/test_reports_comparer_serializer_spec.rb @@ -0,0 +1,62 @@ +require 'spec_helper' + +describe TestReportsComparerSerializer do + include TestReportsHelper + + let(:project) { double(:project) } + let(:serializer) { described_class.new(project: project).represent(comparer) } + let(:comparer) { Gitlab::Ci::Reports::TestReportsComparer.new(base_reports, head_reports) } + let(:base_reports) { Gitlab::Ci::Reports::TestReports.new } + let(:head_reports) { Gitlab::Ci::Reports::TestReports.new } + + describe '#to_json' do + subject { serializer.to_json } + + context 'when head and base reports include two test suites' do + context 'when the status of head report is success' do + before do + base_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + base_reports.get_suite('junit').add_test_case(create_test_case_java_success) + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_success) + end + + it 'matches the schema' do + expect(subject).to match_schema('entities/test_reports_comparer') + end + end + + context 'when the status of head report is failed' do + before do + base_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + base_reports.get_suite('junit').add_test_case(create_test_case_java_success) + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + end + + it 'matches the schema' do + expect(subject).to match_schema('entities/test_reports_comparer') + end + end + + context 'when the status of head report is resolved' do + before do + base_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + base_reports.get_suite('junit').add_test_case(create_test_case_java_failed) + head_reports.get_suite('rspec').add_test_case(create_test_case_rspec_success) + head_reports.get_suite('junit').add_test_case(create_test_case_java_resolved) + end + + let(:create_test_case_java_resolved) do + create_test_case_java_failed.tap do |test_case| + test_case.instance_variable_set("@status", Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + end + + it 'matches the schema' do + expect(subject).to match_schema('entities/test_reports_comparer') + end + end + end + end +end diff --git a/spec/serializers/test_suite_comparer_entity_spec.rb b/spec/serializers/test_suite_comparer_entity_spec.rb new file mode 100644 index 00000000000..f61331f53a0 --- /dev/null +++ b/spec/serializers/test_suite_comparer_entity_spec.rb @@ -0,0 +1,86 @@ +require 'spec_helper' + +describe TestSuiteComparerEntity do + include TestReportsHelper + + let(:entity) { described_class.new(comparer) } + let(:comparer) { Gitlab::Ci::Reports::TestSuiteComparer.new(name, base_suite, head_suite) } + let(:name) { 'rpsec' } + let(:base_suite) { Gitlab::Ci::Reports::TestSuite.new(name) } + let(:head_suite) { Gitlab::Ci::Reports::TestSuite.new(name) } + let(:test_case_success) { create_test_case_rspec_success } + let(:test_case_failed) { create_test_case_rspec_failed } + + let(:test_case_resolved) do + create_test_case_rspec_failed.tap do |test_case| + test_case.instance_variable_set("@status", Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + end + + describe '#as_json' do + subject { entity.as_json } + + context 'when head sutie has a newly failed test case which does not exist in base' do + before do + base_suite.add_test_case(test_case_success) + head_suite.add_test_case(test_case_failed) + end + + it 'contains correct compared test suite details' do + expect(subject[:name]).to eq(name) + expect(subject[:status]).to eq('failed') + expect(subject[:summary]).to include(total: 1, resolved: 0, failed: 1) + subject[:new_failures].first.tap do |new_failure| + expect(new_failure[:status]).to eq(test_case_failed.status) + expect(new_failure[:name]).to eq(test_case_failed.name) + expect(new_failure[:execution_time]).to eq(test_case_failed.execution_time) + expect(new_failure[:system_output]).to eq(test_case_failed.system_output) + end + expect(subject[:resolved_failures]).to be_empty + expect(subject[:existing_failures]).to be_empty + end + end + + context 'when head sutie still has a failed test case which failed in base' do + before do + base_suite.add_test_case(test_case_failed) + head_suite.add_test_case(test_case_failed) + end + + it 'contains correct compared test suite details' do + expect(subject[:name]).to eq(name) + expect(subject[:status]).to eq('failed') + expect(subject[:summary]).to include(total: 1, resolved: 0, failed: 1) + expect(subject[:new_failures]).to be_empty + expect(subject[:resolved_failures]).to be_empty + subject[:existing_failures].first.tap do |existing_failure| + expect(existing_failure[:status]).to eq(test_case_failed.status) + expect(existing_failure[:name]).to eq(test_case_failed.name) + expect(existing_failure[:execution_time]).to eq(test_case_failed.execution_time) + expect(existing_failure[:system_output]).to eq(test_case_failed.system_output) + end + end + end + + context 'when head sutie has a success test case which failed in base' do + before do + base_suite.add_test_case(test_case_failed) + head_suite.add_test_case(test_case_resolved) + end + + it 'contains correct compared test suite details' do + expect(subject[:name]).to eq(name) + expect(subject[:status]).to eq('success') + expect(subject[:summary]).to include(total: 1, resolved: 1, failed: 0) + expect(subject[:new_failures]).to be_empty + subject[:resolved_failures].first.tap do |resolved_failure| + expect(resolved_failure[:status]).to eq(test_case_resolved.status) + expect(resolved_failure[:name]).to eq(test_case_resolved.name) + expect(resolved_failure[:execution_time]).to eq(test_case_resolved.execution_time) + expect(resolved_failure[:system_output]).to eq(test_case_resolved.system_output) + end + expect(subject[:existing_failures]).to be_empty + end + end + end +end diff --git a/spec/services/ci/compare_test_reports_service_spec.rb b/spec/services/ci/compare_test_reports_service_spec.rb new file mode 100644 index 00000000000..d3bbf17cc5c --- /dev/null +++ b/spec/services/ci/compare_test_reports_service_spec.rb @@ -0,0 +1,45 @@ +require 'spec_helper' + +describe Ci::CompareTestReportsService do + let(:service) { described_class.new(project) } + let(:project) { create(:project, :repository) } + + describe '#execute' do + subject { service.execute(base_pipeline&.iid, head_pipeline.iid) } + + context 'when head pipeline has test reports' do + let!(:base_pipeline) { nil } + let!(:head_pipeline) { create(:ci_pipeline, :with_test_reports, project: project) } + + it 'returns status and data' do + expect(subject[:status]).to eq(:parsed) + expect(subject[:data]).to match_schema('entities/test_reports_comparer') + end + end + + context 'when base and head pipelines have test reports' do + let!(:base_pipeline) { create(:ci_pipeline, :with_test_reports, project: project) } + let!(:head_pipeline) { create(:ci_pipeline, :with_test_reports, project: project) } + + it 'returns status and data' do + expect(subject[:status]).to eq(:parsed) + expect(subject[:data]).to match_schema('entities/test_reports_comparer') + end + end + + context 'when head pipeline has corrupted test reports' do + let!(:base_pipeline) { nil } + let!(:head_pipeline) { create(:ci_pipeline, project: project) } + + before do + build = create(:ci_build, pipeline: head_pipeline, project: head_pipeline.project) + create(:ci_job_artifact, :junit_with_corrupted_data, job: build, project: project) + end + + it 'returns status and error message' do + expect(subject[:status]).to eq(:error) + expect(subject[:status_reason]).to include('XML parsing failed') + end + end + end +end diff --git a/spec/support/helpers/reactive_caching_helpers.rb b/spec/support/helpers/reactive_caching_helpers.rb index e22dd974c6a..a575aa99b79 100644 --- a/spec/support/helpers/reactive_caching_helpers.rb +++ b/spec/support/helpers/reactive_caching_helpers.rb @@ -14,8 +14,8 @@ module ReactiveCachingHelpers end def synchronous_reactive_cache(subject) - allow(service).to receive(:with_reactive_cache) do |*args, &block| - block.call(service.calculate_reactive_cache(*args)) + allow(subject).to receive(:with_reactive_cache) do |*args, &block| + block.call(subject.calculate_reactive_cache(*args)) end end diff --git a/spec/support/test_reports/test_reports_helper.rb b/spec/support/test_reports/test_reports_helper.rb new file mode 100644 index 00000000000..45c6e04dbf3 --- /dev/null +++ b/spec/support/test_reports/test_reports_helper.rb @@ -0,0 +1,93 @@ +module TestReportsHelper + def create_test_case_rspec_success + Gitlab::Ci::Reports::TestCase.new( + name: 'Test#sum when a is 1 and b is 3 returns summary', + classname: 'spec.test_spec', + file: './spec/test_spec.rb', + execution_time: 1.11, + status: Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + + def create_test_case_rspec_failed + Gitlab::Ci::Reports::TestCase.new( + name: 'Test#sum when a is 2 and b is 2 returns summary', + classname: 'spec.test_spec', + file: './spec/test_spec.rb', + execution_time: 2.22, + system_output: sample_rspec_failed_message, + status: Gitlab::Ci::Reports::TestCase::STATUS_FAILED) + end + + def create_test_case_rspec_skipped + Gitlab::Ci::Reports::TestCase.new( + name: 'Test#sum when a is 3 and b is 3 returns summary', + classname: 'spec.test_spec', + file: './spec/test_spec.rb', + execution_time: 3.33, + status: Gitlab::Ci::Reports::TestCase::STATUS_SKIPPED) + end + + def create_test_case_rspec_error + Gitlab::Ci::Reports::TestCase.new( + name: 'Test#sum when a is 4 and b is 4 returns summary', + classname: 'spec.test_spec', + file: './spec/test_spec.rb', + execution_time: 4.44, + status: Gitlab::Ci::Reports::TestCase::STATUS_ERROR) + end + + def sample_rspec_failed_message + <<-EOF.strip_heredoc + Failure/Error: is_expected.to eq(3) + + expected: 3 + got: -1 + + (compared using ==) + ./spec/test_spec.rb:12:in `block (4 levels) in <top (required)>' + EOF + end + + def create_test_case_java_success + Gitlab::Ci::Reports::TestCase.new( + name: 'addTest', + classname: 'CalculatorTest', + execution_time: 5.55, + status: Gitlab::Ci::Reports::TestCase::STATUS_SUCCESS) + end + + def create_test_case_java_failed + Gitlab::Ci::Reports::TestCase.new( + name: 'subtractTest', + classname: 'CalculatorTest', + execution_time: 6.66, + system_output: sample_java_failed_message, + status: Gitlab::Ci::Reports::TestCase::STATUS_FAILED) + end + + def create_test_case_java_skipped + Gitlab::Ci::Reports::TestCase.new( + name: 'multiplyTest', + classname: 'CalculatorTest', + execution_time: 7.77, + status: Gitlab::Ci::Reports::TestCase::STATUS_SKIPPED) + end + + def create_test_case_java_error + Gitlab::Ci::Reports::TestCase.new( + name: 'divideTest', + classname: 'CalculatorTest', + execution_time: 8.88, + status: Gitlab::Ci::Reports::TestCase::STATUS_ERROR) + end + + def sample_java_failed_message + <<-EOF.strip_heredoc + junit.framework.AssertionFailedError: expected:<1> but was:<3> + at CalculatorTest.subtractExpression(Unknown Source) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) + at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) + EOF + end +end |