From e7587da9c60d7f10846d440ade45b644bbee4792 Mon Sep 17 00:00:00 2001 From: b123400 Date: Fri, 12 May 2023 15:25:28 +0900 Subject: [PATCH] Update test cases --- src/plugin/shortage.rb | 2 +- test/data/html/drugshortage-changed.html | 64 +++++++++++++----------- test/data/html/drugshortage.html | 64 +++++++++++++----------- test/test_plugin/shortage.rb | 19 ++++--- 4 files changed, 81 insertions(+), 68 deletions(-) diff --git a/src/plugin/shortage.rb b/src/plugin/shortage.rb index 3119fc5c2..3b90ac75d 100644 --- a/src/plugin/shortage.rb +++ b/src/plugin/shortage.rb @@ -192,7 +192,7 @@ def update_drugshortage(agent = Mechanize.new) added_info.shortage_last_update = Date.strptime(shortage.parent.css('td')[4].text,"%d.%m.%Y").to_s added_info.shortage_state = shortage.parent.css('td')[3].text added_info.shortage_delivery_date = shortage.parent.css('td')[1].text - added_info.shortage_link = (BASE_URI + '/' + shortage.parent.css('td')[0].children.first.children.first.attributes.first.last.value).clone + added_info.shortage_link = (shortage.parent.css('td')[0].children.first.attributes.first.last.value).clone @found_shortages[added_info.gtin] = added_info end old_packages_with_shortage = @app.active_packages.find_all do |package| diff --git a/test/data/html/drugshortage-changed.html b/test/data/html/drugshortage-changed.html index df2955b83..f1d18d64b 100644 --- a/test/data/html/drugshortage-changed.html +++ b/test/data/html/drugshortage-changed.html @@ -201,37 +201,43 @@ mögliche Alternativen -ALENDRON D3-Mepha Wochentabl 70/5600 12 Stk -7680623550019 -6198724 -Mepha Pharma AG -22.04.2017 -28 -aktuell keine Lieferungen -in Abklärung / en cours de clarification -Alternativen? + ALENDRON D3-Mepha Wochentabl 70/5600 12 Stk + 2024 + Alternativen? + aktuell keine Lieferungen + 22.04.2017 + Mepha Pharma AG + 7680623550019 + 6198724 + 387 + C09AA06 + C09AA06SETN000000010FILT - -ALENDRONAT Sandoz Filmtabl 70 mg 12 Stk -762860504332 -3663511 -Sandoz Pharmaceuticals AG -14.04.2017 -5 -aktuell keine Lieferungen -30.06.2017 -Alternativen? + + ALENDRONAT Sandoz Filmtabl 70 mg 12 Stk + 2024 + Alternativen? + aktuell keine Lieferungen + 14.04.2017 + Sandoz Pharmaceuticals AG + 762860504332 + 3663511 + 387 + C09AA06 + C09AA06SETN000000010FILT -< -ALGIFOR Filmtabl 200 mg 20 Stk -7680519690140 -3145147 -Vifor Consumer Health SA -13.01.2017 -12 -aktuell keine Lieferungen -offen -Alternativen? + + ALGIFOR Filmtabl 200 mg 20 Stk + 2024 + Alternativen? + aktuell keine Lieferungen + 13.01.2017 + Vifor Consumer Health SA + 7680519690140 + 3145147 + 387 + C09AA06 + C09AA06SETN000000010FILT diff --git a/test/data/html/drugshortage.html b/test/data/html/drugshortage.html index fbe1586b9..5f84bec3b 100755 --- a/test/data/html/drugshortage.html +++ b/test/data/html/drugshortage.html @@ -201,37 +201,45 @@ mögliche Alternativen -ALENDRON D3-Mepha Wochentabl 70/5600 12 Stk -7680623550019 -6198724 -Mepha Pharma AG -24.02.2017 -28 -aktuell keine Lieferungen -offen -Alternativen? + ALENDRON D3-Mepha Wochentabl 70/5600 12 Stk + 2024 + Alternativen? + aktuell keine Lieferungen + 22.02.2017 + Mepha Pharma AG + 7680623550019 + 6198724 + 387 + C09AA06 + C09AA06SETN000000010FILT + -ALENDRONAT Sandoz Filmtabl 70 mg 12 Stk -762860504332 -3663511 -Sandoz Pharmaceuticals AG -14.04.2017 -5 -aktuell keine Lieferungen -30.06.2017 -Alternativen? + ALENDRONAT Sandoz Filmtabl 70 mg 12 Stk + 2024 + Alternativen? + aktuell keine Lieferungen + 14.04.2017 + Sandoz Pharmaceuticals AG + 762860504332 + 3663511 + 387 + C09AA06 + C09AA06SETN000000010FILT - -ALGIFOR Filmtabl 200 mg 20 Stk -7680519690140 -3145147 -Vifor Consumer Health SA -13.01.2017 -12 -aktuell keine Lieferungen -offen -Alternativen? + + ALGIFOR Filmtabl 200 mg 20 Stk + 2024 + Alternativen? + aktuell keine Lieferungen + 13.01.2017 + Vifor Consumer Health SA + 7680519690140 + 3145147 + 387 + C09AA06 + C09AA06SETN000000010FILT + diff --git a/test/test_plugin/shortage.rb b/test/test_plugin/shortage.rb index b311d0206..78efb300f 100755 --- a/test/test_plugin/shortage.rb +++ b/test/test_plugin/shortage.rb @@ -180,11 +180,11 @@ def expected_test_result DrugShortag changes: -7680623550019;atc;pack_mock shortage_last_update: shortage_state => 2017-02-24 - shortage_delivery_date: shortage_delivery_date => offen +7680623550019;atc;pack_mock shortage_last_update: shortage_state => 2017-02-22 + shortage_delivery_date: shortage_delivery_date => 2024 shortage_link: shortage_link => https://www.drugshortage.ch/detail_lieferengpass.aspx?ID=2934 7680519690140;atc;pack_mock shortage_last_update: shortage_state => 2017-01-13 - shortage_delivery_date: shortage_delivery_date => offen + shortage_delivery_date: shortage_delivery_date => 2024 shortage_link: shortage_link => https://www.drugshortage.ch/detail_lieferengpass.aspx?ID=2786 DrugShortag deletions: @@ -198,18 +198,17 @@ def test_report end def test_changes_with_test_file @plugin.update(@agent) - expected = {"7680623550019;atc;pack_mock"=>["shortage_last_update: shortage_state => 2017-02-24", "shortage_delivery_date: shortage_delivery_date => offen", - "shortage_link: shortage_link => https://www.drugshortage.ch/detail_lieferengpass.aspx?ID=2934"], - "7680519690140;atc;pack_mock"=>["shortage_last_update: shortage_state => 2017-01-13", "shortage_delivery_date: shortage_delivery_date => offen", - "shortage_link: shortage_link => https://www.drugshortage.ch/detail_lieferengpass.aspx?ID=2786"]} + expected = { + "7680623550019;atc;pack_mock"=>["shortage_last_update: shortage_state => 2017-02-22", "shortage_delivery_date: shortage_delivery_date => 2024", "shortage_link: shortage_link => https://www.drugshortage.ch/detail_lieferengpass.aspx?ID=2934"], + "7680519690140;atc;pack_mock"=>["shortage_last_update: shortage_state => 2017-01-13", "shortage_delivery_date: shortage_delivery_date => 2024", "shortage_link: shortage_link => https://www.drugshortage.ch/detail_lieferengpass.aspx?ID=2786"] + } assert_equal(expected , @plugin.changes_shortages) end def check_csv_lines(content) lines = content.split("\n") assert_equal('GTIN;ATC-Code;Präparatbezeichnung;Datum der Meldung (Swissmedic);Nicht-Inverkehrbringen ab (Swissmedic);Vertriebsunterbruch ab (Swissmedic);Link (Swissmedic);Datum letzte Mutation (Drugshortage);Status (Drugshortage);Datum Lieferfähigkeit (Drugshortage);Link (Drugshortage)', lines.first.strip) - assert(lines.find{|line| line.strip.eql?("7680519690140;atc;pack_mock;;;;;2017-01-13;aktuell keine Lieferungen;offen;https://www.drugshortage.ch/detail_lieferengpass.aspx?ID=2786") }) - assert(lines.find{|line| line.strip.eql?("7680519690140;atc;pack_mock;;;;;2017-01-13;aktuell keine Lieferungen;offen;https://www.drugshortage.ch/detail_lieferengpass.aspx?ID=2786") }) + assert(lines.find{|line| line.strip.eql?("7680519690140;atc;pack_mock;;;;;2017-01-13;aktuell keine Lieferungen;2024;https://www.drugshortage.ch/detail_lieferengpass.aspx?ID=2786") }) end def test_export_csv @@ -294,7 +293,7 @@ def test_run_with_changed_content assert(/Changed\s+2\s+shortages/.match(result)) expected = %(DrugShortag changes: 7680623550019;atc;pack_mock shortage_last_update: shortage_state => 2017-04-22 - shortage_delivery_date: shortage_delivery_date => in Abklärung / en cours de clarification + shortage_delivery_date: shortage_delivery_date => 2024 shortage_link: shortage_link => https://www.drugshortage.ch/detail_lieferengpass.aspx?ID=2934 ) assert(result.index(expected))