osm 0.0.23 → 0.0.24

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## Version 0.0.24
2
+
3
+ * Make Section::FlexiRecord sortable
4
+
1
5
  ## Version 0.0.23
2
6
 
3
7
  * get\_badge\_stock\_levels now returns a hash whoose values are Fixnum not String
data/README.md CHANGED
@@ -110,14 +110,12 @@ however it should be noted that when the OSM API adds a feature it can be diffic
110
110
  * Register - Update attendance
111
111
  * Flexi Records:
112
112
  * Update data
113
- * Delete
114
- * Update
115
113
  * Add Column
116
114
  * Events:
117
115
  * Attendance (everything)
116
+ * Add column
118
117
  * Create
119
118
  * Update
120
- * Delete
121
119
  * Member:
122
120
  * Update
123
121
  * Add
data/lib/osm/section.rb CHANGED
@@ -102,6 +102,7 @@ module Osm
102
102
  fr.each do |record_data|
103
103
  attributes[:flexi_records].push FlexiRecord.from_api(record_data)
104
104
  end
105
+ attributes[:flexi_records].sort
105
106
 
106
107
  new(attributes)
107
108
  end
@@ -137,17 +138,17 @@ module Osm
137
138
  end
138
139
  end
139
140
 
140
- def <=>(another_section)
141
+ def <=>(another)
141
142
  begin
142
- return self.role <=> another_section.role
143
+ return self.role <=> another.role
143
144
  rescue NoMethodError
144
- return false
145
+ return 1
145
146
  end
146
147
  end
147
148
 
148
- def ==(another_section)
149
+ def ==(another)
149
150
  begin
150
- return self.id == another_section.id
151
+ return self.id == another.id
151
152
  rescue NoMethodError
152
153
  return false
153
154
  end
@@ -171,6 +172,7 @@ module Osm
171
172
  "#<#{self.class.name}#{separator}#{attribute_descriptions}>"
172
173
  end
173
174
 
175
+
174
176
  class FlexiRecord
175
177
  include ::ActiveAttr::MassAssignmentSecurity
176
178
  include ::ActiveAttr::Model
@@ -206,6 +208,15 @@ module Osm
206
208
  :name => data['name'],
207
209
  })
208
210
  end
211
+
212
+ def <=>(another)
213
+ begin
214
+ return self.name <=> another.name
215
+ rescue NoMethodError
216
+ return 1
217
+ end
218
+ end
219
+
209
220
  end # Class Section::FlexiRecord
210
221
 
211
222
  end # Class Section
@@ -154,4 +154,14 @@ describe "Section" do
154
154
  end
155
155
  end
156
156
 
157
+
158
+ it "Sorts Flexi Records by name" do
159
+ fr1 = Osm::Section::FlexiRecord.new(:id => 1, :name => 'A')
160
+ fr2 = Osm::Section::FlexiRecord.new(:id => 1, :name => 'B')
161
+ fr3 = Osm::Section::FlexiRecord.new(:id => 1, :name => 'C')
162
+ records = [fr2, fr1, fr3]
163
+
164
+ records.sort.should == [fr1, fr2, fr3]
165
+ end
166
+
157
167
  end
data/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Osm
2
- VERSION = "0.0.23"
2
+ VERSION = "0.0.24"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: osm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.23
4
+ version: 0.0.24
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-25 00:00:00.000000000Z
12
+ date: 2012-09-26 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
16
- requirement: &83976150 !ruby/object:Gem::Requirement
16
+ requirement: &71355080 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '3.2'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *83976150
24
+ version_requirements: *71355080
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: httparty
27
- requirement: &83963430 !ruby/object:Gem::Requirement
27
+ requirement: &71354100 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0.9'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *83963430
35
+ version_requirements: *71354100
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: active_attr
38
- requirement: &83962070 !ruby/object:Gem::Requirement
38
+ requirement: &71353110 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0.6'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *83962070
46
+ version_requirements: *71353110
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: activemodel
49
- requirement: &83961120 !ruby/object:Gem::Requirement
49
+ requirement: &71352230 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '3.2'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *83961120
57
+ version_requirements: *71352230
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rake
60
- requirement: &83959290 !ruby/object:Gem::Requirement
60
+ requirement: &71351620 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0.9'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *83959290
68
+ version_requirements: *71351620
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec
71
- requirement: &83957900 !ruby/object:Gem::Requirement
71
+ requirement: &71350940 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '2.11'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *83957900
79
+ version_requirements: *71350940
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: fakeweb
82
- requirement: &83955930 !ruby/object:Gem::Requirement
82
+ requirement: &71350120 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ~>
@@ -87,7 +87,7 @@ dependencies:
87
87
  version: '1.3'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *83955930
90
+ version_requirements: *71350120
91
91
  description: Use the Online Scout Manager API (https://www.onlinescoutmanager.co.uk)
92
92
  to retrieve and save data.
93
93
  email: