surveyor 1.1.0 → 1.2.0

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.
@@ -299,9 +299,9 @@ module SurveyorParserDependencyConditionMethods
299
299
  a0, a1, a2 = args
300
300
  self.attributes = ({
301
301
  :operator => a1 || "==",
302
- :question_reference => a0.to_s.gsub(/^q_/, ""),
302
+ :question_reference => a0.to_s.gsub(/^q_|^question_/, ""),
303
303
  :rule_key => reference_identifier
304
- }.merge( a2.is_a?(Hash) ? a2 : { :answer_reference => a2.to_s.gsub(/^a_/, "") }))
304
+ }.merge( a2.is_a?(Hash) ? a2 : { :answer_reference => a2.to_s.gsub(/^a_|^answer_/, "") }))
305
305
  context[:dependency].dependency_conditions << context[:dependency_condition] = self
306
306
  context[:dependency_conditions] << self
307
307
  end
@@ -1,7 +1,5 @@
1
1
  %w(survey survey_section question_group question dependency dependency_condition answer validation validation_condition).each {|model| require model }
2
2
  require 'active_support' # for humanize
3
- require 'fastercsv'
4
- require 'csv'
5
3
  module Surveyor
6
4
  class RedcapParserError < StandardError; end
7
5
  class RedcapParser
@@ -28,7 +26,7 @@ module Surveyor
28
26
  self.context[:dependency_conditions] = []
29
27
  end
30
28
  def parse(str, filename)
31
- csvlib = CSV.const_defined?(:Reader) ? FasterCSV : CSV
29
+ csvlib = Surveyor::Common.csv_impl
32
30
  begin
33
31
  csvlib.parse(str, :headers => :first_row, :return_headers => true, :header_converters => :symbol) do |r|
34
32
  if r.header_row? # header row
@@ -3,17 +3,21 @@ module Surveyor
3
3
  def render_question_text(context = nil)
4
4
  render_text(text, context)
5
5
  end
6
-
6
+
7
7
  def render_help_text(context = nil)
8
8
  render_text(help_text, context)
9
9
  end
10
-
10
+
11
11
  def render_answer_text(text, context = nil)
12
12
  render_text(text, context)
13
13
  end
14
-
14
+
15
15
  def render_text(text, context = nil)
16
- context ? context.render(text) : text
16
+ if context.is_a?(Hash)
17
+ Mustache.render(text, context)
18
+ else
19
+ context ? context.render(text) : text
20
+ end
17
21
  end
18
22
  end
19
23
  end
@@ -145,6 +145,12 @@ module Surveyor
145
145
  else
146
146
  @survey = surveys.where(:survey_version => params[:survey_version]).first
147
147
  end
148
+ render_404 and return if @survey.blank?
149
+ end
150
+
151
+ def render_404
152
+ head :status => 404
153
+ true
148
154
  end
149
155
 
150
156
  private
@@ -1,3 +1,3 @@
1
1
  module Surveyor
2
- VERSION = '1.1.0'
2
+ VERSION = '1.2.0'
3
3
  end
@@ -338,4 +338,84 @@ describe SurveyorController do
338
338
  end
339
339
  end
340
340
  end
