great_schools 0.1.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.
- checksums.yaml +15 -0
- data/.gitignore +17 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +58 -0
- data/Rakefile +6 -0
- data/great_schools.gemspec +28 -0
- data/lib/great_schools.rb +88 -0
- data/lib/great_schools/census.rb +52 -0
- data/lib/great_schools/city.rb +72 -0
- data/lib/great_schools/district.rb +29 -0
- data/lib/great_schools/error.rb +51 -0
- data/lib/great_schools/ethnicity.rb +5 -0
- data/lib/great_schools/model.rb +45 -0
- data/lib/great_schools/rank.rb +5 -0
- data/lib/great_schools/result.rb +5 -0
- data/lib/great_schools/review.rb +47 -0
- data/lib/great_schools/school.rb +177 -0
- data/lib/great_schools/score.rb +47 -0
- data/lib/great_schools/test.rb +22 -0
- data/lib/great_schools/version.rb +14 -0
- data/spec/fixtures/browse_districts.xml +35 -0
- data/spec/fixtures/browse_schools.xml +46 -0
- data/spec/fixtures/city_overview.xml +12 -0
- data/spec/fixtures/error.xml +7 -0
- data/spec/fixtures/nearby_cities.xml +25 -0
- data/spec/fixtures/nearby_schools.xml +37 -0
- data/spec/fixtures/school_census_data.xml +40 -0
- data/spec/fixtures/school_profile.xml +70 -0
- data/spec/fixtures/school_reviews.xml +21 -0
- data/spec/fixtures/school_search.xml +38 -0
- data/spec/fixtures/school_test_scores.xml +33 -0
- data/spec/great_schools/census_spec.rb +28 -0
- data/spec/great_schools/city_spec.rb +72 -0
- data/spec/great_schools/district_spec.rb +34 -0
- data/spec/great_schools/ethnicity_spec.rb +17 -0
- data/spec/great_schools/rank_spec.rb +33 -0
- data/spec/great_schools/result_spec.rb +26 -0
- data/spec/great_schools/review_spec.rb +72 -0
- data/spec/great_schools/school_spec.rb +167 -0
- data/spec/great_schools/score_spec.rb +20 -0
- data/spec/great_schools/test_spec.rb +35 -0
- data/spec/great_schools_spec.rb +14 -0
- data/spec/spec_helper.rb +18 -0
- metadata +195 -0
@@ -0,0 +1,33 @@
|
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helper'))
|
2
|
+
|
3
|
+
describe GreatSchools::Score do
|
4
|
+
describe '#for_school' do
|
5
|
+
it 'should populate score models from the returned XML, through score' do
|
6
|
+
xml = File.read(File.expand_path(
|
7
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'school_test_scores.xml')
|
8
|
+
))
|
9
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/school/tests/AZ/1?key=0123456789ABCDEF', body: xml)
|
10
|
+
|
11
|
+
score = GreatSchools::Score.for_school('AZ', 1)
|
12
|
+
rank = score.rank
|
13
|
+
|
14
|
+
rank.name.should eql('AZ GS Rating')
|
15
|
+
rank.scale.should eql('1-10')
|
16
|
+
rank.year.should eql('2008')
|
17
|
+
rank.score.should eql('9.0')
|
18
|
+
rank.description.should eql(<<-TEXT.squish)
|
19
|
+
GreatSchools Ratings for Arizona are based on the 2007-2008 Arizona's
|
20
|
+
Instrument to Measure Standards (AIMS) reading, writing and math results.
|
21
|
+
GreatSchools compared the test results for each grade and subject across
|
22
|
+
all Arizona schools and divided them into 1 through 10 ratings (10 is
|
23
|
+
the best). Please note, private schools are not required to release test
|
24
|
+
results, so ratings are available only for public schools. GreatSchools
|
25
|
+
Ratings cannot be compared across states, because of differences in the
|
26
|
+
states' standardized testing programs. Keep in mind that when comparing
|
27
|
+
schools using GreatSchools Ratings it's important to factor in other
|
28
|
+
information, including the quality of each school's teachers, the school
|
29
|
+
culture, special programs, etc.
|
30
|
+
TEXT
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helper'))
|
2
|
+
|
3
|
+
describe GreatSchools::Score do
|
4
|
+
describe '#for_school' do
|
5
|
+
it 'should populate score models from the returned XML, through test (through score)' do
|
6
|
+
xml = File.read(File.expand_path(
|
7
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'school_test_scores.xml')
|
8
|
+
))
|
9
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/school/tests/AZ/1?key=0123456789ABCDEF', body: xml)
|
10
|
+
|
11
|
+
score = GreatSchools::Score.for_school('AZ', 1)
|
12
|
+
results = score.tests.first.results
|
13
|
+
|
14
|
+
results.size.should eql(2)
|
15
|
+
results[0].subject_name.should eql('Writing')
|
16
|
+
results[1].subject_name.should eql('Reading')
|
17
|
+
|
18
|
+
result = results.first
|
19
|
+
result.grade_name.should eql('10')
|
20
|
+
result.score.should eql('81.0')
|
21
|
+
result.subject_name.should eql('Writing')
|
22
|
+
result.test_id.should eql('AZ00137')
|
23
|
+
result.year.should eql('2008')
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,72 @@
|
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helper'))
|
2
|
+
|
3
|
+
describe GreatSchools::Review do
|
4
|
+
describe '#for_city' do
|
5
|
+
it 'should populate review models from the returned XML' do
|
6
|
+
xml = File.read(File.expand_path(
|
7
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'school_reviews.xml')
|
8
|
+
))
|
9
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/reviews/city/CA/Alameda?limit=2&key=0123456789ABCDEF', body: xml)
|
10
|
+
|
11
|
+
reviews = GreatSchools::Review.for_city('CA', 'Alameda', limit: 2)
|
12
|
+
|
13
|
+
reviews.size.should eql(2)
|
14
|
+
reviews[0].submitter.should eql('former student')
|
15
|
+
reviews[1].submitter.should eql('parent')
|
16
|
+
|
17
|
+
review = reviews.first
|
18
|
+
review.school_name.should eql('Alameda High School')
|
19
|
+
review.school_address.should eql('2201 Encinal Ave., Alameda, CA 94501')
|
20
|
+
review.review_link.should eql('http://www.greatschools.org/school/parentReviews.page?state=CA&id=1&s_cid=gsapi&lr=true#ps398220')
|
21
|
+
review.rating.should eql('3')
|
22
|
+
review.submitter.should eql('former student')
|
23
|
+
review.posted_date.should eql('2006/06/06')
|
24
|
+
review.comments.should eql('The staff gets on the level of the students and everything is kaotic.')
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
describe '#for_school' do
|
29
|
+
it 'should populate review models from the returned XML' do
|
30
|
+
xml = File.read(File.expand_path(
|
31
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'school_reviews.xml')
|
32
|
+
))
|
33
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/reviews/school/CA/1?limit=2&key=0123456789ABCDEF', body: xml)
|
34
|
+
|
35
|
+
reviews = GreatSchools::Review.for_school('CA', 1, limit: 2)
|
36
|
+
|
37
|
+
reviews.size.should eql(2)
|
38
|
+
reviews[0].submitter.should eql('former student')
|
39
|
+
reviews[1].submitter.should eql('parent')
|
40
|
+
|
41
|
+
review = reviews.first
|
42
|
+
review.school_name.should eql('Alameda High School')
|
43
|
+
review.school_address.should eql('2201 Encinal Ave., Alameda, CA 94501')
|
44
|
+
review.review_link.should eql('http://www.greatschools.org/school/parentReviews.page?state=CA&id=1&s_cid=gsapi&lr=true#ps398220')
|
45
|
+
review.rating.should eql('3')
|
46
|
+
review.submitter.should eql('former student')
|
47
|
+
review.posted_date.should eql('2006/06/06')
|
48
|
+
review.comments.should eql('The staff gets on the level of the students and everything is kaotic.')
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
it 'should populate review models from the returned XML, through a school profile' do
|
53
|
+
xml = File.read(File.expand_path(
|
54
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'school_profile.xml')
|
55
|
+
))
|
56
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/schools/CA/1?key=0123456789ABCDEF', body: xml)
|
57
|
+
|
58
|
+
school = GreatSchools::School.profile('CA', 1)
|
59
|
+
reviews = school.parent_reviews
|
60
|
+
|
61
|
+
reviews.size.should eql(5)
|
62
|
+
|
63
|
+
review = reviews.first
|
64
|
+
review.school_name.should eql('Alameda High School')
|
65
|
+
review.school_address.should eql('2201 Encinal Ave., Alameda, CA 94501')
|
66
|
+
review.review_link.should eql('http://www.greatschools.org/school/parentReviews.page?state=CA&id=1&s_cid=gsapi&lr=true#ps398220')
|
67
|
+
review.rating.should eql('3')
|
68
|
+
review.submitter.should eql('former student')
|
69
|
+
review.posted_date.should eql('2006/06/06')
|
70
|
+
review.comments.should eql('The staff gets on the level of the students and everything is kaotic.')
|
71
|
+
end
|
72
|
+
end
|
@@ -0,0 +1,167 @@
|
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helper'))
|
2
|
+
|
3
|
+
describe GreatSchools::School do
|
4
|
+
describe '#browse' do
|
5
|
+
it 'should populate school models from the returned XML' do
|
6
|
+
xml = File.read(File.expand_path(
|
7
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'browse_schools.xml')
|
8
|
+
))
|
9
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/schools/CA/Truckee?limit=2&key=0123456789ABCDEF', body: xml)
|
10
|
+
|
11
|
+
schools = GreatSchools::School.browse('CA', 'Truckee', limit: 2)
|
12
|
+
|
13
|
+
schools.size.should eql(2)
|
14
|
+
schools[0].name.should eql('Alder Creek Middle School')
|
15
|
+
schools[1].name.should eql('Cold Stream Alternative School')
|
16
|
+
|
17
|
+
school = schools.first
|
18
|
+
school.id.should eql('13978')
|
19
|
+
school.name.should eql('Alder Creek Middle School')
|
20
|
+
school.type.should eql('public')
|
21
|
+
school.grade_range.should eql('6-8')
|
22
|
+
school.enrollment.should eql('598')
|
23
|
+
school.city.should eql('Truckee')
|
24
|
+
school.state.should eql('CA')
|
25
|
+
school.district_id.should eql('509')
|
26
|
+
school.district.should eql('Tahoe-Truckee Joint Unified School District')
|
27
|
+
school.district_nces_id.should eql('0638770')
|
28
|
+
school.address.should eql('10931 Alder Dr., Truckee, CA 96161')
|
29
|
+
school.phone.should eql('(530) 582-2750')
|
30
|
+
school.fax.should eql('(530) 582-7640')
|
31
|
+
school.website.should eql('http://www.ttusd.org')
|
32
|
+
school.nces_id.should eql('063877011005')
|
33
|
+
school.latitude.should eql('39.3454')
|
34
|
+
school.longitude.should eql('-120.1735')
|
35
|
+
school.overview_link.should eql('http://www.greatschools.org/modperl/browse_school/ca/13978?s_cid=gsapi')
|
36
|
+
school.ratings_link.should eql('http://www.greatschools.org/school/rating.page?state=CA&id=13978&s_cid=gsapi')
|
37
|
+
school.reviews_link.should eql('http://www.greatschools.org/school/parentReviews.page?state=CA&id=13978&s_cid=gsapi')
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
describe '#nearby' do
|
42
|
+
it 'should populate school models from the returned XML' do
|
43
|
+
xml = File.read(File.expand_path(
|
44
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'nearby_schools.xml')
|
45
|
+
))
|
46
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/schools/nearby?state=CA&zip=94105&limit=2&key=0123456789ABCDEF', body: xml)
|
47
|
+
|
48
|
+
schools = GreatSchools::School.nearby('CA', zip_code: 94105, limit: 2)
|
49
|
+
|
50
|
+
schools.size.should eql(2)
|
51
|
+
schools[0].name.should eql('Youth Chance High School')
|
52
|
+
schools[1].name.should eql('Notre Dame des Victoires School')
|
53
|
+
|
54
|
+
school = schools.first
|
55
|
+
school.id.should eql('11536')
|
56
|
+
school.name.should eql('Youth Chance High School')
|
57
|
+
school.type.should eql('private')
|
58
|
+
school.grade_range.should eql('10-12')
|
59
|
+
school.enrollment.should eql('25')
|
60
|
+
school.city.should eql('San Francisco')
|
61
|
+
school.state.should eql('CA')
|
62
|
+
school.address.should eql('169 Steuart Street, San Francisco, CA 94105')
|
63
|
+
school.phone.should eql('(415) 615-1337')
|
64
|
+
school.nces_id.should eql('A9900759')
|
65
|
+
school.latitude.should eql('37.7924')
|
66
|
+
school.longitude.should eql('-122.3921')
|
67
|
+
school.overview_link.should eql('http://www.greatschools.org/cgi-bin/ca/private/11536?s_cid=gsapi')
|
68
|
+
school.ratings_link.should eql('http://www.greatschools.org/school/rating.page?state=CA&id=11536&s_cid=gsapi')
|
69
|
+
school.reviews_link.should eql('http://www.greatschools.org/school/parentReviews.page?state=CA&id=11536&s_cid=gsapi')
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
describe '#profile' do
|
74
|
+
it 'should populate school models from the returned XML' do
|
75
|
+
xml = File.read(File.expand_path(
|
76
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'school_profile.xml')
|
77
|
+
))
|
78
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/schools/CA/1?key=0123456789ABCDEF', body: xml)
|
79
|
+
|
80
|
+
school = GreatSchools::School.profile('CA', 1)
|
81
|
+
|
82
|
+
school.id.should eql('1')
|
83
|
+
school.name.should eql('Alameda High School')
|
84
|
+
school.type.should eql('public')
|
85
|
+
school.grade_range.should eql('9-12')
|
86
|
+
school.enrollment.should eql('1938')
|
87
|
+
school.city.should eql('Alameda')
|
88
|
+
school.state.should eql('CA')
|
89
|
+
school.district_id.should eql('1')
|
90
|
+
school.district.should eql('Alameda City Unified School District')
|
91
|
+
school.district_nces_id.should eql('0601770')
|
92
|
+
school.address.should eql('2201 Encinal Ave., Alameda, CA 94501')
|
93
|
+
school.phone.should eql('(510) 337-7022')
|
94
|
+
school.fax.should eql('(510) 521-4740')
|
95
|
+
school.website.should eql('http://ahs.alameda.k12.ca.us/')
|
96
|
+
school.nces_id.should eql('060177000041')
|
97
|
+
school.latitude.should eql('37.764267')
|
98
|
+
school.longitude.should eql('-122.24818')
|
99
|
+
school.overview_link.should eql('http://www.greatschools.org/modperl/browse_school/ca/1?s_cid=gsapi')
|
100
|
+
school.ratings_link.should eql('http://www.greatschools.org/school/rating.page?state=CA&id=1&s_cid=gsapi')
|
101
|
+
school.reviews_link.should eql('http://www.greatschools.org/school/parentReviews.page?state=CA&id=1&s_cid=gsapi')
|
102
|
+
|
103
|
+
school.parent_reviews.each do |review|
|
104
|
+
review.should be_a(GreatSchools::Review)
|
105
|
+
end
|
106
|
+
end
|
107
|
+
end
|
108
|
+
|
109
|
+
describe '#search' do
|
110
|
+
it 'should populate school models from the returned XML' do
|
111
|
+
xml = File.read(File.expand_path(
|
112
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'school_search.xml')
|
113
|
+
))
|
114
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/search/schools?limit=2&q=Alameda%20Christian&state=CA&key=0123456789ABCDEF', body: xml)
|
115
|
+
|
116
|
+
schools = GreatSchools::School.search('CA', 'Alameda Christian', limit: 2)
|
117
|
+
|
118
|
+
schools.size.should eql(2)
|
119
|
+
schools[0].name.should eql('Alameda Christian School')
|
120
|
+
schools[1].name.should eql('Chinese Christian Schools-Alameda')
|
121
|
+
|
122
|
+
school = schools.first
|
123
|
+
school.id.should eql('8485')
|
124
|
+
school.name.should eql('Alameda Christian School')
|
125
|
+
school.type.should eql('private')
|
126
|
+
school.grade_range.should eql('K-8')
|
127
|
+
school.enrollment.should eql('52')
|
128
|
+
school.parent_rating.should eql('5')
|
129
|
+
school.city.should eql('Alameda')
|
130
|
+
school.state.should eql('CA')
|
131
|
+
school.address.should eql('2226 Pacific Ave, Alameda, CA 94501')
|
132
|
+
school.phone.should eql('(510) 523-1000')
|
133
|
+
school.nces_id.should eql('00079445')
|
134
|
+
school.latitude.should eql('37.768623')
|
135
|
+
school.longitude.should eql('-122.243965')
|
136
|
+
school.overview_link.should eql('http://www.greatschools.org/cgi-bin/ca/private/8485?s_cid=gsapi')
|
137
|
+
school.ratings_link.should eql('http://www.greatschools.org/school/rating.page?state=CA&id=8485&s_cid=gsapi')
|
138
|
+
school.reviews_link.should eql('http://www.greatschools.org/school/parentReviews.page?state=CA&id=8485&s_cid=gsapi')
|
139
|
+
end
|
140
|
+
end
|
141
|
+
|
142
|
+
let(:school) { GreatSchools::School.new(state: 'CA', gs_id: 1) }
|
143
|
+
|
144
|
+
describe '.census' do
|
145
|
+
it 'should make a GreatSchools::Census#for_school call using state/gs_id attributes' do
|
146
|
+
GreatSchools::Census.should_receive(:for_school).with('CA', 1)
|
147
|
+
|
148
|
+
school.census
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
152
|
+
describe '.reviews' do
|
153
|
+
it 'should make a GreatSchools::Review#for_school call using state/gs_id attributes' do
|
154
|
+
GreatSchools::Review.should_receive(:for_school).with('CA', 1, {})
|
155
|
+
|
156
|
+
school.reviews
|
157
|
+
end
|
158
|
+
end
|
159
|
+
|
160
|
+
describe '.score' do
|
161
|
+
it 'should make a GreatSchools::Score#for_school call using state/gs_id attributes' do
|
162
|
+
GreatSchools::Score.should_receive(:for_school).with('CA', 1)
|
163
|
+
|
164
|
+
school.score
|
165
|
+
end
|
166
|
+
end
|
167
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helper'))
|
2
|
+
|
3
|
+
describe GreatSchools::Score do
|
4
|
+
describe '#for_school' do
|
5
|
+
it 'should populate score models from the returned XML' do
|
6
|
+
xml = File.read(File.expand_path(
|
7
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'school_test_scores.xml')
|
8
|
+
))
|
9
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/school/tests/AZ/1?key=0123456789ABCDEF', body: xml)
|
10
|
+
|
11
|
+
score = GreatSchools::Score.for_school('AZ', 1)
|
12
|
+
|
13
|
+
score.school_name.should eql('Flagstaff High School')
|
14
|
+
score.rank.should be_a(GreatSchools::Rank)
|
15
|
+
score.tests.each do |test|
|
16
|
+
test.should be_a(GreatSchools::Test)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'spec_helper'))
|
2
|
+
|
3
|
+
describe GreatSchools::Test do
|
4
|
+
it 'should populate score models from the returned XML, through score' do
|
5
|
+
xml = File.read(File.expand_path(
|
6
|
+
File.join(File.dirname(__FILE__), '..', 'fixtures', 'school_test_scores.xml')
|
7
|
+
))
|
8
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/school/tests/AZ/1?key=0123456789ABCDEF', body: xml)
|
9
|
+
|
10
|
+
score = GreatSchools::Score.for_school('AZ', 1)
|
11
|
+
tests = score.tests
|
12
|
+
|
13
|
+
tests.size.should eql(1)
|
14
|
+
|
15
|
+
test = tests.first
|
16
|
+
test.name.should eql('Arizona\'s Instrument to Measure Standards')
|
17
|
+
test.id.should eql('AZ00137')
|
18
|
+
test.abbreviation.should eql('AIMS')
|
19
|
+
test.scale.should eql('% meeting or exceeding standards')
|
20
|
+
test.level_code.should eql('e,m,h')
|
21
|
+
test.description.should eql(<<-TEXT.squish)
|
22
|
+
In 2007-2008 Arizona's Instrument to Measure Standards (AIMS) was used to
|
23
|
+
test students in reading, writing and mathematics in grades 3 through 8
|
24
|
+
and 10, and in science in grades 4, 8 and high school. AIMS is a
|
25
|
+
standards-based test, which means that it measures how well students have
|
26
|
+
mastered Arizona's learning standards. Students must pass the grade 10
|
27
|
+
AIMS in order to graduate. The goal is for all students to meet or exceed
|
28
|
+
state standards on the test.
|
29
|
+
TEXT
|
30
|
+
|
31
|
+
test.results.each do |result|
|
32
|
+
result.should be_a(GreatSchools::Result)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__), 'spec_helper'))
|
2
|
+
|
3
|
+
describe GreatSchools::API do
|
4
|
+
it 'should raise an error when our key is rejected' do
|
5
|
+
xml = File.read(File.expand_path(
|
6
|
+
File.join(File.dirname(__FILE__), 'fixtures', 'error.xml')
|
7
|
+
))
|
8
|
+
FakeWeb.register_uri(:get, 'http://api.greatschools.org/reviews/city/CA/Foster-City?key=0123456789ABCDEF', body: xml, status: [401, 'Unauthorized'])
|
9
|
+
|
10
|
+
expect {
|
11
|
+
GreatSchools::API.get('reviews/city/CA/Foster-City')
|
12
|
+
}.to raise_error(GreatSchools::Error)
|
13
|
+
end
|
14
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'bundler/setup'
|
3
|
+
|
4
|
+
require 'active_support/core_ext/string/filters'
|
5
|
+
require 'fakeweb'
|
6
|
+
|
7
|
+
require 'great_schools'
|
8
|
+
|
9
|
+
RSpec.configure do |config|
|
10
|
+
config.before(:suite) do
|
11
|
+
FakeWeb.allow_net_connect = false
|
12
|
+
GreatSchools::API.key = '0123456789ABCDEF'
|
13
|
+
end
|
14
|
+
|
15
|
+
config.after(:suite) do
|
16
|
+
FakeWeb.allow_net_connect = true
|
17
|
+
end
|
18
|
+
end
|
metadata
ADDED
@@ -0,0 +1,195 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: great_schools
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Michael J. Sepcot
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2013-11-23 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.3'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: fakeweb
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ! '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ! '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ! '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rspec
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ! '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: activesupport
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ! '>='
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 3.0.0
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ! '>='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 3.0.0
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: httparty
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ~>
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 0.12.0
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ~>
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.12.0
|
97
|
+
description: The GreatSchools API allows access to School Profiles, Test Scores, School
|
98
|
+
Reviews, GreatSchools Ratings, School Districts, and City Profiles.
|
99
|
+
email:
|
100
|
+
- developer@sepcot.com
|
101
|
+
executables: []
|
102
|
+
extensions: []
|
103
|
+
extra_rdoc_files: []
|
104
|
+
files:
|
105
|
+
- .gitignore
|
106
|
+
- Gemfile
|
107
|
+
- LICENSE.txt
|
108
|
+
- README.md
|
109
|
+
- Rakefile
|
110
|
+
- great_schools.gemspec
|
111
|
+
- lib/great_schools.rb
|
112
|
+
- lib/great_schools/census.rb
|
113
|
+
- lib/great_schools/city.rb
|
114
|
+
- lib/great_schools/district.rb
|
115
|
+
- lib/great_schools/error.rb
|
116
|
+
- lib/great_schools/ethnicity.rb
|
117
|
+
- lib/great_schools/model.rb
|
118
|
+
- lib/great_schools/rank.rb
|
119
|
+
- lib/great_schools/result.rb
|
120
|
+
- lib/great_schools/review.rb
|
121
|
+
- lib/great_schools/school.rb
|
122
|
+
- lib/great_schools/score.rb
|
123
|
+
- lib/great_schools/test.rb
|
124
|
+
- lib/great_schools/version.rb
|
125
|
+
- spec/fixtures/browse_districts.xml
|
126
|
+
- spec/fixtures/browse_schools.xml
|
127
|
+
- spec/fixtures/city_overview.xml
|
128
|
+
- spec/fixtures/error.xml
|
129
|
+
- spec/fixtures/nearby_cities.xml
|
130
|
+
- spec/fixtures/nearby_schools.xml
|
131
|
+
- spec/fixtures/school_census_data.xml
|
132
|
+
- spec/fixtures/school_profile.xml
|
133
|
+
- spec/fixtures/school_reviews.xml
|
134
|
+
- spec/fixtures/school_search.xml
|
135
|
+
- spec/fixtures/school_test_scores.xml
|
136
|
+
- spec/great_schools/census_spec.rb
|
137
|
+
- spec/great_schools/city_spec.rb
|
138
|
+
- spec/great_schools/district_spec.rb
|
139
|
+
- spec/great_schools/ethnicity_spec.rb
|
140
|
+
- spec/great_schools/rank_spec.rb
|
141
|
+
- spec/great_schools/result_spec.rb
|
142
|
+
- spec/great_schools/review_spec.rb
|
143
|
+
- spec/great_schools/school_spec.rb
|
144
|
+
- spec/great_schools/score_spec.rb
|
145
|
+
- spec/great_schools/test_spec.rb
|
146
|
+
- spec/great_schools_spec.rb
|
147
|
+
- spec/spec_helper.rb
|
148
|
+
homepage: https://github.com/msepcot/great_schools
|
149
|
+
licenses:
|
150
|
+
- MIT
|
151
|
+
metadata: {}
|
152
|
+
post_install_message:
|
153
|
+
rdoc_options: []
|
154
|
+
require_paths:
|
155
|
+
- lib
|
156
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
157
|
+
requirements:
|
158
|
+
- - ! '>='
|
159
|
+
- !ruby/object:Gem::Version
|
160
|
+
version: '0'
|
161
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
162
|
+
requirements:
|
163
|
+
- - ! '>='
|
164
|
+
- !ruby/object:Gem::Version
|
165
|
+
version: '0'
|
166
|
+
requirements: []
|
167
|
+
rubyforge_project:
|
168
|
+
rubygems_version: 2.0.3
|
169
|
+
signing_key:
|
170
|
+
specification_version: 4
|
171
|
+
summary: A Ruby interface to the GreatSchools API.
|
172
|
+
test_files:
|
173
|
+
- spec/fixtures/browse_districts.xml
|
174
|
+
- spec/fixtures/browse_schools.xml
|
175
|
+
- spec/fixtures/city_overview.xml
|
176
|
+
- spec/fixtures/error.xml
|
177
|
+
- spec/fixtures/nearby_cities.xml
|
178
|
+
- spec/fixtures/nearby_schools.xml
|
179
|
+
- spec/fixtures/school_census_data.xml
|
180
|
+
- spec/fixtures/school_profile.xml
|
181
|
+
- spec/fixtures/school_reviews.xml
|
182
|
+
- spec/fixtures/school_search.xml
|
183
|
+
- spec/fixtures/school_test_scores.xml
|
184
|
+
- spec/great_schools/census_spec.rb
|
185
|
+
- spec/great_schools/city_spec.rb
|
186
|
+
- spec/great_schools/district_spec.rb
|
187
|
+
- spec/great_schools/ethnicity_spec.rb
|
188
|
+
- spec/great_schools/rank_spec.rb
|
189
|
+
- spec/great_schools/result_spec.rb
|
190
|
+
- spec/great_schools/review_spec.rb
|
191
|
+
- spec/great_schools/school_spec.rb
|
192
|
+
- spec/great_schools/score_spec.rb
|
193
|
+
- spec/great_schools/test_spec.rb
|
194
|
+
- spec/great_schools_spec.rb
|
195
|
+
- spec/spec_helper.rb
|