ramaze.ch.oddb.org 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +6 -0
- data/LICENSE +339 -0
- data/Manifest.txt +285 -0
- data/README.txt +45 -0
- data/Rakefile +28 -0
- data/bin/admin +69 -0
- data/bin/exportd +63 -0
- data/bin/migrate +461 -0
- data/bin/oddbd +62 -0
- data/data/fulltext/data/dicts/french/fulltext.aff +1057 -0
- data/data/fulltext/data/dicts/french/fulltext.dict +91189 -0
- data/data/fulltext/data/dicts/french/fulltext.stop +135 -0
- data/data/fulltext/data/dicts/german/fulltext.aff +1233 -0
- data/data/fulltext/data/dicts/german/fulltext.dict +287574 -0
- data/data/fulltext/data/dicts/german/fulltext.stop +133 -0
- data/data/fulltext/data/german_compound/README +15 -0
- data/data/fulltext/data/german_compound/compound.pl +63 -0
- data/data/fulltext/data/german_compound/german.stop +20 -0
- data/data/fulltext/data/ispell-german-compound.tar.gz +0 -0
- data/data/fulltext/redist/dict_french/Makefile +12 -0
- data/data/fulltext/redist/dict_french/README.french +1 -0
- data/data/fulltext/redist/dict_french/dict_french.sql.in +7 -0
- data/data/fulltext/redist/dict_french/dict_snowball.c +56 -0
- data/data/fulltext/redist/dict_french/french_stem.c +1222 -0
- data/data/fulltext/redist/dict_french/french_stem.h +16 -0
- data/data/fulltext/redist/dict_french/subinclude.h +2 -0
- data/data/fulltext/redist/dict_german/Makefile +12 -0
- data/data/fulltext/redist/dict_german/README.german +1 -0
- data/data/fulltext/redist/dict_german/dict_german.sql.in +7 -0
- data/data/fulltext/redist/dict_german/dict_snowball.c +56 -0
- data/data/fulltext/redist/dict_german/german_stem.c +527 -0
- data/data/fulltext/redist/dict_german/german_stem.h +16 -0
- data/data/fulltext/redist/dict_german/subinclude.h +1 -0
- data/data/fulltext/redist/french_stem.c +1222 -0
- data/data/fulltext/redist/french_stem.h +16 -0
- data/data/fulltext/redist/german_stem.c +527 -0
- data/data/fulltext/redist/german_stem.h +16 -0
- data/lib/fixes/ruby19.rb +21 -0
- data/lib/fixes/selenium.rb +20 -0
- data/lib/fixes/singular.rb +8 -0
- data/lib/fixes/yaml.rb +13 -0
- data/lib/oddb.rb +11 -0
- data/lib/oddb/business/company.rb +18 -0
- data/lib/oddb/business/invoice.rb +75 -0
- data/lib/oddb/business/price.rb +60 -0
- data/lib/oddb/config.rb +73 -0
- data/lib/oddb/drugs.rb +16 -0
- data/lib/oddb/drugs/active_agent.rb +37 -0
- data/lib/oddb/drugs/atc.rb +53 -0
- data/lib/oddb/drugs/composition.rb +41 -0
- data/lib/oddb/drugs/ddd.rb +24 -0
- data/lib/oddb/drugs/dose.rb +107 -0
- data/lib/oddb/drugs/galenic_form.rb +21 -0
- data/lib/oddb/drugs/galenic_group.rb +17 -0
- data/lib/oddb/drugs/package.rb +87 -0
- data/lib/oddb/drugs/part.rb +56 -0
- data/lib/oddb/drugs/product.rb +25 -0
- data/lib/oddb/drugs/sequence.rb +61 -0
- data/lib/oddb/drugs/substance.rb +31 -0
- data/lib/oddb/drugs/substance_group.rb +13 -0
- data/lib/oddb/drugs/unit.rb +12 -0
- data/lib/oddb/export.rb +4 -0
- data/lib/oddb/export/csv.rb +89 -0
- data/lib/oddb/export/l10n_sessions.rb +30 -0
- data/lib/oddb/export/rss.rb +44 -0
- data/lib/oddb/export/server.rb +58 -0
- data/lib/oddb/export/xls.rb +119 -0
- data/lib/oddb/export/yaml.rb +123 -0
- data/lib/oddb/html/state/drugs/admin/package.rb +189 -0
- data/lib/oddb/html/state/drugs/admin/product.rb +56 -0
- data/lib/oddb/html/state/drugs/admin/sequence.rb +259 -0
- data/lib/oddb/html/state/drugs/ajax/explain_ddd_price.rb +19 -0
- data/lib/oddb/html/state/drugs/ajax/explain_price.rb +19 -0
- data/lib/oddb/html/state/drugs/ajax/global.rb +18 -0
- data/lib/oddb/html/state/drugs/ajax/package_infos.rb +19 -0
- data/lib/oddb/html/state/drugs/ajax/remote_infos.rb +19 -0
- data/lib/oddb/html/state/drugs/atc_browser.rb +39 -0
- data/lib/oddb/html/state/drugs/atc_guidelines.rb +21 -0
- data/lib/oddb/html/state/drugs/compare.rb +52 -0
- data/lib/oddb/html/state/drugs/download_export.rb +18 -0
- data/lib/oddb/html/state/drugs/fachinfo.rb +21 -0
- data/lib/oddb/html/state/drugs/feedback.rb +94 -0
- data/lib/oddb/html/state/drugs/global.rb +266 -0
- data/lib/oddb/html/state/drugs/init.rb +18 -0
- data/lib/oddb/html/state/drugs/login.rb +17 -0
- data/lib/oddb/html/state/drugs/package.rb +32 -0
- data/lib/oddb/html/state/drugs/patinfo.rb +21 -0
- data/lib/oddb/html/state/drugs/products.rb +51 -0
- data/lib/oddb/html/state/drugs/result.rb +125 -0
- data/lib/oddb/html/state/global.rb +165 -0
- data/lib/oddb/html/state/global_predefine.rb +17 -0
- data/lib/oddb/html/state/limit.rb +17 -0
- data/lib/oddb/html/state/login.rb +56 -0
- data/lib/oddb/html/state/paypal/checkout.rb +130 -0
- data/lib/oddb/html/state/paypal/collect.rb +46 -0
- data/lib/oddb/html/state/paypal/redirect.rb +18 -0
- data/lib/oddb/html/state/register_export.rb +38 -0
- data/lib/oddb/html/state/register_poweruser.rb +17 -0
- data/lib/oddb/html/state/viral/admin.rb +76 -0
- data/lib/oddb/html/state/viral/poweruser.rb +16 -0
- data/lib/oddb/html/util/annotated_list.rb +39 -0
- data/lib/oddb/html/util/know_it_all.rb +28 -0
- data/lib/oddb/html/util/known_user.rb +55 -0
- data/lib/oddb/html/util/lookandfeel.rb +554 -0
- data/lib/oddb/html/util/need_all_input.rb +29 -0
- data/lib/oddb/html/util/session.rb +88 -0
- data/lib/oddb/html/util/sort.rb +72 -0
- data/lib/oddb/html/util/unsaved_helper.rb +20 -0
- data/lib/oddb/html/util/validator.rb +54 -0
- data/lib/oddb/html/view/ajax/json.rb +22 -0
- data/lib/oddb/html/view/alpha_header.rb +28 -0
- data/lib/oddb/html/view/document.rb +126 -0
- data/lib/oddb/html/view/drugs/admin/package.rb +237 -0
- data/lib/oddb/html/view/drugs/admin/product.rb +104 -0
- data/lib/oddb/html/view/drugs/admin/sequence.rb +312 -0
- data/lib/oddb/html/view/drugs/ajax/explain_ddd_price.rb +87 -0
- data/lib/oddb/html/view/drugs/ajax/explain_price.rb +61 -0
- data/lib/oddb/html/view/drugs/ajax/package_infos.rb +105 -0
- data/lib/oddb/html/view/drugs/ajax/remote_infos.rb +44 -0
- data/lib/oddb/html/view/drugs/atc_browser.rb +68 -0
- data/lib/oddb/html/view/drugs/atc_guidelines.rb +94 -0
- data/lib/oddb/html/view/drugs/compare.rb +95 -0
- data/lib/oddb/html/view/drugs/download_export.rb +28 -0
- data/lib/oddb/html/view/drugs/fachinfo.rb +46 -0
- data/lib/oddb/html/view/drugs/feedback.rb +231 -0
- data/lib/oddb/html/view/drugs/init.rb +51 -0
- data/lib/oddb/html/view/drugs/legend.rb +24 -0
- data/lib/oddb/html/view/drugs/package.rb +398 -0
- data/lib/oddb/html/view/drugs/patinfo.rb +46 -0
- data/lib/oddb/html/view/drugs/products.rb +97 -0
- data/lib/oddb/html/view/drugs/result.rb +296 -0
- data/lib/oddb/html/view/drugs/search.rb +33 -0
- data/lib/oddb/html/view/drugs/template.rb +15 -0
- data/lib/oddb/html/view/foot.rb +52 -0
- data/lib/oddb/html/view/google.rb +23 -0
- data/lib/oddb/html/view/google_ads.rb +40 -0
- data/lib/oddb/html/view/head.rb +78 -0
- data/lib/oddb/html/view/limit.rb +109 -0
- data/lib/oddb/html/view/list.rb +59 -0
- data/lib/oddb/html/view/login.rb +38 -0
- data/lib/oddb/html/view/navigation.rb +67 -0
- data/lib/oddb/html/view/offset_header.rb +35 -0
- data/lib/oddb/html/view/paypal/collect.rb +84 -0
- data/lib/oddb/html/view/paypal/redirect.rb +51 -0
- data/lib/oddb/html/view/paypal/register_form.rb +106 -0
- data/lib/oddb/html/view/register_export.rb +29 -0
- data/lib/oddb/html/view/register_poweruser.rb +29 -0
- data/lib/oddb/html/view/rss/feedback.rb +64 -0
- data/lib/oddb/html/view/rss_preview.rb +54 -0
- data/lib/oddb/html/view/search.rb +104 -0
- data/lib/oddb/html/view/snapback.rb +24 -0
- data/lib/oddb/html/view/template.rb +56 -0
- data/lib/oddb/import/excel.rb +45 -0
- data/lib/oddb/import/import.rb +39 -0
- data/lib/oddb/import/rtf.rb +410 -0
- data/lib/oddb/import/whocc.rb +173 -0
- data/lib/oddb/import/xml.rb +15 -0
- data/lib/oddb/model.rb +179 -0
- data/lib/oddb/persistence/odba.rb +33 -0
- data/lib/oddb/persistence/odba/business/company.rb +13 -0
- data/lib/oddb/persistence/odba/business/invoice.rb +15 -0
- data/lib/oddb/persistence/odba/drugs/atc.rb +15 -0
- data/lib/oddb/persistence/odba/drugs/galenic_form.rb +18 -0
- data/lib/oddb/persistence/odba/drugs/galenic_group.rb +13 -0
- data/lib/oddb/persistence/odba/drugs/package.rb +25 -0
- data/lib/oddb/persistence/odba/drugs/product.rb +13 -0
- data/lib/oddb/persistence/odba/drugs/sequence.rb +21 -0
- data/lib/oddb/persistence/odba/drugs/substance.rb +21 -0
- data/lib/oddb/persistence/odba/drugs/substance_group.rb +13 -0
- data/lib/oddb/persistence/odba/drugs/unit.rb +13 -0
- data/lib/oddb/persistence/odba/export.rb +26 -0
- data/lib/oddb/persistence/odba/model.rb +68 -0
- data/lib/oddb/persistence/odba/regulatory/authority.rb +13 -0
- data/lib/oddb/persistence/odba/regulatory/registration.rb +13 -0
- data/lib/oddb/persistence/odba/text/document.rb +11 -0
- data/lib/oddb/persistence/odba/util/code.rb +11 -0
- data/lib/oddb/persistence/odba/util/m10l_document.rb +13 -0
- data/lib/oddb/persistence/og.rb +16 -0
- data/lib/oddb/persistence/og/drugs/composition.rb +14 -0
- data/lib/oddb/persistence/og/drugs/product.rb +14 -0
- data/lib/oddb/persistence/og/drugs/sequence.rb +15 -0
- data/lib/oddb/persistence/og/model.rb +25 -0
- data/lib/oddb/persistence/og/util/multilingual.rb +13 -0
- data/lib/oddb/redist/rtf_tools/reader.rb +139 -0
- data/lib/oddb/regulatory/authority.rb +14 -0
- data/lib/oddb/regulatory/registration.rb +15 -0
- data/lib/oddb/remote/business/company.rb +23 -0
- data/lib/oddb/remote/drugs/active_agent.rb +27 -0
- data/lib/oddb/remote/drugs/atc.rb +32 -0
- data/lib/oddb/remote/drugs/dose.rb +8 -0
- data/lib/oddb/remote/drugs/galenic_form.rb +25 -0
- data/lib/oddb/remote/drugs/package.rb +126 -0
- data/lib/oddb/remote/drugs/part.rb +30 -0
- data/lib/oddb/remote/drugs/product.rb +19 -0
- data/lib/oddb/remote/drugs/sequence.rb +46 -0
- data/lib/oddb/remote/drugs/substance.rb +20 -0
- data/lib/oddb/remote/drugs/unit.rb +19 -0
- data/lib/oddb/remote/object.rb +36 -0
- data/lib/oddb/remote/text/document.rb +20 -0
- data/lib/oddb/remote/util/m10l_document.rb +22 -0
- data/lib/oddb/text/chapter.rb +27 -0
- data/lib/oddb/text/document.rb +43 -0
- data/lib/oddb/text/format.rb +37 -0
- data/lib/oddb/text/paragraph.rb +58 -0
- data/lib/oddb/text/picture.rb +93 -0
- data/lib/oddb/text/table.rb +68 -0
- data/lib/oddb/util.rb +8 -0
- data/lib/oddb/util/annotated_list.rb +37 -0
- data/lib/oddb/util/code.rb +69 -0
- data/lib/oddb/util/comparison.rb +36 -0
- data/lib/oddb/util/exporter.rb +8 -0
- data/lib/oddb/util/feedback.rb +23 -0
- data/lib/oddb/util/ipn.rb +48 -0
- data/lib/oddb/util/m10l_document.rb +38 -0
- data/lib/oddb/util/mail.rb +73 -0
- data/lib/oddb/util/money.rb +60 -0
- data/lib/oddb/util/multilingual.rb +70 -0
- data/lib/oddb/util/quanty.rb +4 -0
- data/lib/oddb/util/quanty/fact.rb +229 -0
- data/lib/oddb/util/quanty/main.rb +160 -0
- data/lib/oddb/util/quanty/parse.rb +853 -0
- data/lib/oddb/util/quanty/units.dump +0 -0
- data/lib/oddb/util/server.rb +117 -0
- data/lib/oddb/util/updater.rb +41 -0
- data/lib/oddb/util/ydim.rb +110 -0
- data/lib/oddb/util/yus.rb +46 -0
- data/test/business/test_company.rb +29 -0
- data/test/business/test_price.rb +46 -0
- data/test/drugs/test_active_agent.rb +53 -0
- data/test/drugs/test_atc.rb +54 -0
- data/test/drugs/test_composition.rb +88 -0
- data/test/drugs/test_ddd.rb +22 -0
- data/test/drugs/test_dose.rb +190 -0
- data/test/drugs/test_galenic_form.rb +41 -0
- data/test/drugs/test_package.rb +173 -0
- data/test/drugs/test_part.rb +32 -0
- data/test/drugs/test_product.rb +31 -0
- data/test/drugs/test_sequence.rb +140 -0
- data/test/drugs/test_substance.rb +51 -0
- data/test/drugs/test_substance_group.rb +27 -0
- data/test/export/test_rss.rb +94 -0
- data/test/export/test_server.rb +117 -0
- data/test/export/test_xls.rb +152 -0
- data/test/export/test_yaml.rb +120 -0
- data/test/import/data/html/whocc/A.html +56 -0
- data/test/import/data/html/whocc/A03.html +48 -0
- data/test/import/data/html/whocc/A03AB.html +48 -0
- data/test/import/data/html/whocc/A06AA.html +47 -0
- data/test/import/data/html/whocc/C03.html +47 -0
- data/test/import/data/html/whocc/login.html +77 -0
- data/test/import/data/xml/ATC_2006.xml +47 -0
- data/test/import/data/xml/ATC_2006_ddd.xml +35 -0
- data/test/import/test_excel.rb +34 -0
- data/test/import/test_rtf.rb +40 -0
- data/test/import/test_whocc.rb +315 -0
- data/test/remote/drugs/test_active_agent.rb +36 -0
- data/test/selenium/selenium-server.jar +0 -0
- data/test/selenium/test_atc_browser.rb +122 -0
- data/test/selenium/test_atc_guidelines.rb +96 -0
- data/test/selenium/test_collect.rb +138 -0
- data/test/selenium/test_compare.rb +206 -0
- data/test/selenium/test_fachinfo.rb +130 -0
- data/test/selenium/test_feedback.rb +196 -0
- data/test/selenium/test_init.rb +52 -0
- data/test/selenium/test_limit.rb +305 -0
- data/test/selenium/test_login.rb +67 -0
- data/test/selenium/test_package.rb +512 -0
- data/test/selenium/test_patinfo.rb +131 -0
- data/test/selenium/test_product.rb +80 -0
- data/test/selenium/test_products.rb +142 -0
- data/test/selenium/test_search.rb +715 -0
- data/test/selenium/test_sequence.rb +543 -0
- data/test/selenium/unit.rb +185 -0
- data/test/stub/http_server.rb +169 -0
- data/test/stub/model.rb +173 -0
- data/test/suite.rb +15 -0
- data/test/test_model.rb +83 -0
- data/test/util/test_code.rb +74 -0
- data/test/util/test_ipn.rb +117 -0
- data/test/util/test_mail.rb +86 -0
- data/test/util/test_multilingual.rb +97 -0
- data/test/util/test_server.rb +48 -0
- data/test/util/test_updater.rb +353 -0
- data/test/util/test_ydim.rb +115 -0
- data/test/util/test_yus.rb +79 -0
- metadata +418 -0
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# Selenium::TestLogin -- de.oddb.org -- 23.01.2007 -- hwyss@ywesee.com
|
|
3
|
+
|
|
4
|
+
$: << File.expand_path('..', File.dirname(__FILE__))
|
|
5
|
+
|
|
6
|
+
require 'selenium/unit'
|
|
7
|
+
require 'stub/model'
|
|
8
|
+
require 'oddb/config'
|
|
9
|
+
|
|
10
|
+
module ODDB
|
|
11
|
+
module Selenium
|
|
12
|
+
class TestLogin < Test::Unit::TestCase
|
|
13
|
+
include Selenium::TestCase
|
|
14
|
+
def test_login
|
|
15
|
+
open "/"
|
|
16
|
+
assert_equal "CH - ODDB.org | Medikamente | Home | Open Drug Database", @selenium.get_title
|
|
17
|
+
click "link=Anmelden"
|
|
18
|
+
wait_for_page_to_load 30
|
|
19
|
+
assert_equal "CH - ODDB.org | Medikamente | Anmelden | Open Drug Database", @selenium.get_title
|
|
20
|
+
assert_equal "E-Mail", get_text("//label[@for='email']")
|
|
21
|
+
assert is_element_present("email")
|
|
22
|
+
assert_equal "Passwort", get_text("//label[@for='pass']")
|
|
23
|
+
assert is_element_present("pass")
|
|
24
|
+
assert_match Regexp.new(ODDB.config.http_server),
|
|
25
|
+
get_attribute("//form[@name='login']@action")
|
|
26
|
+
assert is_element_present("//input[@name='login_']")
|
|
27
|
+
end
|
|
28
|
+
def test_login__fail_unknown_user
|
|
29
|
+
open "/"
|
|
30
|
+
click "link=Anmelden"
|
|
31
|
+
wait_for_page_to_load 30
|
|
32
|
+
@auth.should_receive(:login).and_return { raise Yus::UnknownEntityError }
|
|
33
|
+
type "email", "unknown@bbmb.ch"
|
|
34
|
+
type "pass", "secret"
|
|
35
|
+
click "//input[@type='submit']"
|
|
36
|
+
wait_for_page_to_load 30
|
|
37
|
+
assert_equal "CH - ODDB.org | Medikamente | Anmelden | Open Drug Database", @selenium.get_title
|
|
38
|
+
assert_equal "error", get_attribute("//label[@for='email']@class")
|
|
39
|
+
end
|
|
40
|
+
def test_login__fail_wrong_password
|
|
41
|
+
open "/"
|
|
42
|
+
click "link=Anmelden"
|
|
43
|
+
wait_for_page_to_load 30
|
|
44
|
+
@auth.should_receive(:login).and_return { raise Yus::AuthenticationError }
|
|
45
|
+
type "email", "unknown@bbmb.ch"
|
|
46
|
+
type "pass", "secret"
|
|
47
|
+
click "//input[@type='submit']"
|
|
48
|
+
wait_for_page_to_load 30
|
|
49
|
+
assert_equal "CH - ODDB.org | Medikamente | Anmelden | Open Drug Database", @selenium.get_title
|
|
50
|
+
assert_equal "error", get_attribute("//label[@for='pass']@class")
|
|
51
|
+
end
|
|
52
|
+
def test_login__success
|
|
53
|
+
user = login_admin
|
|
54
|
+
assert_equal "CH - ODDB.org | Medikamente | Home | Open Drug Database", @selenium.get_title
|
|
55
|
+
end
|
|
56
|
+
def test_logout
|
|
57
|
+
user = login_admin
|
|
58
|
+
assert_equal "CH - ODDB.org | Medikamente | Home | Open Drug Database", @selenium.get_title
|
|
59
|
+
@auth.should_receive(:logout).and_return { assert true }
|
|
60
|
+
click "link=Abmelden"
|
|
61
|
+
wait_for_page_to_load 30
|
|
62
|
+
assert_equal "CH - ODDB.org | Medikamente | Home | Open Drug Database", @selenium.get_title
|
|
63
|
+
assert !is_text_present('Abmelden')
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
@@ -0,0 +1,512 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# encoding: utf-8
|
|
3
|
+
# Selenium::TestPackage -- de.oddb.org -- 21.11.2006 -- hwyss@ywesee.com
|
|
4
|
+
|
|
5
|
+
$: << File.expand_path('..', File.dirname(__FILE__))
|
|
6
|
+
|
|
7
|
+
require 'selenium/unit'
|
|
8
|
+
require 'stub/model'
|
|
9
|
+
require 'oddb/drugs'
|
|
10
|
+
require 'oddb/util'
|
|
11
|
+
|
|
12
|
+
module ODDB
|
|
13
|
+
module Selenium
|
|
14
|
+
class TestPackage < Test::Unit::TestCase
|
|
15
|
+
include Selenium::TestCase
|
|
16
|
+
def setup_package(pzn='12345')
|
|
17
|
+
product = Drugs::Product.new
|
|
18
|
+
company = Business::Company.new
|
|
19
|
+
company.name.de = 'Producer AG'
|
|
20
|
+
product.company = company
|
|
21
|
+
company.save
|
|
22
|
+
sequence = Drugs::Sequence.new
|
|
23
|
+
sequence.atc = Drugs::Atc.new('N04BB01')
|
|
24
|
+
sequence.atc.name.de = 'Amantadin'
|
|
25
|
+
ddd = Drugs::Ddd.new('O')
|
|
26
|
+
ddd.dose = Drugs::Dose.new(5, 'mg')
|
|
27
|
+
sequence.atc.add_ddd(ddd)
|
|
28
|
+
sequence.product = product
|
|
29
|
+
composition = Drugs::Composition.new
|
|
30
|
+
composition.equivalence_factor = '44.6'
|
|
31
|
+
sequence.add_composition(composition)
|
|
32
|
+
substance = Drugs::Substance.new
|
|
33
|
+
substance.name.de = "Amantadin"
|
|
34
|
+
dose = Drugs::Dose.new(100, 'mg')
|
|
35
|
+
active_agent = Drugs::ActiveAgent.new(substance, dose)
|
|
36
|
+
composition.add_active_agent(active_agent)
|
|
37
|
+
package = Drugs::Package.new
|
|
38
|
+
code = Util::Code.new(:festbetragsstufe, 3, 'CH')
|
|
39
|
+
package.add_code(code)
|
|
40
|
+
code = Util::Code.new(:zuzahlungsbefreit, true, 'CH')
|
|
41
|
+
package.add_code(code)
|
|
42
|
+
code = Util::Code.new(:prescription, true, 'CH')
|
|
43
|
+
package.add_code(code)
|
|
44
|
+
code = Util::Code.new(:cid, pzn, 'CH')
|
|
45
|
+
package.add_code(code)
|
|
46
|
+
part = Drugs::Part.new
|
|
47
|
+
part.composition = composition
|
|
48
|
+
part.package = package
|
|
49
|
+
part.size = 5
|
|
50
|
+
unit = Drugs::Unit.new
|
|
51
|
+
unit.name.de = 'Ampullen'
|
|
52
|
+
part.unit = unit
|
|
53
|
+
part.quantity = Drugs::Dose.new(20, 'ml')
|
|
54
|
+
package.name.de = 'Amantadin by Producer'
|
|
55
|
+
package.sequence = sequence
|
|
56
|
+
package.add_price(Business::Price.new(:public, 'CH', 6))
|
|
57
|
+
package.add_price(Business::Price.new(:festbetrag, 'CH', 10))
|
|
58
|
+
package.save
|
|
59
|
+
package
|
|
60
|
+
end
|
|
61
|
+
def test_package
|
|
62
|
+
package = setup_package
|
|
63
|
+
open "/de/drugs/package/cid/12345"
|
|
64
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
65
|
+
assert is_text_present('Amantadin by Producer - Producer AG')
|
|
66
|
+
assert is_text_present('12345')
|
|
67
|
+
assert !is_text_present('54321')
|
|
68
|
+
assert is_text_present('N04BB01 ( Amantadin )')
|
|
69
|
+
assert is_text_present('Packungsgrösse und Wirkstoffe')
|
|
70
|
+
assert is_text_present('5 Ampullen à 20 ml')
|
|
71
|
+
assert is_text_present('100 mg')
|
|
72
|
+
assert is_text_present('Ja')
|
|
73
|
+
assert !is_text_present('Nein')
|
|
74
|
+
package.code(:zuzahlungsbefreit).value = false
|
|
75
|
+
refresh
|
|
76
|
+
wait_for_page_to_load 30
|
|
77
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
78
|
+
assert_equal "6.00", get_text('//tr[4]/td[2]')
|
|
79
|
+
assert_equal "10.00", get_text('//tr[4]/td[4]')
|
|
80
|
+
assert_equal "3", get_text('//tr[5]/td[2]')
|
|
81
|
+
assert_equal "Nein", get_text('//tr[6]/td[2]')
|
|
82
|
+
assert_equal "", get_text('//tr[6]/td[4]')
|
|
83
|
+
assert_equal "Ja", get_text('//tr[7]/td[2]')
|
|
84
|
+
assert_equal "44.6", get_text('//tr[7]/td[4]')
|
|
85
|
+
|
|
86
|
+
package2 = setup_package('54321')
|
|
87
|
+
open "/de/drugs/package/cid/54321"
|
|
88
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database",
|
|
89
|
+
get_title
|
|
90
|
+
assert is_text_present('Amantadin by Producer - Producer AG')
|
|
91
|
+
assert is_text_present('Ja')
|
|
92
|
+
assert !is_text_present('Nein')
|
|
93
|
+
assert is_text_present('54321')
|
|
94
|
+
assert !is_text_present('12345')
|
|
95
|
+
end
|
|
96
|
+
def test_package__search
|
|
97
|
+
setup_package
|
|
98
|
+
open "/de/drugs/package/cid/12345"
|
|
99
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
100
|
+
type "query", "Amantadin"
|
|
101
|
+
select "dstype", "Preisvergleich"
|
|
102
|
+
wait_for_page_to_load 30
|
|
103
|
+
assert_equal "CH - ODDB.org | Medikamente | Suchen | Amantadin | Preisvergleich | Open Drug Database",
|
|
104
|
+
get_title
|
|
105
|
+
end
|
|
106
|
+
def test_package__limited
|
|
107
|
+
ODDB.config.query_limit = 1
|
|
108
|
+
package = setup_package
|
|
109
|
+
open "/de/drugs/package/cid/12345"
|
|
110
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
111
|
+
open "/de/drugs/package/cid/12345"
|
|
112
|
+
assert_equal 'CH - ODDB.org | Medikamente | Open Drug Database',
|
|
113
|
+
get_title
|
|
114
|
+
assert is_text_present("Abfragebeschränkung")
|
|
115
|
+
ensure
|
|
116
|
+
ODDB.config.query_limit = 20
|
|
117
|
+
end
|
|
118
|
+
end
|
|
119
|
+
class TestAdminPackage < Test::Unit::TestCase
|
|
120
|
+
include Selenium::TestCase
|
|
121
|
+
def setup
|
|
122
|
+
Drugs::Part.instances.clear
|
|
123
|
+
Drugs::Package.instances.clear
|
|
124
|
+
Drugs::ActiveAgent.instances.clear
|
|
125
|
+
Drugs::Composition.instances.clear
|
|
126
|
+
Drugs::Sequence.instances.clear
|
|
127
|
+
Drugs::Product.instances.clear
|
|
128
|
+
Business::Company.instances.clear
|
|
129
|
+
super
|
|
130
|
+
end
|
|
131
|
+
def setup_package(pzn='12345')
|
|
132
|
+
product = Drugs::Product.new
|
|
133
|
+
company = Business::Company.new
|
|
134
|
+
company.name.de = 'Producer AG'
|
|
135
|
+
product.company = company
|
|
136
|
+
company.save
|
|
137
|
+
sequence = Drugs::Sequence.new
|
|
138
|
+
sequence.atc = Drugs::Atc.new('N04BB01')
|
|
139
|
+
sequence.atc.name.de = 'Amantadin'
|
|
140
|
+
ddd = Drugs::Ddd.new('O')
|
|
141
|
+
ddd.dose = Drugs::Dose.new(5, 'mg')
|
|
142
|
+
sequence.atc.add_ddd(ddd)
|
|
143
|
+
sequence.product = product
|
|
144
|
+
composition = Drugs::Composition.new
|
|
145
|
+
composition.equivalence_factor = '44.6'
|
|
146
|
+
sequence.add_composition(composition)
|
|
147
|
+
substance = Drugs::Substance.new
|
|
148
|
+
substance.name.de = "Amantadin"
|
|
149
|
+
dose = Drugs::Dose.new(100, 'mg')
|
|
150
|
+
active_agent = Drugs::ActiveAgent.new(substance, dose)
|
|
151
|
+
composition.add_active_agent(active_agent)
|
|
152
|
+
package = Drugs::Package.new
|
|
153
|
+
code = Util::Code.new(:festbetragsstufe, 3, 'CH')
|
|
154
|
+
package.add_code(code)
|
|
155
|
+
code = Util::Code.new(:zuzahlungsbefreit, true, 'CH')
|
|
156
|
+
package.add_code(code)
|
|
157
|
+
code = Util::Code.new(:prescription, true, 'CH')
|
|
158
|
+
package.add_code(code)
|
|
159
|
+
code = Util::Code.new(:cid, pzn, 'CH')
|
|
160
|
+
package.add_code(code)
|
|
161
|
+
part = Drugs::Part.new
|
|
162
|
+
part.composition = composition
|
|
163
|
+
part.package = package
|
|
164
|
+
part.size = 5
|
|
165
|
+
unit = Drugs::Unit.new
|
|
166
|
+
unit.name.de = 'Ampullen'
|
|
167
|
+
part.unit = unit
|
|
168
|
+
part.quantity = Drugs::Dose.new(20, 'ml')
|
|
169
|
+
package.name.de = 'Amantadin by Producer'
|
|
170
|
+
package.sequence = sequence
|
|
171
|
+
package.add_price(Business::Price.new(:public, 'CH', 6))
|
|
172
|
+
package.add_price(Business::Price.new(:festbetrag, 'CH', 10))
|
|
173
|
+
package.save
|
|
174
|
+
package
|
|
175
|
+
end
|
|
176
|
+
def test_admin_package
|
|
177
|
+
package = setup_package
|
|
178
|
+
user = login_admin
|
|
179
|
+
open "/de/drugs/package/cid/12345"
|
|
180
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
181
|
+
assert is_element_present("name")
|
|
182
|
+
assert is_element_present("code_cid")
|
|
183
|
+
assert is_element_present("price_public")
|
|
184
|
+
assert is_element_present("price_festbetrag")
|
|
185
|
+
assert is_element_present("code_festbetragsstufe")
|
|
186
|
+
assert is_element_present("code_festbetragsgruppe")
|
|
187
|
+
assert is_element_present("code_zuzahlungsbefreit")
|
|
188
|
+
assert is_element_present("sequence")
|
|
189
|
+
assert is_element_present("code_prescription")
|
|
190
|
+
assert is_element_present("update")
|
|
191
|
+
assert is_element_present("delete")
|
|
192
|
+
|
|
193
|
+
assert_equal "Amantadin by Producer", get_value("name")
|
|
194
|
+
assert_equal "12345", get_value("code_cid")
|
|
195
|
+
assert_equal "6.00", get_value("price_public")
|
|
196
|
+
assert_equal "10.00", get_value("price_festbetrag")
|
|
197
|
+
assert_equal "3", get_value("code_festbetragsstufe")
|
|
198
|
+
assert_equal "", get_value("code_festbetragsgruppe")
|
|
199
|
+
assert is_checked("code_zuzahlungsbefreit")
|
|
200
|
+
assert is_checked("code_prescription")
|
|
201
|
+
assert_equal "Amantadin 100 mg",
|
|
202
|
+
get_selected_label("//select[@name='sequence']")
|
|
203
|
+
|
|
204
|
+
assert !is_element_present("link=-")
|
|
205
|
+
assert is_element_present("multi[0]")
|
|
206
|
+
assert is_element_present("size[0]")
|
|
207
|
+
assert is_element_present("unit[0]")
|
|
208
|
+
assert is_element_present("quantity[0]")
|
|
209
|
+
assert is_element_present("composition[0]")
|
|
210
|
+
assert is_element_present("link=+")
|
|
211
|
+
|
|
212
|
+
assert_equal "5", get_value("size[0]")
|
|
213
|
+
assert_equal "Ampullen", get_value("unit[0]")
|
|
214
|
+
assert_equal "20 ml", get_value("quantity[0]")
|
|
215
|
+
assert_equal "Amantadin 100 mg",
|
|
216
|
+
get_selected_label("//select[@name='composition[0]']")
|
|
217
|
+
end
|
|
218
|
+
def test_admin_package__update__error
|
|
219
|
+
package = setup_package
|
|
220
|
+
other = setup_package('54321')
|
|
221
|
+
user = login_admin
|
|
222
|
+
open "/de/drugs/package/cid/12345"
|
|
223
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
224
|
+
|
|
225
|
+
type "name", ""
|
|
226
|
+
type "code_cid", "54321"
|
|
227
|
+
type "price_public", ""
|
|
228
|
+
type "price_festbetrag", ""
|
|
229
|
+
type "code_festbetragsstufe", ""
|
|
230
|
+
type "code_festbetragsgruppe", ""
|
|
231
|
+
#assert is_element_present("sequence")
|
|
232
|
+
click "code_prescription"
|
|
233
|
+
click "update"
|
|
234
|
+
|
|
235
|
+
wait_for_page_to_load 30
|
|
236
|
+
|
|
237
|
+
assert is_text_present("Bitte geben Sie einen Namen an.")
|
|
238
|
+
assert is_text_present("Der Swissmedic-Code '54321' (Amantadin by Producer) ist bereits vergeben.")
|
|
239
|
+
assert_equal "Amantadin by Producer", get_value("name")
|
|
240
|
+
assert_equal "12345", get_value("code_cid")
|
|
241
|
+
assert_equal "", get_value("price_public")
|
|
242
|
+
assert_equal "", get_value("price_festbetrag")
|
|
243
|
+
assert_equal "", get_value("code_festbetragsstufe")
|
|
244
|
+
assert_equal "", get_value("code_festbetragsgruppe")
|
|
245
|
+
assert is_checked("code_zuzahlungsbefreit")
|
|
246
|
+
assert !is_checked("code_prescription")
|
|
247
|
+
#assert_equal "Amantadin 100 mg",
|
|
248
|
+
# get_selected_label("//select[@name='sequence']")
|
|
249
|
+
|
|
250
|
+
assert_equal "Amantadin by Producer", package.name.de
|
|
251
|
+
assert_equal '12345', package.code(:cid).value
|
|
252
|
+
assert_equal nil, package.price(:public)
|
|
253
|
+
assert_equal nil, package.price(:festbetrag)
|
|
254
|
+
assert_equal nil, package.code(:festbetragsstufe).value
|
|
255
|
+
assert_equal nil, package.code(:festbetragsgruppe).value
|
|
256
|
+
assert_equal true, package.code(:zuzahlungsbefreit).value
|
|
257
|
+
assert_equal false, package.code(:prescription).value
|
|
258
|
+
end
|
|
259
|
+
def test_admin_package__update__success
|
|
260
|
+
package = setup_package
|
|
261
|
+
user = login_admin
|
|
262
|
+
open "/de/drugs/package/cid/12345"
|
|
263
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
264
|
+
|
|
265
|
+
type "name", "Modified Name"
|
|
266
|
+
type "code_cid", "54321"
|
|
267
|
+
type "price_public", "12"
|
|
268
|
+
type "price_festbetrag", "9"
|
|
269
|
+
type "code_festbetragsstufe", "1"
|
|
270
|
+
type "code_festbetragsgruppe", "2"
|
|
271
|
+
click "code_zuzahlungsbefreit"
|
|
272
|
+
#assert is_element_present("sequence")
|
|
273
|
+
click "code_prescription"
|
|
274
|
+
click "update"
|
|
275
|
+
|
|
276
|
+
wait_for_page_to_load 30
|
|
277
|
+
|
|
278
|
+
assert_equal "Modified Name", get_value("name")
|
|
279
|
+
assert_equal "54321", get_value("code_cid")
|
|
280
|
+
assert_equal "12.00", get_value("price_public")
|
|
281
|
+
assert_equal "9.00", get_value("price_festbetrag")
|
|
282
|
+
assert_equal "1", get_value("code_festbetragsstufe")
|
|
283
|
+
assert_equal "2", get_value("code_festbetragsgruppe")
|
|
284
|
+
assert !is_checked("code_zuzahlungsbefreit")
|
|
285
|
+
assert !is_checked("code_prescription")
|
|
286
|
+
#assert_equal "Amantadin 100 mg",
|
|
287
|
+
# get_selected_label("//select[@name='sequence']")
|
|
288
|
+
|
|
289
|
+
assert_equal "Modified Name", package.name.de
|
|
290
|
+
assert_equal '54321', package.code(:cid).value
|
|
291
|
+
assert_equal 12, package.price(:public)
|
|
292
|
+
assert_equal 9, package.price(:festbetrag)
|
|
293
|
+
assert_equal "1", package.code(:festbetragsstufe).value
|
|
294
|
+
assert_equal "2", package.code(:festbetragsgruppe).value
|
|
295
|
+
assert_equal false, package.code(:zuzahlungsbefreit).value
|
|
296
|
+
assert_equal false, package.code(:prescription).value
|
|
297
|
+
end
|
|
298
|
+
def test_admin_package__delete
|
|
299
|
+
package = setup_package
|
|
300
|
+
user = login_admin
|
|
301
|
+
open "/de/drugs/package/cid/12345"
|
|
302
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
303
|
+
|
|
304
|
+
click "link=Sequenz"
|
|
305
|
+
wait_for_page_to_load 30
|
|
306
|
+
link_loc = "link=12345"
|
|
307
|
+
assert_equal "CH - ODDB.org | Medikamente | Sequenz | #{package.sequence.uid} | Open Drug Database", get_title
|
|
308
|
+
assert is_element_present(link_loc)
|
|
309
|
+
click link_loc
|
|
310
|
+
wait_for_page_to_load 30
|
|
311
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
312
|
+
|
|
313
|
+
click "delete"
|
|
314
|
+
assert_equal "Wollen Sie diese Packung wirklich löschen?", get_confirmation
|
|
315
|
+
|
|
316
|
+
wait_for_page_to_load 30
|
|
317
|
+
|
|
318
|
+
assert_equal "CH - ODDB.org | Medikamente | Sequenz | #{package.sequence.uid} | Open Drug Database", get_title
|
|
319
|
+
assert !is_element_present(link_loc)
|
|
320
|
+
end
|
|
321
|
+
def test_admin_package__parts
|
|
322
|
+
package = setup_package
|
|
323
|
+
unit = ODDB::Drugs::Unit.new
|
|
324
|
+
unit.name.de = "Fertigspritzen"
|
|
325
|
+
unit.save
|
|
326
|
+
user = login_admin
|
|
327
|
+
open "/de/drugs/package/cid/12345"
|
|
328
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
329
|
+
assert is_element_present("link=+")
|
|
330
|
+
assert !is_element_present("link=-")
|
|
331
|
+
|
|
332
|
+
click "link=+"
|
|
333
|
+
sleep(0.5)
|
|
334
|
+
assert !is_element_present("link=+")
|
|
335
|
+
assert is_element_present("link=-")
|
|
336
|
+
assert is_element_present("multi[1]")
|
|
337
|
+
assert is_element_present("size[1]")
|
|
338
|
+
assert is_element_present("unit[1]")
|
|
339
|
+
assert is_element_present("quantity[1]")
|
|
340
|
+
assert is_element_present("composition[1]")
|
|
341
|
+
refresh
|
|
342
|
+
wait_for_page_to_load 30
|
|
343
|
+
|
|
344
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
345
|
+
assert is_element_present("link=+")
|
|
346
|
+
assert !is_element_present("link=-")
|
|
347
|
+
assert !is_element_present("multi[1]")
|
|
348
|
+
assert !is_element_present("size[1]")
|
|
349
|
+
assert !is_element_present("unit[1]")
|
|
350
|
+
assert !is_element_present("quantity[1]")
|
|
351
|
+
assert !is_element_present("composition[1]")
|
|
352
|
+
|
|
353
|
+
click "link=+"
|
|
354
|
+
sleep(0.5)
|
|
355
|
+
type "multi[1]", "10"
|
|
356
|
+
type "size[1]", "5"
|
|
357
|
+
type "unit[1]", "Fertigspritzen"
|
|
358
|
+
type "quantity[1]", "20ml"
|
|
359
|
+
|
|
360
|
+
click "update"
|
|
361
|
+
wait_for_page_to_load 30
|
|
362
|
+
|
|
363
|
+
assert_equal 2, package.parts.size
|
|
364
|
+
part = package.parts.last
|
|
365
|
+
assert_equal 10, part.multi
|
|
366
|
+
assert_equal 5, part.size
|
|
367
|
+
assert_equal unit, part.unit
|
|
368
|
+
assert_equal ODDB::Drugs::Dose.new(20, 'ml'), part.quantity
|
|
369
|
+
|
|
370
|
+
assert is_element_present("link=+")
|
|
371
|
+
assert is_element_present("link=-")
|
|
372
|
+
assert is_element_present("multi[1]")
|
|
373
|
+
assert is_element_present("size[1]")
|
|
374
|
+
assert is_element_present("unit[1]")
|
|
375
|
+
assert is_element_present("quantity[1]")
|
|
376
|
+
assert is_element_present("composition[1]")
|
|
377
|
+
assert_equal "10", get_value("multi[1]")
|
|
378
|
+
assert_equal "5", get_value("size[1]")
|
|
379
|
+
assert_equal "Fertigspritzen", get_value("unit[1]")
|
|
380
|
+
assert_equal "20 ml", get_value("quantity[1]")
|
|
381
|
+
|
|
382
|
+
click "link=+"
|
|
383
|
+
sleep(0.5)
|
|
384
|
+
assert is_element_present("multi[2]")
|
|
385
|
+
click "//table[@id='parts']//tr[3]//td[1]//a"
|
|
386
|
+
sleep(0.5)
|
|
387
|
+
assert is_element_present("link=+")
|
|
388
|
+
assert !is_element_present("multi[2]")
|
|
389
|
+
|
|
390
|
+
click "//table[@id='parts']//tr[2]//td[1]//a"
|
|
391
|
+
sleep(0.5)
|
|
392
|
+
assert !is_element_present("multi[1]")
|
|
393
|
+
assert_equal 1, package.parts.size
|
|
394
|
+
end
|
|
395
|
+
def test_admin_package__not_limited
|
|
396
|
+
ODDB.config.query_limit = 1
|
|
397
|
+
package = setup_package
|
|
398
|
+
user = login_admin
|
|
399
|
+
2.times {
|
|
400
|
+
open "/de/drugs/package/cid/12345"
|
|
401
|
+
assert_equal "CH - ODDB.org | Medikamente | Details | Amantadin by Producer | Open Drug Database", get_title
|
|
402
|
+
assert is_element_present("name")
|
|
403
|
+
assert is_element_present("code_cid")
|
|
404
|
+
assert is_element_present("price_public")
|
|
405
|
+
assert is_element_present("price_festbetrag")
|
|
406
|
+
assert is_element_present("code_festbetragsstufe")
|
|
407
|
+
assert is_element_present("code_festbetragsgruppe")
|
|
408
|
+
assert is_element_present("code_zuzahlungsbefreit")
|
|
409
|
+
assert is_element_present("code_prescription")
|
|
410
|
+
}
|
|
411
|
+
ensure
|
|
412
|
+
ODDB.config.query_limit = 20
|
|
413
|
+
end
|
|
414
|
+
def test_admin_new_package__success
|
|
415
|
+
package = setup_package
|
|
416
|
+
user = login_admin
|
|
417
|
+
uid = package.sequence.uid
|
|
418
|
+
open "/de/drugs/sequence/uid/#{uid}"
|
|
419
|
+
assert_equal "CH - ODDB.org | Medikamente | Sequenz | #{uid} | Open Drug Database", get_title
|
|
420
|
+
|
|
421
|
+
click "new_package"
|
|
422
|
+
wait_for_page_to_load 30
|
|
423
|
+
assert_equal "CH - ODDB.org | Medikamente | Neue Packung | Open Drug Database", get_title
|
|
424
|
+
|
|
425
|
+
type "name", "New Package"
|
|
426
|
+
type "code_cid", "12346"
|
|
427
|
+
type "price_public", "12"
|
|
428
|
+
type "price_festbetrag", "9"
|
|
429
|
+
type "code_festbetragsstufe", "1"
|
|
430
|
+
type "code_festbetragsgruppe", "2"
|
|
431
|
+
click "code_zuzahlungsbefreit"
|
|
432
|
+
#assert is_element_present("sequence")
|
|
433
|
+
click "code_prescription"
|
|
434
|
+
click "update"
|
|
435
|
+
|
|
436
|
+
wait_for_page_to_load 30
|
|
437
|
+
|
|
438
|
+
assert_equal "New Package", get_value("name")
|
|
439
|
+
assert_equal "12346", get_value("code_cid")
|
|
440
|
+
assert_equal "12.00", get_value("price_public")
|
|
441
|
+
assert_equal "9.00", get_value("price_festbetrag")
|
|
442
|
+
assert_equal "1", get_value("code_festbetragsstufe")
|
|
443
|
+
assert_equal "2", get_value("code_festbetragsgruppe")
|
|
444
|
+
assert is_checked("code_zuzahlungsbefreit")
|
|
445
|
+
assert is_checked("code_prescription")
|
|
446
|
+
|
|
447
|
+
assert_equal 2, package.sequence.packages.size
|
|
448
|
+
package = package.sequence.packages.last
|
|
449
|
+
assert_equal "New Package", package.name.de
|
|
450
|
+
assert_equal '12346', package.code(:cid).value
|
|
451
|
+
assert_equal 12, package.price(:public)
|
|
452
|
+
assert_equal 9, package.price(:festbetrag)
|
|
453
|
+
assert_equal "1", package.code(:festbetragsstufe).value
|
|
454
|
+
assert_equal "2", package.code(:festbetragsgruppe).value
|
|
455
|
+
assert_equal true, package.code(:zuzahlungsbefreit).value
|
|
456
|
+
assert_equal true, package.code(:prescription).value
|
|
457
|
+
end
|
|
458
|
+
def test_admin_new_package__errors
|
|
459
|
+
package = setup_package
|
|
460
|
+
user = login_admin
|
|
461
|
+
uid = package.sequence.uid
|
|
462
|
+
open "/de/drugs/sequence/uid/#{uid}"
|
|
463
|
+
assert_equal "CH - ODDB.org | Medikamente | Sequenz | #{uid} | Open Drug Database", get_title
|
|
464
|
+
|
|
465
|
+
click "new_package"
|
|
466
|
+
wait_for_page_to_load 30
|
|
467
|
+
assert_equal "CH - ODDB.org | Medikamente | Neue Packung | Open Drug Database", get_title
|
|
468
|
+
|
|
469
|
+
type "code_cid", "12345"
|
|
470
|
+
type "price_public", "12"
|
|
471
|
+
type "price_festbetrag", "9"
|
|
472
|
+
type "code_festbetragsstufe", "1"
|
|
473
|
+
type "code_festbetragsgruppe", "2"
|
|
474
|
+
click "code_zuzahlungsbefreit"
|
|
475
|
+
#assert is_element_present("sequence")
|
|
476
|
+
click "code_prescription"
|
|
477
|
+
click "update"
|
|
478
|
+
|
|
479
|
+
wait_for_page_to_load 30
|
|
480
|
+
|
|
481
|
+
assert is_text_present("Bitte geben Sie einen Namen an.")
|
|
482
|
+
assert is_text_present("Der Swissmedic-Code '12345' (Amantadin by Producer) ist bereits vergeben.")
|
|
483
|
+
assert_equal "12345", get_value("code_cid")
|
|
484
|
+
assert_equal "12", get_value("price_public")
|
|
485
|
+
assert_equal "9", get_value("price_festbetrag")
|
|
486
|
+
assert_equal "1", get_value("code_festbetragsstufe")
|
|
487
|
+
assert_equal "2", get_value("code_festbetragsgruppe")
|
|
488
|
+
assert !is_checked("code_zuzahlungsbefreit")
|
|
489
|
+
assert !is_checked("code_prescription")
|
|
490
|
+
|
|
491
|
+
assert_equal 1, package.sequence.packages.size
|
|
492
|
+
end
|
|
493
|
+
def test_admin_new_package__delete
|
|
494
|
+
package = setup_package
|
|
495
|
+
user = login_admin
|
|
496
|
+
uid = package.sequence.uid
|
|
497
|
+
open "/de/drugs/sequence/uid/#{uid}"
|
|
498
|
+
assert_equal "CH - ODDB.org | Medikamente | Sequenz | #{uid} | Open Drug Database", get_title
|
|
499
|
+
|
|
500
|
+
click "new_package"
|
|
501
|
+
wait_for_page_to_load 30
|
|
502
|
+
assert_equal "CH - ODDB.org | Medikamente | Neue Packung | Open Drug Database", get_title
|
|
503
|
+
|
|
504
|
+
click "delete"
|
|
505
|
+
wait_for_page_to_load 30
|
|
506
|
+
assert_equal "CH - ODDB.org | Medikamente | Sequenz | #{uid} | Open Drug Database", get_title
|
|
507
|
+
|
|
508
|
+
assert_equal 1, package.sequence.packages.size
|
|
509
|
+
end
|
|
510
|
+
end
|
|
511
|
+
end
|
|
512
|
+
end
|