341
+
342
+ describe "serialize a survey: GET /surveys/XYZ.json" do
343
+ render_views
344
+
345
+ let(:json) {
346
+ get :export, :survey_code => survey.access_code, :format => 'json'
347
+ JSON.parse(response.body)
348
+ }
349
+
350
+ describe 'for the same question inside and outside a question group' do
351
+ def question_text(refid)
352
+ <<-SURVEY
353
+ q "Where is a foo?", :pick => :one, :help_text => 'Look around.', :reference_identifier => #{refid.inspect},
354
+ :data_export_identifier => 'X.FOO', :common_namespace => 'F', :common_identifier => 'f'
355
+ a_L 'To the left', :data_export_identifier => 'X.L', :common_namespace => 'F', :common_identifier => 'l'
356
+ a_R 'To the right', :data_export_identifier => 'X.R', :common_namespace => 'F', :common_identifier => 'r'
357
+ a_O 'Elsewhere', :string
358
+
359
+ dependency :rule => 'R'
360
+ condition_R :q_bar, "==", :a_1
361
+ SURVEY
362
+ end
363
+
364
+ let(:survey_text) {
365
+ <<-SURVEY
366
+ survey 'xyz' do
367
+ section 'Sole' do
368
+ q_bar "Should that other question show up?", :pick => :one
369
+ a_1 'Yes'
370
+ a_2 'No'
371
+
372
+ #{question_text('foo_solo')}
373
+
374
+ group do
375
+ #{question_text('foo_grouped')}
376
+ end
377
+ end
378
+ end
379
+ SURVEY
380
+ }
381
+
382
+ let(:survey) {
383
+ Surveyor::Parser.new.parse(survey_text)
384
+ }
385
+
386
+ let(:solo_question_json) { json['sections'][0]['questions_and_groups'][1] }
387
+ let(:grouped_question_json) { json['sections'][0]['questions_and_groups'][2]['questions'][0] }
388
+
389
+ def remove_key_recursively(node, key)
390
+ case node
391
+ when Hash
392
+ node.delete(key)
393
+ node.values.each { |val| remove_key_recursively(val, key) }
394
+ when Array
395
+ node.each { |val| remove_key_recursively(val, key) }
396
+ end
397
+ end
398
+
399
+ it 'produces identical JSON except for API IDs and question reference identifers' do
400
+ [solo_question_json, grouped_question_json].each do |node|
401
+ node.reject! { |k, v| k == 'reference_identifier' }
402
+ remove_key_recursively(node, 'uuid')
403
+ end
404
+
405
+ # easier to see differences this way
406
+ solo_question_json['answers'].should == grouped_question_json['answers']
407
+ solo_question_json['dependency'].should == grouped_question_json['dependency']
408
+
409
+ solo_question_json.should == grouped_question_json
410
+ end
411
+
412
+ it 'produces the expected reference identifier for the solo question' do
413
+ solo_question_json['reference_identifier'].should == 'foo_solo'
414
+ end
415
+
416
+ it 'produces the expected reference identifer for the question in the group' do
417
+ grouped_question_json['reference_identifier'].should == 'foo_grouped'
418
+ end
419
+ end
420
+ end
341
421
  end
@@ -11,7 +11,7 @@ describe SurveyorHelper do
11
11
  q3 = Factory(:question, :dependency => Factory(:dependency))
12
12
  q4 = Factory(:question, :display_type => "image", :text => "something.jpg")
13
13
  q5 = Factory(:question, :question_group => Factory(:question_group))
14
- helper.q_text(q1).should == "1) #{q1.text}"
14
+ helper.q_text(q1).should == "<span class='qnum'>1) </span>#{q1.text}"
15
15
  helper.q_text(q2).should == q2.text
16
16
  helper.q_text(q3).should == q3.text
17
17
 
@@ -39,7 +39,7 @@ describe SurveyorHelper do
39
39
  it "should return text with with substituted value" do
40
40
  q1 = Factory(:question, :text => "You are in {{site}}")
41
41
  label = Factory(:question, :display_type => "label", :text => "Testing {{somethingElse}}")
42
- helper.q_text(q1, FakeMustacheContext).should == "1) You are in Northwestern"
42
+ helper.q_text(q1, FakeMustacheContext).should == "<span class='qnum'>1) </span>You are in Northwestern"
43
43
  helper.q_text(label, FakeMustacheContext).should == "Testing something new"
44
44
  end
45
45
  it "should return help_text for question with substituted value" do
@@ -48,7 +48,7 @@ describe SurveyorHelper do
48
48
  end
49
49
  it "should return help_text for group text with number" do
50
50
  g1 = Factory(:question_group, :text => "You are part of the {{group}}")
51
- helper.q_text(g1, FakeMustacheContext).should == "1) You are part of the NUBIC"
51
+ helper.q_text(g1, FakeMustacheContext).should == "<span class='qnum'>1) </span>You are part of the NUBIC"
52
52
  end
53
53
  it "should return help_text for group text" do
54
54
  g1 = Factory(:question_group, :text => "You are part of the {{group}}", :help_text => "Make sure you know what the {{group}} stands for")
@@ -63,7 +63,7 @@ describe SurveyorHelper do
63
63
 
64
64
  it "should return the group text with number" do
65
65
  g1 = Factory(:question_group)
