osm 1.2.14 → 1.2.15.dev

Sign up to get free protection for your applications and to get access to all the features.
@@ -76,36 +76,6 @@ describe "Meeting" do
76
76
  end
77
77
 
78
78
 
79
- describe "Meeting::BadgeLink" do
80
-
81
- it "Create" do
82
- bl = Osm::Meeting::BadgeLink.new(
83
- :badge_key => 'artist',
84
- :badge_type => :activity,
85
- :requirement_key => 'a_01',
86
- :badge_section => :cubs,
87
- :label => 'Cubs Artist Activity - A: Poster',
88
- )
89
-
90
- bl.badge_key.should == 'artist'
91
- bl.badge_type.should == :activity
92
- bl.requirement_key.should == 'a_01'
93
- bl.badge_section.should == :cubs
94
- bl.label.should == 'Cubs Artist Activity - A: Poster'
95
- bl.valid?.should be_true
96
- end
97
-
98
- it "Sorts by label" do
99
- a1 = Osm::Meeting::BadgeLink.new(:label => 'a')
100
- a2 = Osm::Meeting::BadgeLink.new(:label => 'b')
101
-
102
- data = [a2, a1]
103
- data.sort.should == [a1, a2]
104
- end
105
-
106
- end
107
-
108
-
109
79
  describe 'Using the API' do
110
80
 
111
81
  it "Fetch the term's programme for a section" do
@@ -116,13 +86,19 @@ describe "Meeting" do
116
86
  {"activityid" => "7", "title" => "Activity 7", "notes" => "", "eveningid" => "5"}
117
87
  ]},
118
88
  "badgelinks" => {"5" => [{
119
- "badge" => "artist",
120
- "badgetype" => "activity",
121
- "columnname" => "a_01",
122
- "eveningid" => "5",
123
- "label" => "Cubs Artist Activity - A: Poster",
124
- "section" => "cubs",
125
- "sectionid" => "3",
89
+ 'badge' => 'artist',
90
+ 'badgeLongName' => 'Artist',
91
+ 'badge_id' => '180',
92
+ 'badge_version' => '0',
93
+ 'badgetype' => 'activity',
94
+ 'badgetypeLongName' => 'Activity',
95
+ 'column_id' => '1234',
96
+ 'columnname' => '1234',
97
+ 'columnnameLongName' => 'Guide Dogs',
98
+ 'data' => '',
99
+ 'label' => 'Disability Awareness Activity Guide dogs',
100
+ 'section' => 'cubs',
101
+ 'sectionLongName' => 'Cubs',
126
102
  }]},
127
103
  }
128
104
  FakeWeb.register_uri(:post, "https://www.onlinescoutmanager.co.uk/programme.php?action=getProgramme&sectionid=3&termid=4", :body => body.to_json, :content_type => 'application/json')
@@ -149,11 +125,14 @@ describe "Meeting" do
149
125
  activity.notes.should == 'Some notes'
150
126
  meeting.badge_links.size.should == 1
151
127
  badge_link = meeting.badge_links[0]
152
- badge_link.badge_key.should == 'artist'
153
128
  badge_link.badge_type.should == :activity
154
- badge_link.requirement_key.should == 'a_01'
155
129
  badge_link.badge_section.should == :cubs
156
- badge_link.label.should == 'Cubs Artist Activity - A: Poster'
130
+ badge_link.badge_name.should == 'Artist'
131
+ badge_link.badge_id.should == 180
132
+ badge_link.badge_version.should == 0
133
+ badge_link.requirement_id.should == 1234
134
+ badge_link.requirement_label.should == 'Guide Dogs'
135
+ badge_link.data.should == ''
157
136
  end
158
137
 
159
138
  it "Fetch badge requirements for a meeting (from API)" do
@@ -216,19 +195,34 @@ describe "Meeting" do
216
195
  ],
217
196
  'badges' => [
218
197
  {
219
- 'activityid' => '4',
220
- 'section' => 'section',
221
- 'badgetype' => 'type',
222
- 'badge' => 'badge',
223
- 'columnname' => 'col_name',
224
- 'label' => 'This is a label',
198
+ 'badge' => 'activity_firesafety',
199
+ 'badgeLongName' => 'Fire Safety',
200
+ 'badge_id' => '181',
201
+ 'badge_version' => '0',
202
+ 'badgetype' => 'activity',
203
+ 'badgetypeLongName' => 'Activity',
204
+ 'column_id' => '12345',
205
+ 'columnname' => 'b_01',
206
+ 'columnnameLongName' => 'B: Fire drill',
207
+ 'data' => 'Yes',
208
+ 'section' => 'cubs',
209
+ 'sectionLongName' => 'Cubs',
225
210
  }
226
211
  ]
227
212
  }
213
+
228
214
  FakeWeb.register_uri(:post, "https://www.onlinescoutmanager.co.uk/programme.php?action=getActivity&id=4", :body => activity_body.to_json, :content_type => 'application/json')
