fulcrum 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,94 @@
1
+ require 'spec_helper'
2
+
3
+ describe Fulcrum::Photo do
4
+
5
+ before(:all) do
6
+ Fulcrum::Api.configure do |config|
7
+ config.uri = 'http://foo.bar/api/v2'
8
+ config.key = 'foobar'
9
+ end
10
+ end
11
+
12
+ describe 'successful requests' do
13
+ context '#retrieve' do
14
+ it 'should retrieve the specified photo' do
15
+ photo_id = 'abc'
16
+ stub_request(:get, "#{Fulcrum::Api.configuration.uri}/photos/#{photo_id}.jpg").to_return(:status => 200)
17
+ Fulcrum::Photo.find('abc', format: 'jpg')
18
+ Fulcrum::Photo.response.status.should eq(200)
19
+ end
20
+ end
21
+
22
+ context '#create' do
23
+ it 'should create a new photo and return status 201' do
24
+ stub_request(:post, "#{Fulcrum::Api.configuration.uri}/photos.json").to_return(:status => 201)
25
+ pic = File.join(File.dirname(__FILE__), '..', 'data', 'test.jpg')
26
+ Fulcrum::Photo.create(pic, 'image/*', 'abc', '')
27
+ Fulcrum::Photo.response.status.should eq(201)
28
+ end
29
+ end
30
+
31
+ context '#thumbnail' do
32
+ it 'should retrieve the photo thumbnail and return status 200' do
33
+ photo_id = 'abc'
34
+ stub_request(:get, "#{Fulcrum::Api.configuration.uri}/photos/#{photo_id}/thumbnail.jpg").to_return(:status => 200)
35
+ r = Fulcrum::Photo.thumbnail(photo_id)
36
+ Fulcrum::Photo.response.status.should eq(200)
37
+ end
38
+ end
39
+
40
+ context '#delete' do
41
+ it 'should delete the photo and return status 200' do
42
+ photo_id = 'abc'
43
+ stub_request(:delete, "#{Fulcrum::Api.configuration.uri}/photos/#{photo_id}.json").to_return(:status => 200, :body => '{"photo":{}}')
44
+ r = Fulcrum::Photo.delete(photo_id)
45
+ Fulcrum::Photo.response.status.should eq(200)
46
+ r = JSON.parse(r)
47
+ r.keys.should include('photo')
48
+ r['photo'].should be_a(Hash)
49
+ end
50
+ end
51
+ end
52
+
53
+ describe 'unsuccessful requests' do
54
+ context '#retrieve' do
55
+ it 'should receive 404' do
56
+ photo_id = 'abc'
57
+ stub_request(:get, "#{Fulcrum::Api.configuration.uri}/photos/#{photo_id}.jpg").to_return(:status => 404)
58
+ p = Fulcrum::Photo.find(photo_id, format: 'jpg')
59
+ p.keys.should include(:error)
60
+ p[:error][:status].should eq(404)
61
+ end
62
+ end
63
+
64
+ context '#create' do
65
+ it 'should receive a 422 response' do
66
+ stub_request(:post, "#{Fulcrum::Api.configuration.uri}/photos.json").to_return(:status => 422)
67
+ pic = File.join(File.dirname(__FILE__), '..', 'data', 'test.jpg')
68
+ p = Fulcrum::Photo.create(pic, 'image/*', 'abc', '')
69
+ p.keys.should include(:error)
70
+ p[:error][:status].should eq(422)
71
+ end
72
+ end
73
+
74
+ context '#thumbnail' do
75
+ it 'should receive a 422 response' do
76
+ photo_id = 'abc'
77
+ stub_request(:get, "#{Fulcrum::Api.configuration.uri}/photos/#{photo_id}/thumbnail.jpg").to_return(:status => 404)
78
+ p = Fulcrum::Photo.thumbnail(photo_id)
79
+ p.keys.should include(:error)
80
+ p[:error][:status].should eq(404)
81
+ end
82
+ end
83
+
84
+ context '#delete' do
85
+ it 'should receive a 404 response' do
86
+ photo_id = 'abc'
87
+ stub_request(:delete, "#{Fulcrum::Api.configuration.uri}/photos/#{photo_id}.json").to_return(:status => 404)
88
+ p = Fulcrum::Photo.delete(photo_id)
89
+ p.keys.should include(:error)
90
+ p[:error][:status].should eq(404)
91
+ end
92
+ end
93
+ end
94
+ end
@@ -0,0 +1,120 @@
1
+ require 'spec_helper'
2
+
3
+ describe Fulcrum::Record do
4
+
5
+ before(:all) do
6
+ Fulcrum::Api.configure do |config|
7
+ config.uri = 'http://foo.bar/api/v2'
8
+ config.key = 'foobar'
9
+ end
10
+ end
11
+
12
+ describe 'successful requests' do
13
+ context '#all' do
14
+ it 'should retrieve all records' do
15
+ stub_request(:get, "#{Fulcrum::Api.configuration.uri}/records.json").to_return(:status => 200, :body => '{"current_page":1,"total_pages":1,"total_count":1,"per_page":50,"records":[]}')
16
+ records = Fulcrum::Record.all
17
+ Fulcrum::Record.response.status.should eq(200)
18
+ records = JSON.parse(records)
19
+ records.keys.should include('current_page')
20
+ records.keys.should include('total_pages')
21
+ records.keys.should include('total_count')
22
+ records.keys.should include('per_page')
23
+ records.keys.should include('records')
24
+ records['records'].should be_a(Array)
25
+ end
26
+ end
27
+
28
+ context '#retrieve' do
29
+ it 'should retrieve the specified record' do
30
+ record_id = 'abc'
31
+ stub_request(:get, "#{Fulcrum::Api.configuration.uri}/records/#{record_id}.json").to_return(:status => 200, :body => '{"record":{}}')
32
+ r = Fulcrum::Record.find('abc')
33
+ Fulcrum::Record.response.status.should eq(200)
34
+ r = JSON.parse(r)
35
+ r.keys.should include('record')
36
+ r['record'].should be_a(Hash)
37
+ end
38
+ end
39
+
40
+ context '#create' do
41
+ it 'should create a new record and return status 201' do
42
+ stub_request(:post, "#{Fulcrum::Api.configuration.uri}/records.json").to_return(:status => 201, :body => '{"record":{}}')
43
+ Fulcrum::RecordValidator.any_instance.stub(:validate!).and_return(true)
44
+ r = Fulcrum::Record.create({})
45
+ Fulcrum::Record.response.status.should eq(201)
46
+ r = JSON.parse(r)
47
+ r.keys.should include('record')
48
+ r['record'].should be_a(Hash)
49
+ end
50
+ end
51
+
52
+ context '#update' do
53
+ it 'should update the record and return status 200' do
54
+ record_id = 'abc'
55
+ stub_request(:put, "#{Fulcrum::Api.configuration.uri}/records/#{record_id}.json").to_return(:status => 200, :body => '{"record":{}}')
56
+ Fulcrum::RecordValidator.any_instance.stub(:validate!).and_return(true)
57
+ r = Fulcrum::Record.update(record_id, {})
58
+ Fulcrum::Record.response.status.should eq(200)
59
+ r = JSON.parse(r)
60
+ r.keys.should include('record')
61
+ r['record'].should be_a(Hash)
62
+ end
63
+ end
64
+
65
+ context '#delete' do
66
+ it 'should delete the record and return status 200' do
67
+ record_id = 'abc'
68
+ stub_request(:delete, "#{Fulcrum::Api.configuration.uri}/records/#{record_id}.json").to_return(:status => 200, :body => '{"record":{}}')
69
+ r = Fulcrum::Record.delete(record_id)
70
+ Fulcrum::Record.response.status.should eq(200)
71
+ r = JSON.parse(r)
72
+ r.keys.should include('record')
73
+ r['record'].should be_a(Hash)
74
+ end
75
+ end
76
+ end
77
+
78
+ describe 'unsuccessful requests' do
79
+ context '#retrieve' do
80
+ it 'should receive 404' do
81
+ record_id = 'abc'
82
+ stub_request(:get, "#{Fulcrum::Api.configuration.uri}/records/#{record_id}.json").to_return(:status => 404)
83
+ r = Fulcrum::Record.find(record_id)
84
+ r.keys.should include(:error)
85
+ r[:error][:status].should eq(404)
86
+ end
87
+ end
88
+
89
+ context '#create' do
90
+ it 'should receive a 422 response' do
91
+ stub_request(:post, "#{Fulcrum::Api.configuration.uri}/records.json").to_return(:status => 422)
92
+ Fulcrum::RecordValidator.any_instance.stub(:validate!).and_return(true)
93
+ r = Fulcrum::Record.create({})
94
+ r.keys.should include(:error)
95
+ r[:error][:status].should eq(422)
96
+ end
97
+ end
98
+
99
+ context '#update' do
100
+ it 'should receive a 422 response' do
101
+ record_id = 'abc'
102
+ stub_request(:put, "#{Fulcrum::Api.configuration.uri}/records/#{record_id}.json").to_return(:status => 422)
103
+ Fulcrum::RecordValidator.any_instance.stub(:validate!).and_return(true)
104
+ r = Fulcrum::Record.update(record_id, {})
105
+ r.keys.should include(:error)
106
+ r[:error][:status].should eq(422)
107
+ end
108
+ end
109
+
110
+ context '#delete' do
111
+ it 'should receive a 404 response' do
112
+ record_id = 'abc'
113
+ stub_request(:delete, "#{Fulcrum::Api.configuration.uri}/records/#{record_id}.json").to_return(:status => 404)
114
+ r = Fulcrum::Record.delete(record_id)
115
+ r.keys.should include(:error)
116
+ r[:error][:status].should eq(404)
117
+ end
118
+ end
119
+ end
120
+ end
@@ -0,0 +1,73 @@
1
+ require 'spec_helper'
2
+
3
+ describe Fulcrum::ChoiceListValidator do
4
+
5
+ describe '#validates!' do
6
+ it 'should not be valid without a choice_list hash' do
7
+ data = {}
8
+ validator = Fulcrum::ChoiceListValidator.new(data)
9
+ validator.should_not be_valid
10
+ end
11
+
12
+ it 'should not be valid if choice_list is not a hash' do
13
+ data = { 'choice_list' => nil }
14
+ validator = Fulcrum::ChoiceListValidator.new(data)
15
+ validator.should_not be_valid
16
+ end
17
+
18
+ it 'should not be valid without an empty choice_list hash' do
19
+ data = { 'choice_list' => {}}
20
+ validator = Fulcrum::ChoiceListValidator.new(data)
21
+ validator.should_not be_valid
22
+ end
23
+
24
+ it 'should not be valid without a name' do
25
+ data = { 'choice_list' => { 'name' => '' } }
26
+ validator = Fulcrum::ChoiceListValidator.new(data)
27
+ validator.should_not be_valid
28
+ validator.errors['choice_list']['name'].should_not be_blank
29
+ end
30
+
31
+ it 'should not be valid without any choices' do
32
+ data = { 'choice_list' => { 'name' => 'foobar' } }
33
+ validator = Fulcrum::ChoiceListValidator.new(data)
34
+ validator.should_not be_valid
35
+ validator.errors['choice_list']['choices'].should_not be_blank
36
+ end
37
+
38
+ it 'should not be valid with a non array choices element' do
39
+ data = { 'choice_list' => { 'name' => 'foobar', 'choices'=> {} } }
40
+ validator = Fulcrum::ChoiceListValidator.new(data)
41
+ validator.should_not be_valid
42
+ validator.errors['choice_list']['choices'].should_not be_blank
43
+ end
44
+
45
+ it 'should not be valid with an empty choices array' do
46
+ data = { 'choice_list' => { 'name' => 'foobar', 'choices'=> [] } }
47
+ validator = Fulcrum::ChoiceListValidator.new(data)
48
+ validator.should_not be_valid
49
+ validator.errors['choice_list']['choices'].should_not be_blank
50
+ end
51
+
52
+ it 'should not be valid with an empty choice' do
53
+ data = { 'choice_list' => { 'name' => 'foobar', 'choices'=> [{}] } }
54
+ validator = Fulcrum::ChoiceListValidator.new(data)
55
+ validator.should_not be_valid
56
+ validator.errors['choices']['choice'].should_not be_blank
57
+ end
58
+
59
+ it 'should not be valid with a choice that does not have label' do
60
+ data = { 'choice_list' => { 'name' => 'foobar', 'choices'=> [{ 'foo' => 'bar' }] } }
61
+ validator = Fulcrum::ChoiceListValidator.new(data)
62
+ validator.should_not be_valid
63
+ validator.errors['choice']['label'].should_not be_blank
64
+ end
65
+
66
+ it 'should be valid' do
67
+ data = { 'choice_list' => { 'name' => 'foobar', 'choices'=> [{ 'label' => 'foo' }] } }
68
+ validator = Fulcrum::ChoiceListValidator.new(data)
69
+ validator.should be_valid
70
+ validator.errors.should be_empty
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,88 @@
1
+ require 'spec_helper'
2
+
3
+ describe Fulcrum::ClassificationSetValidator do
4
+
5
+ describe '#validates!' do
6
+ it 'should not be valid without a classification_set hash' do
7
+ data = {}
8
+ validator = Fulcrum::ClassificationSetValidator.new(data)
9
+ validator.should_not be_valid
10
+ end
11
+
12
+ it 'should not be valid if classification_set is not a hash' do
13
+ data = { 'classification_set' => nil }
14
+ validator = Fulcrum::ClassificationSetValidator.new(data)
15
+ validator.should_not be_valid
16
+ end
17
+
18
+ it 'should not be valid without an empty classification_set hash' do
19
+ data = { 'classification_set' => {}}
20
+ validator = Fulcrum::ClassificationSetValidator.new(data)
21
+ validator.should_not be_valid
22
+ end
23
+
24
+ it 'should not be valid without a name' do
25
+ data = { 'classification_set' => { 'name' => '' } }
26
+ validator = Fulcrum::ClassificationSetValidator.new(data)
27
+ validator.should_not be_valid
28
+ validator.errors['classification_set']['name'].should_not be_blank
29
+ end
30
+
31
+ it 'should not be valid without any items' do
32
+ data = { 'classification_set' => { 'name' => 'foobar' } }
33
+ validator = Fulcrum::ClassificationSetValidator.new(data)
34
+ validator.should_not be_valid
35
+ validator.errors['classification_set']['items'].should_not be_blank
36
+ end
37
+
38
+ it 'should not be valid with a non array items element' do
39
+ data = { 'classification_set' => { 'name' => 'foobar', 'items'=> {} } }
40
+ validator = Fulcrum::ClassificationSetValidator.new(data)
41
+ validator.should_not be_valid
42
+ validator.errors['classification_set']['items'].should_not be_blank
43
+ end
44
+
45
+ it 'should not be valid with an empty items array' do
46
+ data = { 'classification_set' => { 'name' => 'foobar', 'items'=> [] } }
47
+ validator = Fulcrum::ClassificationSetValidator.new(data)
48
+ validator.should_not be_valid
49
+ validator.errors['classification_set']['items'].should_not be_blank
50
+ end
51
+
52
+ it 'should not be valid with an empty item' do
53
+ data = { 'classification_set' => { 'name' => 'foobar', 'items'=> [{}] } }
54
+ validator = Fulcrum::ClassificationSetValidator.new(data)
55
+ validator.should_not be_valid
56
+ validator.errors['items']['item'].should_not be_blank
57
+ end
58
+
59
+ it 'should not be valid with a item that does not have label' do
60
+ data = { 'classification_set' => { 'name' => 'foobar', 'items'=> [{ 'foo' => 'bar' }] } }
61
+ validator = Fulcrum::ClassificationSetValidator.new(data)
62
+ validator.should_not be_valid
63
+ validator.errors['item']['label'].should_not be_blank
64
+ end
65
+
66
+ it 'should be valid with a good classification set item' do
67
+ data = { 'classification_set' => { 'name' => 'foobar', 'items'=> [{ 'label' => 'foo' }] } }
68
+ validator = Fulcrum::ClassificationSetValidator.new(data)
69
+ validator.should be_valid
70
+ validator.errors.should be_empty
71
+ end
72
+
73
+ # child classifications
74
+ it 'should not be valid if an item has an empty child classifications' do
75
+ data = { 'classification_set' => { 'name' => 'foobar', 'items'=> [{ 'label' => 'bar', 'child_classifications' => [] }] } }
76
+ validator = Fulcrum::ClassificationSetValidator.new(data)
77
+ validator.should_not be_valid
78
+ validator.errors['child_classification']['item'].should_not be_blank
79
+ end
80
+
81
+ it 'should be valid with good child classifications' do
82
+ data = { 'classification_set' => { 'name' => 'foobar', 'items'=> [{ 'label' => 'bar', 'child_classifications' => [{ 'label' => 'foo'}] }] } }
83
+ validator = Fulcrum::ClassificationSetValidator.new(data)
84
+ validator.should be_valid
85
+ validator.errors.should be_empty
86
+ end
87
+ end
88
+ end
@@ -0,0 +1,4 @@
1
+ require 'spec_helper'
2
+
3
+ describe Fulcrum::FormValidator do
4
+ end
@@ -0,0 +1,53 @@
1
+ require 'spec_helper'
2
+
3
+ describe Fulcrum::RecordValidator do
4
+ describe '#validates!' do
5
+ it 'should not be valid without a record hash' do
6
+ data = {}
7
+ validator = Fulcrum::RecordValidator.new(data)
8
+ validator.should_not be_valid
9
+ end
10
+
11
+ it 'should not be valid if record is not a hash' do
12
+ data = { 'record' => nil }
13
+ validator = Fulcrum::RecordValidator.new(data)
14
+ validator.should_not be_valid
15
+ end
16
+
17
+ it 'should not be valid without a form_id' do
18
+ data = { 'record' => { 'form_id' => '' } }
19
+ validator = Fulcrum::RecordValidator.new(data)
20
+ validator.should_not be_valid
21
+ validator.errors['record']['form_id'].should_not be_blank
22
+ end
23
+
24
+ it 'should not be valid if form_values is not a hash' do
25
+ data = { 'record' => { 'form_id' => 'foobar', 'form_values' => nil } }
26
+ validator = Fulcrum::RecordValidator.new(data)
27
+ validator.should_not be_valid
28
+ validator.errors['record']['form_values'].should_not be_blank
29
+ end
30
+
31
+ it 'should not be valid if form_values is empty' do
32
+ data = { 'record' => { 'form_id' => 'foobar', 'form_values' => {} } }
33
+ validator = Fulcrum::RecordValidator.new(data)
34
+ validator.should_not be_valid
35
+ validator.errors['record']['form_values'].should_not be_blank
36
+ end
37
+
38
+ it 'should not be valid with invalid coordinates' do
39
+ data = { 'record' => { 'form_id' => 'foobar', 'form_values' => { 'foo' => 'bar'}, 'latitude' => '0', 'longitude' => '0' } }
40
+ validator = Fulcrum::RecordValidator.new(data)
41
+ validator.should_not be_valid
42
+ validator.errors['record']['coordinates'].should_not be_blank
43
+ end
44
+
45
+ it 'should be valid' do
46
+ data = { 'record' => { 'form_id' => 'foobar', 'form_values' => { 'foo' => 'bar'}, 'latitude' => '1.0', 'longitude' => '1.0' } }
47
+ validator = Fulcrum::RecordValidator.new(data)
48
+ validator.should be_valid
49
+ validator.errors.should be_empty
50
+ end
51
+ end
52
+ end
53
+
@@ -0,0 +1,5 @@
1
+ require 'rspec'
2
+ require 'webmock/rspec'
3
+ require 'fulcrum'
4
+ require 'debugger'
5
+
metadata ADDED
@@ -0,0 +1,182 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: fulcrum
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.2
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Chris Hall
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-08-07 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rake
16
+ requirement: &70332002261400 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *70332002261400
25
+ - !ruby/object:Gem::Dependency
26
+ name: rspec
27
+ requirement: &70332002260640 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *70332002260640
36
+ - !ruby/object:Gem::Dependency
37
+ name: webmock
38
+ requirement: &70332002260060 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *70332002260060
47
+ - !ruby/object:Gem::Dependency
48
+ name: debugger
49
+ requirement: &70332002259620 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *70332002259620
58
+ - !ruby/object:Gem::Dependency
59
+ name: activesupport
60
+ requirement: &70332002259100 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: *70332002259100
69
+ - !ruby/object:Gem::Dependency
70
+ name: faraday
71
+ requirement: &70332002258540 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :runtime
78
+ prerelease: false
79
+ version_requirements: *70332002258540
80
+ - !ruby/object:Gem::Dependency
81
+ name: hashie
82
+ requirement: &70332002258000 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: *70332002258000
91
+ - !ruby/object:Gem::Dependency
92
+ name: faraday_middleware
93
+ requirement: &70332002257480 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '0'
99
+ type: :runtime
100
+ prerelease: false
101
+ version_requirements: *70332002257480
102
+ description: Fulcrum API Gem
103
+ email:
104
+ - chris@spatialnetworks.com
105
+ executables: []
106
+ extensions: []
107
+ extra_rdoc_files: []
108
+ files:
109
+ - .gitignore
110
+ - .rvmrc
111
+ - Gemfile
112
+ - LICENSE
113
+ - README.md
114
+ - Rakefile
115
+ - fulcrum.gemspec
116
+ - lib/fulcrum.rb
117
+ - lib/fulcrum/api.rb
118
+ - lib/fulcrum/choice_list.rb
119
+ - lib/fulcrum/classification_set.rb
120
+ - lib/fulcrum/form.rb
121
+ - lib/fulcrum/member.rb
122
+ - lib/fulcrum/photo.rb
123
+ - lib/fulcrum/record.rb
124
+ - lib/fulcrum/validators/base_validator.rb
125
+ - lib/fulcrum/validators/choice_list_validator.rb
126
+ - lib/fulcrum/validators/classification_set_validator.rb
127
+ - lib/fulcrum/validators/form_validator.rb
128
+ - lib/fulcrum/validators/record_validator.rb
129
+ - lib/fulcrum/version.rb
130
+ - spec/data/form_data.json
131
+ - spec/data/test.jpg
132
+ - spec/lib/api_spec.rb
133
+ - spec/lib/choice_list_spec.rb
134
+ - spec/lib/classification_set_spec.rb
135
+ - spec/lib/form_spec.rb
136
+ - spec/lib/member_spec.rb
137
+ - spec/lib/photo_spec.rb
138
+ - spec/lib/record_spec.rb
139
+ - spec/lib/validators/choice_list_validator_spec.rb
140
+ - spec/lib/validators/classification_set_validator_spec.rb
141
+ - spec/lib/validators/form_validator_spec.rb
142
+ - spec/lib/validators/record_validator_spec.rb
143
+ - spec/spec_helper.rb
144
+ homepage: http://docs.fulcrumapp.com/
145
+ licenses: []
146
+ post_install_message:
147
+ rdoc_options: []
148
+ require_paths:
149
+ - lib
150
+ required_ruby_version: !ruby/object:Gem::Requirement
151
+ none: false
152
+ requirements:
153
+ - - ! '>='
154
+ - !ruby/object:Gem::Version
155
+ version: '0'
156
+ required_rubygems_version: !ruby/object:Gem::Requirement
157
+ none: false
158
+ requirements:
159
+ - - ! '>='
160
+ - !ruby/object:Gem::Version
161
+ version: '0'
162
+ requirements: []
163
+ rubyforge_project:
164
+ rubygems_version: 1.8.17
165
+ signing_key:
166
+ specification_version: 3
167
+ summary: Fulcrum API Gem
168
+ test_files:
169
+ - spec/data/form_data.json
170
+ - spec/data/test.jpg
171
+ - spec/lib/api_spec.rb
172
+ - spec/lib/choice_list_spec.rb
173
+ - spec/lib/classification_set_spec.rb
174
+ - spec/lib/form_spec.rb
175
+ - spec/lib/member_spec.rb
176
+ - spec/lib/photo_spec.rb
177
+ - spec/lib/record_spec.rb
178
+ - spec/lib/validators/choice_list_validator_spec.rb
179
+ - spec/lib/validators/classification_set_validator_spec.rb
180
+ - spec/lib/validators/form_validator_spec.rb
181
+ - spec/lib/validators/record_validator_spec.rb
182
+ - spec/spec_helper.rb