66
- helper.q_text(g1, FakeMustacheContext).should == "1) #{g1.text}"
66
+ helper.q_text(g1, FakeMustacheContext).should == "<span class='qnum'>1) </span>#{g1.text}"
67
67
  end
68
68
 
69
69
  it "should find or create responses, with index" do
metadata CHANGED
@@ -1,349 +1,351 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: surveyor
3
- version: !ruby/object:Gem::Version
4
- version: 1.1.0
3
+ version: !ruby/object:Gem::Version
4
+ hash: 31
5
5
  prerelease:
6
+ segments:
7
+ - 1
8
+ - 2
9
+ - 0
10
+ version: 1.2.0
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Brian Chamberlain
9
14
  - Mark Yoon
10
15
  autorequire:
11
16
  bindir: bin
12
17
  cert_chain: []
13
- date: 2012-11-02 00:00:00.000000000 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
18
+
19
+ date: 2013-01-09 00:00:00 Z
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
16
22
  name: rails
17
- requirement: !ruby/object:Gem::Requirement
18
- none: false
19
- requirements:
20
- - - ~>
21
- - !ruby/object:Gem::Version
22
- version: '3.0'
23
- type: :runtime
24
23
  prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
- requirements:
28
- - - ~>
29
- - !ruby/object:Gem::Version
30
- version: '3.0'
31
- - !ruby/object:Gem::Dependency
32
- name: haml
33
- requirement: !ruby/object:Gem::Requirement
24
+ requirement: &id001 !ruby/object:Gem::Requirement
34
25
  none: false
35
- requirements:
26
+ requirements:
36
27
  - - ~>
37
- - !ruby/object:Gem::Version
38
- version: 3.1.3
28
+ - !ruby/object:Gem::Version
29
+ hash: 7
30
+ segments:
31
+ - 3
32
+ - 0
33
+ version: "3.0"
39
34
  type: :runtime
35
+ version_requirements: *id001
36
+ - !ruby/object:Gem::Dependency
37
+ name: haml
40
38
  prerelease: false
41
- version_requirements: !ruby/object:Gem::Requirement
39
+ requirement: &id002 !ruby/object:Gem::Requirement
42
40
  none: false
43
- requirements:
41
+ requirements:
44
42
  - - ~>
45
- - !ruby/object:Gem::Version
43
+ - !ruby/object:Gem::Version
44
+ hash: 5
45
+ segments:
46
+ - 3
47
+ - 1
48
+ - 3
46
49
  version: 3.1.3
47
- - !ruby/object:Gem::Dependency
48
- name: sass
49
- requirement: !ruby/object:Gem::Requirement
50
- none: false
51
- requirements:
52
- - - ! '>='
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
50
  type: :runtime
51
+ version_requirements: *id002
52
+ - !ruby/object:Gem::Dependency
53
+ name: sass
56
54
  prerelease: false
57
- version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
- requirements:
60
- - - ! '>='
61
- - !ruby/object:Gem::Version
62
- version: '0'
63
- - !ruby/object:Gem::Dependency
64
- name: fastercsv
65
- requirement: !ruby/object:Gem::Requirement
66
- none: false
67
- requirements:
68
- - - ~>
69
- - !ruby/object:Gem::Version
70
- version: 1.5.4
55
+ requirement: &id003 !ruby/object:Gem::Requirement
56
+ none: false
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ hash: 3
61
+ segments:
62
+ - 0
63
+ version: "0"
71
64
  type: :runtime
65
+ version_requirements: *id003
66
+ - !ruby/object:Gem::Dependency
67
+ name: fastercsv
72
68
  prerelease: false
73
- version_requirements: !ruby/object:Gem::Requirement
69
+ requirement: &id004 !ruby/object:Gem::Requirement
74
70
  none: false
75
- requirements:
71
+ requirements:
76
72
  - - ~>
77
- - !ruby/object:Gem::Version
73
+ - !ruby/object:Gem::Version
74
+ hash: 11
75
+ segments:
76
+ - 1
77
+ - 5
78
+ - 4
78
79
  version: 1.5.4
79
- - !ruby/object:Gem::Dependency
80
- name: formtastic
81
- requirement: !ruby/object:Gem::Requirement
82
- none: false
83
- requirements:
84
- - - ~>
85
- - !ruby/object:Gem::Version
86
- version: 2.1.0
87
80
  type: :runtime