215
+ Osm::Activity.stub(:get) { Osm::Activity.new(:badges => [3]) }
229
216
 
230
- meeting = Osm::Meeting.new(:id => 2, :date => Date.new(2000, 1, 2), :section_id => 3, :activities=>[Osm::Meeting::Activity.new(:activity_id => 4)])
231
- meeting.get_badge_requirements(@api).should == [{"name"=>"This is a label", "badgeName"=>"badge", "sectionid"=>"3", "eveningid"=>"2", "section"=>:section, "badgetype"=>:type, "badge"=>"badge", "columnname"=>"col_name"}]
217
+ meeting = Osm::Meeting.new(
218
+ :id => 2,
219
+ :date => Date.new(2000, 1, 2),
220
+ :section_id => 3,
221
+ :activities => [Osm::Meeting::Activity.new(:activity_id => 4)],
222
+ :badge_links => [1, 2],
223
+ )
224
+
225
+ meeting.get_badge_requirements(@api).should == [1, 2, 3]
232
226
  end
233
227
 
234
228
  it "Create a meeting (succeded)" do
@@ -311,7 +305,7 @@ describe "Meeting" do
311
305
  'endtime' => nil, 'title' => 'Unnamed meeting', 'notesforparents' =>'', 'prenotes' => '',
312
306
  'postnotes' => '', 'games' => '', 'leaders' => '',
313
307
  'activity' => '[{"activityid":3,"notes":"Some notes"}]',
314
- 'badgelinks' => '[{"section":"beavers","badge":"badge","columnname":"b_03","badgetype":"activity"}]',
308
+ 'badgelinks' => '[{"badge_id":"181","badge_version":"0","column_id":"93384","badge":null,"badgeLongName":"Badge name","columnname":null,"columnnameLongName":"l","data":"","section":"beavers","sectionLongName":null,"badgetype":"activity","badgetypeLongName":null}]',
315
309
  }
316
310
  Osm::Term.stub(:get_for_section) { [] }
317
311
  HTTParty.should_receive(:post).with(url, {:body => post_data}) { OsmTest::DummyHttpResult.new(:response=>{:code=>'200', :body=>'{"result":0}'}) }
@@ -321,7 +315,16 @@ describe "Meeting" do
321
315
  :section_id=>2,
322
316
  :date=>Date.new(2000, 01, 02),
323
317
  :activities => [Osm::Meeting::Activity.new(:activity_id => 3, :title => 'Activity Title', :notes => 'Some notes')],
324
- :badge_links => [Osm::Meeting::BadgeLink.new(:badge_key => 'badge', :badge_type => :activity, :requirement_key => 'b_03', :badge_section => :beavers, :label => 'Label')]
318
+ :badge_links => [Osm::Meeting::BadgeLink.new(
319
+ :badge_type => :activity,
320
+ :badge_section => :beavers,
321
+ :requirement_label => 'l',
322
+ :data => '',
323
+ :badge_name => 'Badge name',
324
+ :badge_id => 181,
325
+ :badge_version => 0,
326
+ :requirement_id => 93384,
327
+ )]
325
328
  )
326
329
  meeting.update(@api).should be_true
327
330
  end
@@ -601,6 +601,16 @@ describe "Member" do
601
601
  @member.myscout_link(@api, :details).should == 'https://www.onlinescoutmanager.co.uk/parents/details.php?sc=1&se=2&c=KEY-HERE'
602
602
  end
603
603
 
604
+ it "Census detail entry" do
605
+ @member.stub(:myscout_link_key) { 'KEY-HERE' }
606
+ @member.myscout_link(@api, :census).should == 'https://www.onlinescoutmanager.co.uk/parents/census.php?sc=1&se=2&c=KEY-HERE'
607
+ end
608
+
609
+ it "Gift Aid consent" do
610
+ @member.stub(:myscout_link_key) { 'KEY-HERE' }
611
+ @member.myscout_link(@api, :giftaid).should == 'https://www.onlinescoutmanager.co.uk/parents/giftaid.php?sc=1&se=2&c=KEY-HERE'
612
+ end
613
+
604
614
  end
605
615
 
606
616
  end
data/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Osm
2
- VERSION = "1.2.14"
2
+ VERSION = "1.2.15.dev"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: osm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.14
4
+ version: 1.2.15.dev
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Gauld
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-06 00:00:00.000000000 Z
11
+ date: 2014-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -279,9 +279,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
279
279
  version: '0'
280
280
  required_rubygems_version: !ruby/object:Gem::Requirement
281
281
  requirements:
282
- - - ! '>='
282
+ - - ! '>'
283
283
  - !ruby/object:Gem::Version
284
- version: '0'
284
+ version: 1.3.1
285
285
  requirements: []
286
286
  rubyforge_project: osm
287
287
  rubygems_version: 2.2.2