clinical 0.2.2 → 0.2.4

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.2
1
+ 0.2.4
data/clinical.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{clinical}
5
- s.version = "0.2.2"
5
+ s.version = "0.2.4"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Dan Pickett"]
9
- s.date = %q{2009-07-28}
9
+ s.date = %q{2009-07-29}
10
10
  s.email = %q{dpickett@enlightsolutions.com}
11
11
  s.extra_rdoc_files = [
12
12
  "LICENSE",
@@ -35,7 +35,9 @@ Gem::Specification.new do |s|
35
35
  "lib/clinical/intervention.rb",
36
36
  "lib/clinical/lead_sponsor.rb",
37
37
  "lib/clinical/location.rb",
38
+ "lib/clinical/location_contact.rb",
38
39
  "lib/clinical/outcome.rb",
40
+ "lib/clinical/overall_official.rb",
39
41
  "lib/clinical/primary_outcome.rb",
40
42
  "lib/clinical/secondary_outcome.rb",
41
43
  "lib/clinical/sponsor.rb",
@@ -44,6 +44,7 @@ Feature: As a potential participant for a clinical study
44
44
  And the trial should have "conditions" like "Lung Cancer"
45
45
  And the trial should have a "minimum_age" of "21 Years"
46
46
  And the trial should have "sponsors" like "M.D. Anderson"
47
+ And the trial should have an "overall_official" like "Alexandra Phan, MD"
47
48
 
48
49
  Scenario: Find a non-existant trial
49
50
  When I attempt to retrieve trial "4325785"
@@ -63,7 +63,7 @@ Then /^the trial should have an? "([^\"]*)" of "([^\"]*)"$/ do |field, value|
63
63
  @trial.send(field).to_s.should eql(value)
64
64
  end
65
65
 
66
- Then /^the trial should have "([^\"]*)" like "([^\"]*)"$/ do |field, value|
66
+ Then /^the trial should have (an\s)?"([^\"]*)" like "([^\"]*)"$/ do |an, field, value|
67
67
  @trial.send(field).to_s.should =~ /#{Regexp.escape(value)}/
68
68
  end
69
69
 
@@ -1,13 +1,25 @@
1
1
  module Clinical
2
- class Contact
3
- include HappyMapper
2
+ module Contact
3
+ def self.included(base)
4
+ base.class_eval do
5
+ include HappyMapper
6
+ include Clinical::Contact::InstanceMethods
4
7
 
5
- element :first_name, String
6
- element :middle_name, String
7
- element :last_name, String
8
- element :degrees, String
9
- element :phone, String
10
- element :phone_ext, String
11
- element :email, String
8
+ element :first_name, String
9
+ element :middle_name, String
10
+ element :last_name, String
11
+ element :degrees, String
12
+ element :phone, String
13
+ element :phone_extension, String, :tag => "phone_ext"
14
+ element :email, String
15
+ end
16
+
17
+ end
18
+
19
+ module InstanceMethods
20
+ def to_s
21
+ [first_name, last_name, "(#{phone})"].join(" ")
22
+ end
23
+ end
12
24
  end
13
25
  end
@@ -4,7 +4,7 @@ module Clinical
4
4
 
5
5
  element :facility, String
6
6
  has_one :status, Clinical::Status, :parser => :parse
7
- has_one :contact, Clinical::Contact
7
+ has_one :contact, Clinical::LocationContact
8
8
  has_one :address, Clinical::Address
9
9
  end
10
10
  end
@@ -0,0 +1,7 @@
1
+ module Clinical
2
+ class LocationContact
3
+ include Clinical::Contact
4
+ tag "contact"
5
+ end
6
+ end
7
+
@@ -0,0 +1,6 @@
1
+ module Clinical
2
+ class OverallOfficial
3
+ include Clinical::Contact
4
+ tag "overall_official"
5
+ end
6
+ end
@@ -1,13 +1,13 @@
1
1
  module Clinical
2
2
  module Sponsor
3
- def self.included(base)
4
- base.class_eval do
5
- attr_accessor :name
6
- include HappyMapper
7
- end
8
- base.extend(ClassMethods)
9
- base.send(:include, InstanceMethods)
3
+ def self.included(base)
4
+ base.class_eval do
5
+ attr_accessor :name
6
+ include HappyMapper
10
7
  end
8
+ base.extend(ClassMethods)
9
+ base.send(:include, InstanceMethods)
10
+ end
11
11
 
12
12
  module InstanceMethods
13
13
  def to_s
@@ -24,4 +24,4 @@ module Clinical
24
24
  end
25
25
  end
26
26
  end
27
- end
27
+ end
@@ -24,6 +24,8 @@ module Clinical
24
24
  has_many :collaborators, Clinical::Collaborator
25
25
  has_many :agencies, Clinical::Agency
26
26
 
27
+ has_one :overall_official, Clinical::OverallOfficial, :tag => "overall_official"
28
+
27
29
  has_many :interventions, Intervention, :tag => "intervention"
28
30
  has_many :primary_outcomes, PrimaryOutcome
29
31
  has_many :secondary_outcomes, SecondaryOutcome
data/lib/clinical.rb CHANGED
@@ -20,8 +20,11 @@ require "clinical/lead_sponsor"
20
20
  require "clinical/agency"
21
21
  require "clinical/collaborator"
22
22
 
23
- require "clinical/address"
24
23
  require "clinical/contact"
24
+ require "clinical/overall_official"
25
+ require "clinical/location_contact"
26
+
27
+ require "clinical/address"
25
28
  require "clinical/location"
26
29
 
27
30
  require "clinical/trial"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: clinical
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Pickett
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-07-28 00:00:00 -04:00
12
+ date: 2009-07-29 00:00:00 -04:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -84,7 +84,9 @@ files:
84
84
  - lib/clinical/intervention.rb
85
85
  - lib/clinical/lead_sponsor.rb
86
86
  - lib/clinical/location.rb
87
+ - lib/clinical/location_contact.rb
87
88
  - lib/clinical/outcome.rb
89
+ - lib/clinical/overall_official.rb
88
90
  - lib/clinical/primary_outcome.rb
89
91
  - lib/clinical/secondary_outcome.rb
90
92
  - lib/clinical/sponsor.rb