81
+ version_requirements: *id004
82
+ - !ruby/object:Gem::Dependency
83
+ name: formtastic
88
84
  prerelease: false
89
- version_requirements: !ruby/object:Gem::Requirement
85
+ requirement: &id005 !ruby/object:Gem::Requirement
90
86
  none: false
91
- requirements:
87
+ requirements:
92
88
  - - ~>
93
- - !ruby/object:Gem::Version
89
+ - !ruby/object:Gem::Version
90
+ hash: 11
91
+ segments:
92
+ - 2
93
+ - 1
94
+ - 0
94
95
  version: 2.1.0
95
- - !ruby/object:Gem::Dependency
96
- name: uuidtools
97
- requirement: !ruby/object:Gem::Requirement
98
- none: false
99
- requirements:
100
- - - ~>
101
- - !ruby/object:Gem::Version
102
- version: '2.1'
103
96
  type: :runtime
97
+ version_requirements: *id005
98
+ - !ruby/object:Gem::Dependency
99
+ name: uuidtools
104
100
  prerelease: false
105
- version_requirements: !ruby/object:Gem::Requirement
101
+ requirement: &id006 !ruby/object:Gem::Requirement
106
102
  none: false
107
- requirements:
103
+ requirements:
108
104
  - - ~>
109
- - !ruby/object:Gem::Version
110
- version: '2.1'
111
- - !ruby/object:Gem::Dependency
112
- name: mustache
113
- requirement: !ruby/object:Gem::Requirement
114
- none: false
115
- requirements:
116
- - - '='
117
- - !ruby/object:Gem::Version
118
- version: 0.99.4
105
+ - !ruby/object:Gem::Version
106
+ hash: 1
107
+ segments:
108
+ - 2
109
+ - 1
110
+ version: "2.1"
119
111
  type: :runtime
112
+ version_requirements: *id006
113
+ - !ruby/object:Gem::Dependency
114
+ name: mustache
120
115
  prerelease: false
121
- version_requirements: !ruby/object:Gem::Requirement
122
- none: false
123
- requirements:
124
- - - '='
125
- - !ruby/object:Gem::Version
116
+ requirement: &id007 !ruby/object:Gem::Requirement
117
+ none: false
118
+ requirements:
119
+ - - "="
120
+ - !ruby/object:Gem::Version
121
+ hash: 411
122
+ segments:
123
+ - 0
124
+ - 99
125
+ - 4
126
126
  version: 0.99.4
127
- - !ruby/object:Gem::Dependency
128
- name: rabl
129
- requirement: !ruby/object:Gem::Requirement
130
- none: false
131
- requirements:
132
- - - ~>
133
- - !ruby/object:Gem::Version
134
- version: 0.6.13
135
127
  type: :runtime
128
+ version_requirements: *id007
129
+ - !ruby/object:Gem::Dependency
130
+ name: rabl
136
131
  prerelease: false
137
- version_requirements: !ruby/object:Gem::Requirement
132
+ requirement: &id008 !ruby/object:Gem::Requirement
138
133
  none: false
139
- requirements:
134
+ requirements:
140
135
  - - ~>
141
- - !ruby/object:Gem::Version
136
+ - !ruby/object:Gem::Version
137
+ hash: 29
138
+ segments:
139
+ - 0
140
+ - 6
141
+ - 13
142
142
  version: 0.6.13
143
- - !ruby/object:Gem::Dependency
143
+ type: :runtime
144
+ version_requirements: *id008
145
+ - !ruby/object:Gem::Dependency
144
146
  name: yard
145
- requirement: !ruby/object:Gem::Requirement
146
- none: false
147
- requirements:
148
- - - ! '>='
149
- - !ruby/object:Gem::Version
150
- version: '0'
151
- type: :development
152
147
  prerelease: false
153
- version_requirements: !ruby/object:Gem::Requirement
154
- none: false
155
- requirements:
156
- - - ! '>='
157
- - !ruby/object:Gem::Version
158
- version: '0'
159
- - !ruby/object:Gem::Dependency
160
- name: rake
161
- requirement: !ruby/object:Gem::Requirement
162
- none: false
163
- requirements:
164
- - - ! '>='
165
- - !ruby/object:Gem::Version
166
- version: 0.9.2
148
+ requirement: &id009 !ruby/object:Gem::Requirement
149
+ none: false
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ hash: 3
154
+ segments:
155
+ - 0
156
+ version: "0"
167
157
  type: :development
