caren-api 0.4.32 → 0.4.33

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.32
1
+ 0.4.33
data/caren-api.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "caren-api"
8
- s.version = "0.4.32"
8
+ s.version = "0.4.33"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Andre Foeken"]
@@ -35,9 +35,11 @@ Gem::Specification.new do |s|
35
35
  "lib/caren/care_provider.rb",
36
36
  "lib/caren/caren.rb",
37
37
  "lib/caren/client.rb",
38
+ "lib/caren/employee.rb",
38
39
  "lib/caren/error.rb",
39
40
  "lib/caren/event.rb",
40
41
  "lib/caren/event_slot.rb",
42
+ "lib/caren/event_slot_container.rb",
41
43
  "lib/caren/external_message.rb",
42
44
  "lib/caren/link.rb",
43
45
  "spec/.DS_Store",
@@ -46,6 +48,8 @@ Gem::Specification.new do |s|
46
48
  "spec/care_provider_spec.rb",
47
49
  "spec/caren_spec.rb",
48
50
  "spec/client_spec.rb",
51
+ "spec/employee_spec.rb",
52
+ "spec/event_slot_container_spec.rb",
49
53
  "spec/event_slot_spec.rb",
50
54
  "spec/event_spec.rb",
51
55
  "spec/external_message_spec.rb",
@@ -0,0 +1,19 @@
1
+ class Caren::Employee < Caren::Base
2
+
3
+ def self.keys
4
+ [ :external_id, # String (Your client id)
5
+ :first_name, # String
6
+ :last_name, # String
7
+ :bio # Text
8
+ ]
9
+ end
10
+
11
+ def self.array_root
12
+ :employees
13
+ end
14
+
15
+ def self.node_root
16
+ :employee
17
+ end
18
+
19
+ end
@@ -16,5 +16,4 @@ class Caren::EventSlot < Caren::Base
16
16
  :event_slot
17
17
  end
18
18
 
19
- end
20
-
19
+ end
@@ -0,0 +1,17 @@
1
+ class Caren::EventSlotContainer < Caren::Base
2
+
3
+ def self.keys
4
+ [ :employee,
5
+ :event_slots
6
+ ]
7
+ end
8
+
9
+ def self.array_root
10
+ :event_slot_containers
11
+ end
12
+
13
+ def self.node_root
14
+ :event_slot_container
15
+ end
16
+
17
+ end
data/lib/caren-api.rb CHANGED
@@ -11,7 +11,9 @@ require "caren/error"
11
11
  require "caren/base"
12
12
  require "caren/event"
13
13
  require "caren/event_slot"
14
+ require "caren/event_slot_container"
14
15
  require "caren/client"
16
+ require "caren/employee"
15
17
  require "caren/care_provider"
16
18
  require "caren/external_message"
17
19
  require "caren/link"
@@ -0,0 +1,25 @@
1
+ require 'spec_helper'
2
+
3
+ describe "Employee", "converting to xml" do
4
+
5
+ before do
6
+ @employee_a = Caren::Employee.new( :external_id => 1,
7
+ :first_name => "Andre",
8
+ :last_name => "Foeken",
9
+ :bio => "Aap")
10
+
11
+ @employee_b = Caren::Employee.new( :external_id => 2,
12
+ :first_name => "Oscar",
13
+ :last_name => "Foeken",
14
+ :bio => "Noot")
15
+ end
16
+
17
+ it "should be able to convert a employee to valid xml" do
18
+ @employee_a.should convert_to_valid_caren_xml
19
+ end
20
+
21
+ it "should be able to convert an array of employee to valid xml" do
22
+ [@employee_a,@employee_b].should convert_to_valid_caren_array_xml
23
+ end
24
+
25
+ end
@@ -0,0 +1,26 @@
1
+ require 'spec_helper'
2
+
3
+ describe "EventSlotContainer", "converting to xml" do
4
+
5
+ before do
6
+ @employee = Caren::Employee.new( :first_name => "Andre", :last_name => "Foeken", :external_id => 3, :bio => "")
7
+ @slot_a = Caren::EventSlot.new( :date => Date.today, :start => "10:00", :duration => 3600)
8
+ @slot_b = Caren::EventSlot.new( :date => Date.today + 1, :start => "10:00", :duration => 7200)
9
+ @event_slot_container = Caren::EventSlotContainer.new( :employee => @employee, :event_slots => [@slot_a,@slot_b])
10
+ end
11
+
12
+ it "should be able to convert an event to valid xml" do
13
+ hash = Hash.from_xml @event_slot_container.to_xml
14
+ hash["event_slot_container"]["event_slots"].should have(2).things
15
+ hash["event_slot_container"]["event_slots"].first["start"].should == "10:00"
16
+ hash["event_slot_container"]["employee"]["first_name"].should == "Andre"
17
+ end
18
+
19
+ it "should be able to convert an array of events to valid xml" do
20
+ hash = Hash.from_xml Caren::EventSlotContainer.to_xml([@event_slot_container])
21
+ hash["event_slot_containers"].first["event_slots"].should have(2).things
22
+ hash["event_slot_containers"].first["event_slots"].first["start"].should == "10:00"
23
+ hash["event_slot_containers"].first["employee"]["first_name"].should == "Andre"
24
+ end
25
+
26
+ end
@@ -1,6 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe "Event", "converting to xml" do
3
+ describe "EventSlot", "converting to xml" do
4
4
 
5
5
  before do
6
6
  @slot_a = Caren::EventSlot.new( :date => Date.today, :start => "10:00", :duration => 3600)
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: caren-api
3
3
  version: !ruby/object:Gem::Version
4
- hash: 79
4
+ hash: 77
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 4
9
- - 32
10
- version: 0.4.32
9
+ - 33
10
+ version: 0.4.33
11
11
  platform: ruby
12
12
  authors:
13
13
  - Andre Foeken
@@ -173,9 +173,11 @@ files:
173
173
  - lib/caren/care_provider.rb
174
174
  - lib/caren/caren.rb
175
175
  - lib/caren/client.rb
176
+ - lib/caren/employee.rb
176
177
  - lib/caren/error.rb
177
178
  - lib/caren/event.rb
178
179
  - lib/caren/event_slot.rb
180
+ - lib/caren/event_slot_container.rb
179
181
  - lib/caren/external_message.rb
180
182
  - lib/caren/link.rb
181
183
  - spec/.DS_Store
@@ -184,6 +186,8 @@ files:
184
186
  - spec/care_provider_spec.rb
185
187
  - spec/caren_spec.rb
186
188
  - spec/client_spec.rb
189
+ - spec/employee_spec.rb
190
+ - spec/event_slot_container_spec.rb
187
191
  - spec/event_slot_spec.rb
188
192
  - spec/event_spec.rb
189
193
  - spec/external_message_spec.rb