osm 1.2.14 → 1.2.15.dev

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.
@@ -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