158
+ version_requirements: *id009
159
+ - !ruby/object:Gem::Dependency
160
+ name: rake
168
161
  prerelease: false
169
- version_requirements: !ruby/object:Gem::Requirement
170
- none: false
171
- requirements:
172
- - - ! '>='
173
- - !ruby/object:Gem::Version
162
+ requirement: &id010 !ruby/object:Gem::Requirement
163
+ none: false
164
+ requirements:
165
+ - - ">="
166
+ - !ruby/object:Gem::Version
167
+ hash: 63
168
+ segments:
169
+ - 0
170
+ - 9
171
+ - 2
174
172
  version: 0.9.2
175
- - !ruby/object:Gem::Dependency
176
- name: rspec-rails
177
- requirement: !ruby/object:Gem::Requirement
178
- none: false
179
- requirements:
180
- - - ~>
181
- - !ruby/object:Gem::Version
182
- version: 2.9.0
183
173
  type: :development
174
+ version_requirements: *id010
175
+ - !ruby/object:Gem::Dependency
176
+ name: rspec-rails
184
177
  prerelease: false
185
- version_requirements: !ruby/object:Gem::Requirement
178
+ requirement: &id011 !ruby/object:Gem::Requirement
186
179
  none: false
187
- requirements:
180
+ requirements:
188
181
  - - ~>
189
- - !ruby/object:Gem::Version
182
+ - !ruby/object:Gem::Version
183
+ hash: 43
184
+ segments:
185
+ - 2
186
+ - 9
187
+ - 0
190
188
  version: 2.9.0
191
- - !ruby/object:Gem::Dependency
192
- name: bundler
193
- requirement: !ruby/object:Gem::Requirement
194
- none: false
195
- requirements:
196
- - - ~>
197
- - !ruby/object:Gem::Version
198
- version: '1.0'
199
- - - ! '>='
200
- - !ruby/object:Gem::Version
201
- version: 1.0.21
202
189
  type: :development
190
+ version_requirements: *id011
191
+ - !ruby/object:Gem::Dependency
192
+ name: bundler
203
193
  prerelease: false
204
- version_requirements: !ruby/object:Gem::Requirement
194
+ requirement: &id012 !ruby/object:Gem::Requirement
205
195
  none: false
206
- requirements:
196
+ requirements:
207
197
  - - ~>
208
- - !ruby/object:Gem::Version
209
- version: '1.0'
210
- - - ! '>='
211
- - !ruby/object:Gem::Version
198
+ - !ruby/object:Gem::Version
199
+ hash: 15
200
+ segments:
201
+ - 1
202
+ - 0
203
+ version: "1.0"
204
+ - - ">="
205
+ - !ruby/object:Gem::Version
206
+ hash: 61
207
+ segments:
208
+ - 1
209
+ - 0
210
+ - 21
212
211
  version: 1.0.21
213
- - !ruby/object:Gem::Dependency
214
- name: factory_girl
215
- requirement: !ruby/object:Gem::Requirement
216
- none: false
217
- requirements:
218
- - - ~>
219
- - !ruby/object:Gem::Version
220
- version: 2.1.2
221
212
  type: :development
213
+ version_requirements: *id012
214
+ - !ruby/object:Gem::Dependency
215
+ name: factory_girl
222
216
  prerelease: false
223
- version_requirements: !ruby/object:Gem::Requirement
217
+ requirement: &id013 !ruby/object:Gem::Requirement
224
218
  none: false
225
- requirements:
219
+ requirements:
226
220
  - - ~>
227
- - !ruby/object:Gem::Version
221
+ - !ruby/object:Gem::Version
222
+ hash: 15
223
+ segments:
224
+ - 2
225
+ - 1
226
+ - 2
228
227
  version: 2.1.2
229
- - !ruby/object:Gem::Dependency
230
- name: sqlite3
231
- requirement: !ruby/object:Gem::Requirement
232
- none: false
233
- requirements:
234
- - - ! '>='
235
- - !ruby/object:Gem::Version
236
- version: '0'
237
228
  type: :development
