renalware-core 2.0.0.pre.beta6 → 2.0.0.pre.beta7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (199) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +20 -0
  3. data/lib/renalware/version.rb +1 -1
  4. data/spec/factories/accesses/patients.rb +3 -0
  5. data/spec/factories/accesses/plans.rb +11 -0
  6. data/spec/factories/accesses/plans_types.rb +5 -0
  7. data/spec/factories/accesses/procedures.rb +7 -0
  8. data/spec/factories/accesses/profiles.rb +14 -0
  9. data/spec/factories/accesses/sites.rb +6 -0
  10. data/spec/factories/accesses/types.rb +8 -0
  11. data/spec/factories/clinical/allergies.rb +7 -0
  12. data/spec/factories/clinical/body_compositions.rb +23 -0
  13. data/spec/factories/clinical/dry_weights.rb +11 -0
  14. data/spec/factories/clinical/patients.rb +3 -0
  15. data/spec/factories/clinics/appointments.rb +8 -0
  16. data/spec/factories/clinics/clinic_visits.rb +16 -0
  17. data/spec/factories/clinics/clinics.rb +6 -0
  18. data/spec/factories/deaths/cause.rb +6 -0
  19. data/spec/factories/deaths/modality_descriptions.rb +5 -0
  20. data/spec/factories/directory/people.rb +9 -0
  21. data/spec/factories/drugs/drug.rb +5 -0
  22. data/spec/factories/drugs/drug_types.rb +6 -0
  23. data/spec/factories/events/events.rb +26 -0
  24. data/spec/factories/events/events_types.rb +16 -0
  25. data/spec/factories/hd/cannulation_types.rb +5 -0
  26. data/spec/factories/hd/dialysers.rb +6 -0
  27. data/spec/factories/hd/hd_session_document.rb +69 -0
  28. data/spec/factories/hd/modality_descriptions.rb +5 -0
  29. data/spec/factories/hd/patient_statistics.rb +8 -0
  30. data/spec/factories/hd/patients.rb +3 -0
  31. data/spec/factories/hd/preference_sets.rb +10 -0
  32. data/spec/factories/hd/profiles.rb +18 -0
  33. data/spec/factories/hd/sessions.rb +34 -0
  34. data/spec/factories/hd/stations.rb +5 -0
  35. data/spec/factories/hospitals/centres.rb +6 -0
  36. data/spec/factories/hospitals/units.rb +15 -0
  37. data/spec/factories/letters/archives.rb +5 -0
  38. data/spec/factories/letters/contact_descriptions.rb +16 -0
  39. data/spec/factories/letters/contacts.rb +5 -0
  40. data/spec/factories/letters/descriptions.rb +5 -0
  41. data/spec/factories/letters/letterheads.rb +10 -0
  42. data/spec/factories/letters/letters.rb +25 -0
  43. data/spec/factories/letters/patients.rb +3 -0
  44. data/spec/factories/letters/primary_care_physicians.rb +5 -0
  45. data/spec/factories/letters/recipients.rb +11 -0
  46. data/spec/factories/medications/medication_route.rb +11 -0
  47. data/spec/factories/medications/prescription.rb +17 -0
  48. data/spec/factories/medications/prescription_terminations.rb +7 -0
  49. data/spec/factories/medications/prescription_version.rb +4 -0
  50. data/spec/factories/messaging/authors.rb +5 -0
  51. data/spec/factories/messaging/message.rb +11 -0
  52. data/spec/factories/messaging/patients.rb +5 -0
  53. data/spec/factories/messaging/receipt.rb +7 -0
  54. data/spec/factories/messaging/recipients.rb +5 -0
  55. data/spec/factories/modalities/modalities.rb +27 -0
  56. data/spec/factories/modalities/modality_descriptions.rb +34 -0
  57. data/spec/factories/modalities/modality_reasons.rb +20 -0
  58. data/spec/factories/pathology/consultant.rb +3 -0
  59. data/spec/factories/pathology/lab.rb +5 -0
  60. data/spec/factories/pathology/measurement_units.rb +8 -0
  61. data/spec/factories/pathology/observation_descriptions.rb +7 -0
  62. data/spec/factories/pathology/observation_requests.rb +8 -0
  63. data/spec/factories/pathology/observations.rb +8 -0
  64. data/spec/factories/pathology/patients.rb +3 -0
  65. data/spec/factories/pathology/request_descriptions.rb +6 -0
  66. data/spec/factories/pathology/requests/drug_category.rb +6 -0
  67. data/spec/factories/pathology/requests/global_rule.rb +7 -0
  68. data/spec/factories/pathology/requests/global_rule_set.rb +6 -0
  69. data/spec/factories/pathology/requests/patient_rule.rb +13 -0
  70. data/spec/factories/pathology/requests/request.rb +10 -0
  71. data/spec/factories/patients/alerts.rb +8 -0
  72. data/spec/factories/patients/bookmarks.rb +6 -0
  73. data/spec/factories/patients/ethnicities.rb +6 -0
  74. data/spec/factories/patients/languages.rb +5 -0
  75. data/spec/factories/patients/patients.rb +32 -0
  76. data/spec/factories/patients/practices.rb +17 -0
  77. data/spec/factories/patients/primary_care_physicians.rb +21 -0
  78. data/spec/factories/patients/religions.rb +5 -0
  79. data/spec/factories/patients/users.rb +3 -0
  80. data/spec/factories/pd/assessments.rb +22 -0
  81. data/spec/factories/pd/bag_types.rb +17 -0
  82. data/spec/factories/pd/episode_types.rb +6 -0
  83. data/spec/factories/pd/exit_site_infections.rb +9 -0
  84. data/spec/factories/pd/fluid_descriptions.rb +6 -0
  85. data/spec/factories/pd/infection_organisms.rb +10 -0
  86. data/spec/factories/pd/modality_descriptions.rb +5 -0
  87. data/spec/factories/pd/organism_codes.rb +6 -0
  88. data/spec/factories/pd/patients.rb +3 -0
  89. data/spec/factories/pd/pd_regimes.rb +36 -0
  90. data/spec/factories/pd/peritonitis_episode_type_descriptions.rb +8 -0
  91. data/spec/factories/pd/peritonitis_episodes.rb +20 -0
  92. data/spec/factories/pd/pet_adequacies.rb +38 -0
  93. data/spec/factories/pd/regime_bags.rb +44 -0
  94. data/spec/factories/pd/systems.rb +11 -0
  95. data/spec/factories/pd/training_sessions.rb +16 -0
  96. data/spec/factories/pd/training_sites.rb +6 -0
  97. data/spec/factories/pd/training_types.rb +5 -0
  98. data/spec/factories/problems/problems.rb +7 -0
  99. data/spec/factories/renal/patients.rb +3 -0
  100. data/spec/factories/renal/prd_description.rb +6 -0
  101. data/spec/factories/renal/profiles.rb +5 -0
  102. data/spec/factories/reporting/audits.rb +8 -0
  103. data/spec/factories/snippets/snippets.rb +6 -0
  104. data/spec/factories/snippets/users.rb +4 -0
  105. data/spec/factories/system/addresses.rb +11 -0
  106. data/spec/factories/system/roles.rb +27 -0
  107. data/spec/factories/system/templates.rb +15 -0
  108. data/spec/factories/system/users.rb +58 -0
  109. data/spec/factories/transplants/donations.rb +8 -0
  110. data/spec/factories/transplants/donor_stage.rb +12 -0
  111. data/spec/factories/transplants/donor_stage_position.rb +5 -0
  112. data/spec/factories/transplants/donor_stage_status.rb +5 -0
  113. data/spec/factories/transplants/live_donor_modality_description.rb +6 -0
  114. data/spec/factories/transplants/modality_descriptions.rb +10 -0
  115. data/spec/factories/transplants/patients.rb +3 -0
  116. data/spec/factories/transplants/recipient_followups.rb +4 -0
  117. data/spec/factories/transplants/recipient_operations.rb +15 -0
  118. data/spec/factories/transplants/registration_status_descriptions.rb +7 -0
  119. data/spec/factories/transplants/registration_statuses.rb +9 -0
  120. data/spec/factories/transplants/registrations.rb +46 -0
  121. data/spec/support/capybara_helper.rb +9 -0
  122. data/spec/support/database_cleaner.rb +18 -0
  123. data/spec/support/date_helpers.rb +9 -0
  124. data/spec/support/devise_spec_helper.rb +29 -0
  125. data/spec/support/drugs_spec_helper.rb +49 -0
  126. data/spec/support/factory_girl.rb +29 -0
  127. data/spec/support/json_helpers.rb +5 -0
  128. data/spec/support/letters_spec_helper.rb +36 -0
  129. data/spec/support/login_macros.rb +26 -0
  130. data/spec/support/matchers/document.rb +5 -0
  131. data/spec/support/matchers/validate_timeliness_of.rb +16 -0
  132. data/spec/support/pathology_spec_helper.rb +37 -0
  133. data/spec/support/patients_spec_helper.rb +16 -0
  134. data/spec/support/poltergeist.rb +2 -0
  135. data/spec/support/pundit_matcher.rb +13 -0
  136. data/spec/support/roles_spec_helper.rb +7 -0
  137. data/spec/support/select2_spec_helper.rb +13 -0
  138. data/spec/support/select_date_spec_helper.rb +11 -0
  139. data/spec/support/shared_contexts/a_global_rule_set.rb +19 -0
  140. data/spec/support/translations.rb +12 -0
  141. data/spec/support/travel.rb +7 -0
  142. data/spec/support/webmock.rb +3 -0
  143. metadata +142 -58
  144. data/vendor/xsd/ukrdc/README.md +0 -9
  145. data/vendor/xsd/ukrdc/Schema/Allergies/Allergy.xsd +0 -69
  146. data/vendor/xsd/ukrdc/Schema/ClinicalRelationships/ClinicalRelationship.xsd +0 -27
  147. data/vendor/xsd/ukrdc/Schema/Diagnoses/CauseOfDeath.xsd +0 -32
  148. data/vendor/xsd/ukrdc/Schema/Diagnoses/Diagnosis.xsd +0 -41
  149. data/vendor/xsd/ukrdc/Schema/Diagnoses/RenalDiagnosis.xsd +0 -41
  150. data/vendor/xsd/ukrdc/Schema/Documents/Document.xsd +0 -72
  151. data/vendor/xsd/ukrdc/Schema/Encounters/Encounter.xsd +0 -121
  152. data/vendor/xsd/ukrdc/Schema/Encounters/TransplantList.xsd +0 -108
  153. data/vendor/xsd/ukrdc/Schema/Encounters/Treatment.xsd +0 -207
  154. data/vendor/xsd/ukrdc/Schema/FamilyHistories/FamilyHistory.xsd +0 -42
  155. data/vendor/xsd/ukrdc/Schema/LabOrders/LabOrder.xsd +0 -181
  156. data/vendor/xsd/ukrdc/Schema/Medications/Medication.xsd +0 -88
  157. data/vendor/xsd/ukrdc/Schema/Observations/Observation.xsd +0 -65
  158. data/vendor/xsd/ukrdc/Schema/Patient.xsd +0 -87
  159. data/vendor/xsd/ukrdc/Schema/Procedures/DialysisSession.xsd +0 -61
  160. data/vendor/xsd/ukrdc/Schema/Procedures/Procedure.xsd +0 -38
  161. data/vendor/xsd/ukrdc/Schema/Procedures/Transplant.xsd +0 -160
  162. data/vendor/xsd/ukrdc/Schema/Procedures/VascularAccess.xsd +0 -49
  163. data/vendor/xsd/ukrdc/Schema/ProgramMemberships/ProgramMembership.xsd +0 -46
  164. data/vendor/xsd/ukrdc/Schema/README.md +0 -1
  165. data/vendor/xsd/ukrdc/Schema/SocialHistories/SocialHistory.xsd +0 -15
  166. data/vendor/xsd/ukrdc/Schema/Surveys/Survey.xsd +0 -143
  167. data/vendor/xsd/ukrdc/Schema/Types/ActionCode.xsd +0 -37
  168. data/vendor/xsd/ukrdc/Schema/Types/Address.xsd +0 -67
  169. data/vendor/xsd/ukrdc/Schema/Types/CF_DMD.xsd +0 -27
  170. data/vendor/xsd/ukrdc/Schema/Types/CF_EDTA_COD.xsd +0 -343
  171. data/vendor/xsd/ukrdc/Schema/Types/CF_EDTA_PRD.xsd +0 -356
  172. data/vendor/xsd/ukrdc/Schema/Types/CF_HL7_0004.xsd +0 -76
  173. data/vendor/xsd/ukrdc/Schema/Types/CF_HL7_00204.xsd +0 -46
  174. data/vendor/xsd/ukrdc/Schema/Types/CF_HL7_00206.xsd +0 -41
  175. data/vendor/xsd/ukrdc/Schema/Types/CF_RR1.xsd +0 -567
  176. data/vendor/xsd/ukrdc/Schema/Types/CF_RR23.xsd +0 -82
  177. data/vendor/xsd/ukrdc/Schema/Types/CF_RR7_Discharge.xsd +0 -80
  178. data/vendor/xsd/ukrdc/Schema/Types/CF_RR7_Treatment.xsd +0 -241
  179. data/vendor/xsd/ukrdc/Schema/Types/CF_SNOMED.xsd +0 -27
  180. data/vendor/xsd/ukrdc/Schema/Types/Clinician.xsd +0 -27
  181. data/vendor/xsd/ukrdc/Schema/Types/CodeTableDetail.xsd +0 -27
  182. data/vendor/xsd/ukrdc/Schema/Types/CodedField.xsd +0 -27
  183. data/vendor/xsd/ukrdc/Schema/Types/CommonMetadata.xsd +0 -23
  184. data/vendor/xsd/ukrdc/Schema/Types/ContactDetail.xsd +0 -55
  185. data/vendor/xsd/ukrdc/Schema/Types/DrugProduct.xsd +0 -41
  186. data/vendor/xsd/ukrdc/Schema/Types/EthnicGroup.xsd +0 -114
  187. data/vendor/xsd/ukrdc/Schema/Types/FamilyDoctor.xsd +0 -21
  188. data/vendor/xsd/ukrdc/Schema/Types/LabResultItem.xsd +0 -160
  189. data/vendor/xsd/ukrdc/Schema/Types/LabTestItem.xsd +0 -24
  190. data/vendor/xsd/ukrdc/Schema/Types/Language.xsd +0 -981
  191. data/vendor/xsd/ukrdc/Schema/Types/Location.xsd +0 -27
  192. data/vendor/xsd/ukrdc/Schema/Types/NV_RR14.xsd +0 -39
  193. data/vendor/xsd/ukrdc/Schema/Types/Name.xsd +0 -51
  194. data/vendor/xsd/ukrdc/Schema/Types/Occupation.xsd +0 -75
  195. data/vendor/xsd/ukrdc/Schema/Types/Order.xsd +0 -48
  196. data/vendor/xsd/ukrdc/Schema/Types/PatientNumber.xsd +0 -90
  197. data/vendor/xsd/ukrdc/Schema/Types/PersonalContactType.xsd +0 -11
  198. data/vendor/xsd/ukrdc/Schema/Types/Result.xsd +0 -178
  199. data/vendor/xsd/ukrdc/Schema/UKRDC.xsd +0 -148
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :hd_station, class: "Renalware::HD::Station" do
3
+ name "StationA"
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ FactoryGirl.define do
2
+ factory :hospital_centre, class: "Renalware::Hospitals::Centre" do
3
+ name "King's College Hospital"
4
+ code "RJZ"
5
+ end
6
+ end
@@ -0,0 +1,15 @@
1
+ FactoryGirl.define do
2
+ factory :hospital_unit, class: "Renalware::Hospitals::Unit" do
3
+ hospital_centre
4
+ name "King's College Hospital"
5
+ unit_code "UJZ"
6
+ renal_registry_code "RJZ"
7
+ unit_type :hospital
8
+ number_of_hd_stations nil
9
+
10
+ factory :hd_hospital_unit do
11
+ is_hd_site true
12
+ number_of_hd_stations 10
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :letter_archive, class: "Renalware::Letters::Archive" do
3
+ content ":html-content:"
4
+ end
5
+ end
@@ -0,0 +1,16 @@
1
+ FactoryGirl.define do
2
+ sequence(:system_code) { |n| "sibling-#{n}" }
3
+ sequence(:name) { |n| "Sibling #{n}" }
4
+ sequence(:position) { |n| n }
5
+
6
+ factory :letter_contact_description, class: "Renalware::Letters::ContactDescription" do
7
+ system_code
8
+ name
9
+ position
10
+
11
+ trait :unspecified do
12
+ name "Other"
13
+ system_code "other"
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :letter_contact, class: "Renalware::Letters::Contact" do
3
+ association :description, factory: :letter_contact_description
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :letter_description, class: "Renalware::Letters::Description" do
3
+ text "Clinic letter"
4
+ end
5
+ end
@@ -0,0 +1,10 @@
1
+ FactoryGirl.define do
2
+ factory :letter_letterhead, class: "Renalware::Letters::Letterhead" do
3
+ name "KCH"
4
+ site_code "KCH"
5
+ unit_info "KCH"
6
+ trust_name "KCH TRUST"
7
+ trust_caption "KCH TRUST"
8
+ site_info "Lorem ipsum"
9
+ end
10
+ end
@@ -0,0 +1,25 @@
1
+ FactoryGirl.define do
2
+ factory :letter, class: "Renalware::Letters::Letter" do
3
+ issued_on Time.zone.today
4
+ description "This is a custom description"
5
+ body "I am pleased to report a marked improvement in her condition."
6
+
7
+ association :author, factory: [:user, :author]
8
+ association :letterhead, factory: [:letter_letterhead]
9
+
10
+ association :created_by, factory: :user
11
+ association :updated_by, factory: :user
12
+
13
+ factory :draft_letter, class: "Renalware::Letters::Letter::Draft" do
14
+ end
15
+
16
+ factory :pending_review_letter, class: "Renalware::Letters::Letter::PendingReview" do
17
+ end
18
+
19
+ factory :approved_letter, class: "Renalware::Letters::Letter::Approved" do
20
+ end
21
+
22
+ factory :completed_letter, class: "Renalware::Letters::Letter::Completed" do
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,3 @@
1
+ FactoryGirl.define do
2
+ factory :letter_patient, class: "Renalware::Letters::Patient", parent: :patient
3
+ end
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :letter_primary_care_physician,
3
+ class: "Renalware::Letters::PrimaryCarePhysician",
4
+ parent: :primary_care_physician
5
+ end
@@ -0,0 +1,11 @@
1
+ FactoryGirl.define do
2
+ factory :letter_recipient, class: "Renalware::Letters::Recipient" do
3
+ trait :main do
4
+ role "main"
5
+ end
6
+
7
+ trait :cc do
8
+ role "cc"
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ FactoryGirl.define do
2
+ factory :medication_route, class: "Renalware::Medications::MedicationRoute" do
3
+ code "PO"
4
+ name "Per Oral"
5
+ end
6
+
7
+ trait :other do
8
+ code "Other"
9
+ name "Other"
10
+ end
11
+ end
@@ -0,0 +1,17 @@
1
+ FactoryGirl.define do
2
+ factory :prescription, class: "Renalware::Medications::Prescription" do
3
+ patient
4
+ drug
5
+ dose_amount "20"
6
+ dose_unit "milligram"
7
+ medication_route
8
+ frequency "daily"
9
+ notes "with food"
10
+ provider 0
11
+ prescribed_on 2.weeks.ago
12
+ association :created_by, factory: :user
13
+ association :updated_by, factory: :user
14
+
15
+ before(:create) { |prescription| prescription.treatable ||= prescription.patient }
16
+ end
17
+ end
@@ -0,0 +1,7 @@
1
+ FactoryGirl.define do
2
+ factory :prescription_termination, class: "Renalware::Medications::PrescriptionTermination" do
3
+ terminated_on "2016-07-26"
4
+ association :created_by, factory: :user
5
+ association :updated_by, factory: :user
6
+ end
7
+ end
@@ -0,0 +1,4 @@
1
+ FactoryGirl.define do
2
+ factory :prescription_version, class: "Renalware::Medications::PrescriptionVersion" do
3
+ end
4
+ end
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :messaging_author,
3
+ class: "Renalware::Messaging::Author",
4
+ parent: :user
5
+ end
@@ -0,0 +1,11 @@
1
+ FactoryGirl.define do
2
+ factory :internal_message, class: "Renalware::Messaging::Message" do
3
+ body "The body"
4
+ subject "The subject"
5
+ urgent false
6
+ association :author, factory: :author
7
+ sent_at Time.zone.now
8
+ association :patient
9
+ receipts []
10
+ end
11
+ end
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :messaging_patient,
3
+ class: "Renalware::Messaging::Patient",
4
+ parent: :patient
5
+ end
@@ -0,0 +1,7 @@
1
+ FactoryGirl.define do
2
+ factory :receipt, class: "Renalware::Messaging::Receipt" do
3
+ association :recipient, factory: :recipient
4
+ read_at nil
5
+ association :message, factory: :internal_message
6
+ end
7
+ end
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :messaging_recipient,
3
+ class: "Renalware::Messaging::Recipient",
4
+ parent: :user
5
+ end
@@ -0,0 +1,27 @@
1
+ FactoryGirl.define do
2
+ factory :modality, class: "Renalware::Modalities::Modality" do
3
+ patient
4
+ association :description, factory: :modality_description
5
+ association :reason, factory: :modality_reason
6
+ started_on Date.parse("2015-04-01")
7
+
8
+ association :created_by, factory: :user
9
+ association :updated_by, factory: :user
10
+
11
+ trait :terminated do
12
+ state "terminated"
13
+ end
14
+
15
+ trait :pd_to_haemo do
16
+ after(:create) do |instance|
17
+ instance.reason = create(:pd_to_haemodialysis)
18
+ end
19
+ end
20
+
21
+ trait :haemo_to_pd_modality do
22
+ after(:create) do |instance|
23
+ instance.reason = create(:haemodialysis_to_pd)
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,34 @@
1
+ FactoryGirl.define do
2
+ factory :modality_description, class: "Renalware::Modalities::Description" do
3
+ name "CAPD (disconnect)"
4
+
5
+ initialize_with { Renalware::Modalities::Description.find_or_create_by(name: name) }
6
+
7
+ trait :capd_standard do
8
+ name "CAPD (standard)"
9
+ end
10
+ trait :ccpd_6_nights do
11
+ name "CCPD (<6 nights/wk)"
12
+ end
13
+
14
+ trait :pd do
15
+ name "PD"
16
+ end
17
+
18
+ trait :hd do
19
+ name "HD"
20
+ end
21
+
22
+ trait :transplant do
23
+ name "Transplant"
24
+ end
25
+
26
+ trait :lcc do
27
+ name "LCC"
28
+ end
29
+
30
+ trait :death do
31
+ name "Death"
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,20 @@
1
+ FactoryGirl.define do
2
+ sequence :rr_code do |n|
3
+ 200 + n
4
+ end
5
+
6
+ factory :modality_reason, class: "Renalware::Modalities::Reason" do
7
+ rr_code
8
+ description "Patient / partner choice"
9
+ end
10
+
11
+ factory :pd_to_haemodialysis, parent: :modality_reason do
12
+ type "Renalware::Modalities::PDToHaemodialysis"
13
+ description "Effective after temporary HD"
14
+ end
15
+
16
+ factory :haemodialysis_to_pd, parent: :modality_reason do
17
+ type "Renalware::Modalities::HaemodialysisToPD"
18
+ description "Abdominal surgery or complications"
19
+ end
20
+ end
@@ -0,0 +1,3 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_consultant, class: "Renalware::Pathology::Consultant", parent: :user
3
+ end
@@ -0,0 +1,5 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_lab, class: "Renalware::Pathology::Lab" do
3
+ name %w(Biochemistry Microbiology Haemotology Virology).sample
4
+ end
5
+ end
@@ -0,0 +1,8 @@
1
+ FactoryGirl.define do
2
+ sequence(:measurement_unit) { |n| "10(#{n})/L" }
3
+ factory :pathology_measurement_unit,
4
+ class: "Renalware::Pathology::MeasurementUnit" do
5
+ name { generate(:measurement_unit) }
6
+ description ""
7
+ end
8
+ end
@@ -0,0 +1,7 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_observation_description,
3
+ class: "Renalware::Pathology::ObservationDescription" do
4
+ code "WBR"
5
+ association :measurement_unit, factory: :pathology_measurement_unit
6
+ end
7
+ end
@@ -0,0 +1,8 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_observation_request, class: "Renalware::Pathology::ObservationRequest" do
3
+ association :description, factory: :pathology_request_description
4
+ requestor_order_number "123"
5
+ requestor_name "Jane Doe"
6
+ requested_at "2016-03-04 10:14:49"
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_observation, class: "Renalware::Pathology::Observation" do
3
+ association :description, factory: :pathology_observation_description
4
+ result "6.0"
5
+ comment "My Comment"
6
+ observed_at "2016-03-04 10:15:40"
7
+ end
8
+ end
@@ -0,0 +1,3 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_patient, class: "Renalware::Pathology::Patient", parent: :patient
3
+ end
@@ -0,0 +1,6 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_request_description, class: "Renalware::Pathology::RequestDescription" do
3
+ association :lab, factory: :pathology_lab
4
+ code "FBC"
5
+ end
6
+ end
@@ -0,0 +1,6 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_requests_drug_category,
3
+ class: "Renalware::Pathology::Requests::DrugCategory" do
4
+ name "Ciclosporin"
5
+ end
6
+ end
@@ -0,0 +1,7 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_requests_global_rule, class: "Renalware::Pathology::Requests::GlobalRule" do
3
+ type "ObservationResult"
4
+ param_comparison_operator "<"
5
+ param_comparison_value "100"
6
+ end
7
+ end
@@ -0,0 +1,6 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_requests_global_rule_set,
3
+ class: "Renalware::Pathology::Requests::GlobalRuleSet" do
4
+ frequency_type Renalware::Pathology::Requests::Frequency.all_names.sample
5
+ end
6
+ end
@@ -0,0 +1,13 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_requests_patient_rule,
3
+ class: "Renalware::Pathology::Requests::PatientRule" do
4
+ association :lab, factory: :pathology_lab
5
+ patient
6
+ test_description "Test for HepB"
7
+ sample_number_bottles 1
8
+ sample_type nil
9
+ frequency_type Renalware::Pathology::Requests::Frequency.all_names.sample
10
+ start_date nil
11
+ end_date nil
12
+ end
13
+ end
@@ -0,0 +1,10 @@
1
+ FactoryGirl.define do
2
+ factory :pathology_requests_request, class: "Renalware::Pathology::Requests::Request" do
3
+ telephone Faker::PhoneNumber.phone_number
4
+ template Renalware::Pathology::Requests::Request::TEMPLATES.sample
5
+ high_risk [true, false].sample
6
+
7
+ association :created_by, factory: :user
8
+ association :updated_by, factory: :user
9
+ end
10
+ end
@@ -0,0 +1,8 @@
1
+ FactoryGirl.define do
2
+ factory :patient_alert, class: "Renalware::Patients::Alert" do
3
+ notes Faker::Lorem.sentence
4
+ urgent true
5
+ association :created_by, factory: :user
6
+ association :updated_by, factory: :user
7
+ end
8
+ end