229
+ version_requirements: *id013
230
+ - !ruby/object:Gem::Dependency
231
+ name: sqlite3
238
232
  prerelease: false
239
- version_requirements: !ruby/object:Gem::Requirement
240
- none: false
241
- requirements:
242
- - - ! '>='
243
- - !ruby/object:Gem::Version
244
- version: '0'
245
- - !ruby/object:Gem::Dependency
246
- name: cucumber-rails
247
- requirement: !ruby/object:Gem::Requirement
248
- none: false
249
- requirements:
250
- - - ~>
251
- - !ruby/object:Gem::Version
252
- version: 1.1.1
233
+ requirement: &id014 !ruby/object:Gem::Requirement
234
+ none: false
235
+ requirements:
236
+ - - ">="
237
+ - !ruby/object:Gem::Version
238
+ hash: 3
239
+ segments:
240
+ - 0
241
+ version: "0"
253
242
  type: :development
243
+ version_requirements: *id014
244
+ - !ruby/object:Gem::Dependency
245
+ name: cucumber-rails
254
246
  prerelease: false
255
- version_requirements: !ruby/object:Gem::Requirement
247
+ requirement: &id015 !ruby/object:Gem::Requirement
256
248
  none: false
257
- requirements:
249
+ requirements:
258
250
  - - ~>
259
- - !ruby/object:Gem::Version
251
+ - !ruby/object:Gem::Version
252
+ hash: 17
253
+ segments:
254
+ - 1
255
+ - 1
256
+ - 1
260
257
  version: 1.1.1
261
- - !ruby/object:Gem::Dependency
262
- name: database_cleaner
263
- requirement: !ruby/object:Gem::Requirement
264
- none: false
265
- requirements:
266
- - - ~>
267
- - !ruby/object:Gem::Version
268
- version: 0.6.7
269
258
  type: :development
259
+ version_requirements: *id015
260
+ - !ruby/object:Gem::Dependency
261
+ name: database_cleaner
270
262
  prerelease: false
271
- version_requirements: !ruby/object:Gem::Requirement
263
+ requirement: &id016 !ruby/object:Gem::Requirement
272
264
  none: false
273
- requirements:
265
+ requirements:
274
266
  - - ~>
275
- - !ruby/object:Gem::Version
267
+ - !ruby/object:Gem::Version
268
+ hash: 9
269
+ segments:
270
+ - 0
271
+ - 6
272
+ - 7
276
273
  version: 0.6.7
277
- - !ruby/object:Gem::Dependency
278
- name: launchy
279
- requirement: !ruby/object:Gem::Requirement
280
- none: false
281
- requirements:
282
- - - ~>
283
- - !ruby/object:Gem::Version
284
- version: 2.0.5
285
274
  type: :development
275
+ version_requirements: *id016
276
+ - !ruby/object:Gem::Dependency
277
+ name: launchy
286
278
  prerelease: false
287
- version_requirements: !ruby/object:Gem::Requirement
279
+ requirement: &id017 !ruby/object:Gem::Requirement
288
280
  none: false
289
- requirements:
281
+ requirements:
290
282
  - - ~>
291
- - !ruby/object:Gem::Version
283
+ - !ruby/object:Gem::Version
284
+ hash: 5
285
+ segments:
286
+ - 2
287
+ - 0
288
+ - 5
292
289
  version: 2.0.5
293
- - !ruby/object:Gem::Dependency
294
- name: capybara
295
- requirement: !ruby/object:Gem::Requirement
296
- none: false
297
- requirements:
298
- - - ~>
299
- - !ruby/object:Gem::Version
300
- version: 1.1.1
301
290
  type: :development
291
+ version_requirements: *id017
292
+ - !ruby/object:Gem::Dependency
293
+ name: capybara
302
294
  prerelease: false
303
- version_requirements: !ruby/object:Gem::Requirement
295
+ requirement: &id018 !ruby/object:Gem::Requirement
304
296
  none: false
305
- requirements:
297
+ requirements:
306
298
  - - ~>
307
- - !ruby/object:Gem::Version
299
+ - !ruby/object:Gem::Version
300
+ hash: 17
301
+ segments:
302
+ - 1
303
+ - 1
304
+ - 1
308
305
  version: 1.1.1
309
- - !ruby/object:Gem::Dependency
310
- name: ci_reporter
311
- requirement: !ruby/object:Gem::Requirement
312
- none: false
313
- requirements:
314
- - - '='
315
- - !ruby/object:Gem::Version
316
- version: 1.6.6
317
306
  type: :development
307
+ version_requirements: *id018
308
+ - !ruby/object:Gem::Dependency
309
+ name: ci_reporter
318
310
  prerelease: false
319
- version_requirements: !ruby/object:Gem::Requirement
320
- none: false
321
- requirements:
322
- - - '='
323
- - !ruby/object:Gem::Version
311
+ requirement: &id019 !ruby/object:Gem::Requirement
312
+ none: false
313
+ requirements:
314
+ - - "="
315
+ - !ruby/object:Gem::Version
316
+ hash: 3
317
+ segments:
318
+ - 1
319
+ - 6
320
+ - 6
324
321
  version: 1.6.6
325
- - !ruby/object:Gem::Dependency
326
- name: json_spec
327
- requirement: !ruby/object:Gem::Requirement
328
- none: false
329
- requirements:
330
- - - ~>
331
- - !ruby/object:Gem::Version
332
- version: 1.0.3
333
322
  type: :development
323
+ version_requirements: *id019
324
+ - !ruby/object:Gem::Dependency
325
+ name: json_spec
334
326
  prerelease: false
335
- version_requirements: !ruby/object:Gem::Requirement
327
+ requirement: &id020 !ruby/object:Gem::Requirement
336
328
  none: false
337
- requirements:
329
+ requirements:
338
330
  - - ~>
339
- - !ruby/object:Gem::Version
331
+ - !ruby/object:Gem::Version
332
+ hash: 17
333
+ segments:
334
+ - 1
335
+ - 0
336
+ - 3
340
337
  version: 1.0.3
338
+ type: :development
339
+ version_requirements: *id020
341
340
  description:
342
341
  email: yoon@northwestern.edu
343
342
  executables: []
343
+
344
344
  extensions: []
345
+
345
346
  extra_rdoc_files: []
346
- files:
347
+
348
+ files:
347
349
  - .gitignore
348
350
  - .rspec
349
351
  - CHANGELOG.md
@@ -540,30 +542,38 @@ files:
540
542
  - surveyor.gemspec
541
543
  homepage: http://github.com/NUBIC/surveyor
542
544
  licenses: []
543
- post_install_message: Thanks for installing surveyor! The time has come to run the
544
- surveyor generator and migrate your database, even if you are upgrading.
545
+
546
+ post_install_message: Thanks for installing surveyor! The time has come to run the surveyor generator and migrate your database, even if you are upgrading.
545
547
  rdoc_options: []
546
- require_paths:
548
+
549
+ require_paths:
547
550
  - lib
548
- required_ruby_version: !ruby/object:Gem::Requirement
551
+ required_ruby_version: !ruby/object:Gem::Requirement
549
552
  none: false
550
- requirements:
551
- - - ! '>='
552
- - !ruby/object:Gem::Version
553
- version: '0'
554
- required_rubygems_version: !ruby/object:Gem::Requirement
553
+ requirements:
554
+ - - ">="
555
+ - !ruby/object:Gem::Version
556
+ hash: 3
557
+ segments:
558
+ - 0
559
+ version: "0"
560
+ required_rubygems_version: !ruby/object:Gem::Requirement
555
561
  none: false
556
- requirements:
557
- - - ! '>='
558
- - !ruby/object:Gem::Version
559
- version: '0'
562
+ requirements:
563
+ - - ">="
564
+ - !ruby/object:Gem::Version
565
+ hash: 3
566
+ segments:
567
+ - 0
568
+ version: "0"
560
569
  requirements: []
570
+
561
571
  rubyforge_project:
562
- rubygems_version: 1.8.24
572
+ rubygems_version: 1.8.10
563
573
  signing_key:
564
574
  specification_version: 3
565
575
  summary: A rails (gem) plugin to enable surveys in your application
566
- test_files:
576
+ test_files:
567
577
  - features/ajax_submissions.feature
568
578
  - features/export_to_json.feature
569
579
  - features/no_duplicates.feature