npr 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.
- data/.travis.yml +1 -4
- data/CHANGELOG.md +27 -1
- data/README.md +5 -10
- data/lib/npr/api/client.rb +6 -6
- data/lib/npr/api/message.rb +5 -5
- data/lib/npr/api/query_builder.rb +22 -23
- data/lib/npr/api/response.rb +7 -7
- data/lib/npr/concern/attr_typecast.rb +11 -13
- data/lib/npr/concern/links_association.rb +26 -0
- data/lib/npr/concern/relation.rb +17 -17
- data/lib/npr/concern/shallow_attributes.rb +12 -12
- data/lib/npr/configuration.rb +27 -27
- data/lib/npr/entity/audio.rb +3 -4
- data/lib/npr/entity/author.rb +3 -3
- data/lib/npr/entity/base.rb +1 -1
- data/lib/npr/entity/book.rb +2 -2
- data/lib/npr/entity/book_edition.rb +5 -5
- data/lib/npr/entity/byline.rb +4 -3
- data/lib/npr/entity/crop.rb +2 -2
- data/lib/npr/entity/enlargement.rb +2 -2
- data/lib/npr/entity/external_asset.rb +27 -0
- data/lib/npr/entity/formats.rb +2 -2
- data/lib/npr/entity/image.rb +4 -4
- data/lib/npr/entity/intro_text.rb +4 -4
- data/lib/npr/entity/link.rb +3 -3
- data/lib/npr/entity/list.rb +2 -4
- data/lib/npr/entity/list_text.rb +2 -2
- data/lib/npr/entity/member.rb +1 -1
- data/lib/npr/entity/member_byline.rb +2 -2
- data/lib/npr/entity/member_promo_art.rb +2 -2
- data/lib/npr/entity/mp3.rb +4 -4
- data/lib/npr/entity/name.rb +4 -4
- data/lib/npr/entity/organization.rb +2 -2
- data/lib/npr/entity/paragraph.rb +2 -2
- data/lib/npr/entity/parent.rb +23 -0
- data/lib/npr/entity/permissions.rb +14 -1
- data/lib/npr/entity/program.rb +7 -5
- data/lib/npr/entity/promo_art.rb +2 -2
- data/lib/npr/entity/promo_art_book_edition.rb +2 -3
- data/lib/npr/entity/provider.rb +4 -4
- data/lib/npr/entity/pull_quote.rb +1 -1
- data/lib/npr/entity/related_link.rb +4 -4
- data/lib/npr/entity/show.rb +3 -3
- data/lib/npr/entity/story.rb +42 -72
- data/lib/npr/entity/text.rb +7 -7
- data/lib/npr/entity/title.rb +4 -4
- data/lib/npr/entity/transcript.rb +2 -2
- data/lib/npr/errors.rb +1 -1
- data/lib/npr/version.rb +1 -1
- data/lib/npr.rb +3 -0
- data/spec/fixtures/fetch_formats.rb +4 -4
- data/spec/spec_helper.rb +1 -1
- data/spec/unit/api/client_spec.rb +4 -4
- data/spec/unit/api/message_spec.rb +9 -9
- data/spec/unit/api/query_builder_spec.rb +39 -39
- data/spec/unit/api/response_spec.rb +8 -8
- data/spec/unit/configuration_spec.rb +14 -14
- data/spec/unit/entity/audio_spec.rb +6 -6
- data/spec/unit/entity/author_spec.rb +3 -3
- data/spec/unit/entity/base_spec.rb +19 -19
- data/spec/unit/entity/book_edition_spec.rb +4 -4
- data/spec/unit/entity/book_spec.rb +2 -2
- data/spec/unit/entity/byline_spec.rb +3 -3
- data/spec/unit/entity/collection_spec.rb +1 -1
- data/spec/unit/entity/crop_spec.rb +2 -2
- data/spec/unit/entity/englargement_spec.rb +2 -2
- data/spec/unit/entity/external_assset_spec.rb +39 -0
- data/spec/unit/entity/formats_spec.rb +4 -4
- data/spec/unit/entity/image_spec.rb +7 -7
- data/spec/unit/entity/intro_text_spec.rb +3 -3
- data/spec/unit/entity/link_spec.rb +3 -3
- data/spec/unit/entity/list_spec.rb +3 -3
- data/spec/unit/entity/list_text_spec.rb +3 -3
- data/spec/unit/entity/member_byline_spec.rb +2 -2
- data/spec/unit/entity/member_promo_art_spec.rb +2 -2
- data/spec/unit/entity/member_spec.rb +4 -4
- data/spec/unit/entity/mp3_spec.rb +4 -4
- data/spec/unit/entity/name_spec.rb +3 -3
- data/spec/unit/entity/organization_spec.rb +2 -2
- data/spec/unit/entity/paragraph_spec.rb +3 -3
- data/spec/unit/entity/parent_spec.rb +39 -0
- data/spec/unit/entity/permissions_spec.rb +16 -6
- data/spec/unit/entity/program_spec.rb +7 -3
- data/spec/unit/entity/promo_art_book_edition_spec.rb +2 -2
- data/spec/unit/entity/promo_art_spec.rb +2 -2
- data/spec/unit/entity/pull_quote_spec.rb +2 -2
- data/spec/unit/entity/related_link_spec.rb +7 -7
- data/spec/unit/entity/show_spec.rb +3 -3
- data/spec/unit/entity/story_spec.rb +35 -36
- data/spec/unit/entity/text_spec.rb +4 -4
- data/spec/unit/entity/title_spec.rb +3 -3
- data/spec/unit/entity/transcript_spec.rb +2 -2
- metadata +10 -8
@@ -15,11 +15,11 @@ describe NPR::Entity::Organization do
|
|
15
15
|
}
|
16
16
|
JSON
|
17
17
|
end
|
18
|
-
|
18
|
+
|
19
19
|
before :each do
|
20
20
|
@organization = NPR::Entity::Organization.new(@fixture)
|
21
21
|
end
|
22
|
-
|
22
|
+
|
23
23
|
it "sets up attributes" do
|
24
24
|
@organization.name.should match /National/
|
25
25
|
@organization.website.should match /npr\.org/
|
@@ -9,16 +9,16 @@ describe NPR::Entity::Paragraph do
|
|
9
9
|
}
|
10
10
|
JSON
|
11
11
|
end
|
12
|
-
|
12
|
+
|
13
13
|
before :each do
|
14
14
|
@paragraph = NPR::Entity::Paragraph.new(@fixture)
|
15
15
|
end
|
16
|
-
|
16
|
+
|
17
17
|
it "sets up attributes" do
|
18
18
|
@paragraph.num.should eq 1
|
19
19
|
@paragraph.content.should match /Louisiana/
|
20
20
|
end
|
21
|
-
|
21
|
+
|
22
22
|
it "uses @content for to_s" do
|
23
23
|
@paragraph.to_s.should match /Louisiana/
|
24
24
|
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe NPR::Entity::Parent do
|
4
|
+
json_fixture do
|
5
|
+
<<-JSON
|
6
|
+
{
|
7
|
+
"id": "166488606",
|
8
|
+
"type": "author",
|
9
|
+
"title": {
|
10
|
+
"$text": "Richard K. Morgan"
|
11
|
+
},
|
12
|
+
"link": [
|
13
|
+
{
|
14
|
+
"type": "html",
|
15
|
+
"$text": "http://www.npr.org/books/authors/166488606/richard-k-morgan?ft=3&f=166480907"
|
16
|
+
},
|
17
|
+
{
|
18
|
+
"type": "api",
|
19
|
+
"$text": "http://api.npr.org/query?id=166488606&apiKey=MDA1OTI3MjQ5MDEyODUwMTE2MzM1YzNmZA004"
|
20
|
+
}
|
21
|
+
]
|
22
|
+
}
|
23
|
+
JSON
|
24
|
+
end
|
25
|
+
|
26
|
+
before :each do
|
27
|
+
@parent = NPR::Entity::Parent.new(@fixture)
|
28
|
+
end
|
29
|
+
|
30
|
+
it "sets up attributes" do
|
31
|
+
@parent.id.should be_a Integer
|
32
|
+
@parent.type.should eq "author"
|
33
|
+
@parent.title.should eq "Richard K. Morgan"
|
34
|
+
end
|
35
|
+
|
36
|
+
it "has links" do
|
37
|
+
@parent.links.should_not be_empty
|
38
|
+
end
|
39
|
+
end
|
@@ -17,20 +17,26 @@ describe NPR::Entity::Permissions do
|
|
17
17
|
}
|
18
18
|
JSON
|
19
19
|
end
|
20
|
-
|
20
|
+
|
21
21
|
before :each do
|
22
22
|
@permissions = NPR::Entity::Permissions.new(@fixture)
|
23
23
|
end
|
24
|
-
|
24
|
+
|
25
25
|
it "sets the permissions" do
|
26
26
|
@permissions.download.should eq true
|
27
27
|
@permissions.stream.should eq true
|
28
28
|
@permissions.embed.should eq true
|
29
29
|
end
|
30
|
+
|
31
|
+
it "returns booleans for the question mark methods" do
|
32
|
+
@permissions.download?.should eq true
|
33
|
+
@permissions.stream?.should eq true
|
34
|
+
@permissions.embed?.should eq true
|
35
|
+
end
|
30
36
|
end
|
31
|
-
|
37
|
+
|
32
38
|
#-------------------
|
33
|
-
|
39
|
+
|
34
40
|
describe "something is missing" do
|
35
41
|
json_fixture do
|
36
42
|
<<-JSON
|
@@ -44,13 +50,17 @@ describe NPR::Entity::Permissions do
|
|
44
50
|
}
|
45
51
|
JSON
|
46
52
|
end
|
47
|
-
|
53
|
+
|
48
54
|
before :each do
|
49
55
|
@permissions = NPR::Entity::Permissions.new(@fixture)
|
50
56
|
end
|
51
|
-
|
57
|
+
|
52
58
|
it "sets the permissions" do
|
53
59
|
@permissions.embed.should eq nil
|
54
60
|
end
|
61
|
+
|
62
|
+
it "still returns a boolean for the question-mark-method" do
|
63
|
+
@permissions.embed?.should eq false
|
64
|
+
end
|
55
65
|
end
|
56
66
|
end
|
@@ -10,18 +10,22 @@ describe NPR::Entity::Program do
|
|
10
10
|
}
|
11
11
|
JSON
|
12
12
|
end
|
13
|
-
|
13
|
+
|
14
14
|
before :each do
|
15
15
|
@program = NPR::Entity::Program.new(@fixture)
|
16
16
|
end
|
17
|
-
|
17
|
+
|
18
18
|
it "sets up attributes" do
|
19
19
|
@program.id.should be_a Integer
|
20
20
|
@program.code.should eq "ME"
|
21
21
|
@program.content.should eq "Morning Edition"
|
22
22
|
end
|
23
|
-
|
23
|
+
|
24
24
|
it "uses @content for to_s" do
|
25
25
|
@program.to_s.should eq "Morning Edition"
|
26
26
|
end
|
27
|
+
|
28
|
+
it "responds to title" do
|
29
|
+
@program.title.should eq "Morning Edition"
|
30
|
+
end
|
27
31
|
end
|
@@ -9,11 +9,11 @@ describe NPR::Entity::PromoArtBookEdition do
|
|
9
9
|
}
|
10
10
|
JSON
|
11
11
|
end
|
12
|
-
|
12
|
+
|
13
13
|
before :each do
|
14
14
|
@promo_art_book_edition = NPR::Entity::PromoArtBookEdition.new(@fixture)
|
15
15
|
end
|
16
|
-
|
16
|
+
|
17
17
|
it "sets attributes" do
|
18
18
|
@promo_art_book_edition.refId.should eq 153611349
|
19
19
|
@promo_art_book_edition.num.should eq 4
|
@@ -15,11 +15,11 @@ describe NPR::Entity::PullQuote do
|
|
15
15
|
}
|
16
16
|
JSON
|
17
17
|
end
|
18
|
-
|
18
|
+
|
19
19
|
before :each do
|
20
20
|
@pull_quote = NPR::Entity::PullQuote.new(@fixture)
|
21
21
|
end
|
22
|
-
|
22
|
+
|
23
23
|
it "sets up attributes" do
|
24
24
|
@pull_quote.id.should be_a Integer
|
25
25
|
@pull_quote.text.should match /Unstructured/
|
@@ -22,32 +22,32 @@ describe NPR::Entity::RelatedLink do
|
|
22
22
|
}
|
23
23
|
JSON
|
24
24
|
end
|
25
|
-
|
25
|
+
|
26
26
|
#----------------------------
|
27
|
-
|
27
|
+
|
28
28
|
describe "relations" do
|
29
29
|
it "has links" do
|
30
30
|
related_link = NPR::Entity::RelatedLink.new(@fixture)
|
31
31
|
related_link.links.size.should eq 2
|
32
|
-
related_link.links.first.should be_a NPR::Entity::Link
|
32
|
+
related_link.links.first.should be_a NPR::Entity::Link
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
36
36
|
#----------------------------
|
37
|
-
|
37
|
+
|
38
38
|
describe "attributes" do
|
39
39
|
before :each do
|
40
40
|
@related_link = NPR::Entity::RelatedLink.new(@fixture)
|
41
41
|
end
|
42
|
-
|
42
|
+
|
43
43
|
it "has a caption" do
|
44
44
|
@related_link.caption.should match /Ravi Shankar/
|
45
45
|
end
|
46
|
-
|
46
|
+
|
47
47
|
it "has a type" do
|
48
48
|
@related_link.type.should eq "internal"
|
49
49
|
end
|
50
|
-
|
50
|
+
|
51
51
|
it "has an id" do
|
52
52
|
@related_link.id.should be_a Integer
|
53
53
|
end
|
@@ -18,15 +18,15 @@ describe NPR::Entity::Show do
|
|
18
18
|
}
|
19
19
|
JSON
|
20
20
|
end
|
21
|
-
|
21
|
+
|
22
22
|
before :each do
|
23
23
|
@show = NPR::Entity::Show.new(@fixture)
|
24
24
|
end
|
25
|
-
|
25
|
+
|
26
26
|
it "has a program" do
|
27
27
|
@show.program.code.should eq "ME"
|
28
28
|
end
|
29
|
-
|
29
|
+
|
30
30
|
it "doesn't make a program if it's not present in the json" do
|
31
31
|
other_fixture = @fixture.dup
|
32
32
|
other_fixture.delete("program")
|
@@ -2,23 +2,25 @@ require "spec_helper"
|
|
2
2
|
|
3
3
|
describe NPR::Entity::Story do
|
4
4
|
config!(:apiKey => "key")
|
5
|
-
|
5
|
+
|
6
6
|
#--------------------------
|
7
|
-
|
7
|
+
|
8
8
|
describe "relations" do
|
9
9
|
before :each do
|
10
10
|
@story = mock_response "json/01_story_full_media.json" do
|
11
11
|
NPR::Story.find(999)
|
12
12
|
end
|
13
13
|
end
|
14
|
-
|
14
|
+
|
15
15
|
it "sets up relations" do
|
16
16
|
@story.images.first.should be_a NPR::Entity::Image
|
17
17
|
@story.bylines.first.should be_a NPR::Entity::Byline
|
18
18
|
@story.organizations.first.should be_a NPR::Entity::Organization
|
19
19
|
@story.links.first.should be_a NPR::Entity::Link
|
20
|
+
@story.parents.first.should be_a NPR::Entity::Parent
|
20
21
|
@story.related_links.first.should be_a NPR::Entity::RelatedLink
|
21
22
|
@story.shows.first.should be_a NPR::Entity::Show
|
23
|
+
@story.external_assets.first.should be_a NPR::Entity::ExternalAsset
|
22
24
|
|
23
25
|
# The fixture doesn't have these attributes
|
24
26
|
# TODO Get a fixtute with these attributes
|
@@ -27,20 +29,20 @@ describe NPR::Entity::Story do
|
|
27
29
|
@story.promo_arts.should eq []
|
28
30
|
@story.list_texts.should eq []
|
29
31
|
@story.book_editions.should eq []
|
30
|
-
|
32
|
+
|
31
33
|
@story.transcript.should eq nil
|
32
34
|
end
|
33
35
|
end
|
34
|
-
|
36
|
+
|
35
37
|
#--------------------------
|
36
|
-
|
38
|
+
|
37
39
|
describe "attributes" do
|
38
40
|
before :each do
|
39
41
|
@story = mock_response "json/01_story_full_media.json" do
|
40
42
|
NPR::Story.find(999)
|
41
43
|
end
|
42
44
|
end
|
43
|
-
|
45
|
+
|
44
46
|
it "Sets up attributes" do
|
45
47
|
@story.title.should match /Ravi Shankar/
|
46
48
|
@story.partnerId.should be_a Integer
|
@@ -56,41 +58,41 @@ describe NPR::Entity::Story do
|
|
56
58
|
@story.fullText.should match /Ravi Shankar/
|
57
59
|
end
|
58
60
|
end
|
59
|
-
|
61
|
+
|
60
62
|
describe "::find" do
|
61
63
|
it "instantiates a new story" do
|
62
64
|
story = mock_response "json/01_story_full_media.json" do
|
63
65
|
NPR::Entity::Story.find(167019577)
|
64
66
|
end
|
65
|
-
|
67
|
+
|
66
68
|
story.should be_a NPR::Entity::Story
|
67
69
|
end
|
68
|
-
|
70
|
+
|
69
71
|
it "typecasts the attributes that need it" do
|
70
72
|
story = mock_response "json/01_story_full_media.json" do
|
71
73
|
NPR::Entity::Story.find(167019577)
|
72
74
|
end
|
73
|
-
|
75
|
+
|
74
76
|
story.id.should be_a Fixnum
|
75
77
|
story.pubDate.should be_a Time
|
76
78
|
end
|
77
|
-
|
79
|
+
|
78
80
|
context "with multiple ids" do
|
79
81
|
it "only returns the first story" do
|
80
82
|
story = mock_response "json/06_story_multiple_ids.json" do
|
81
83
|
NPR::Entity::Story.find("167055503,166956822")
|
82
84
|
end
|
83
|
-
|
85
|
+
|
84
86
|
story.should be_a NPR::Entity::Story
|
85
87
|
end
|
86
88
|
end
|
87
|
-
|
89
|
+
|
88
90
|
context "with messages in the response" do
|
89
91
|
it "returns the messages" do
|
90
92
|
response = mock_response "json/04_invalid_id.json" do
|
91
93
|
NPR::Entity::Story.find(000)
|
92
94
|
end
|
93
|
-
|
95
|
+
|
94
96
|
response.should be_a Array
|
95
97
|
response.first.should be_a NPR::API::Message
|
96
98
|
end
|
@@ -99,20 +101,20 @@ describe NPR::Entity::Story do
|
|
99
101
|
|
100
102
|
#--------------------
|
101
103
|
|
102
|
-
describe "::find_by_id" do
|
104
|
+
describe "::find_by_id" do
|
103
105
|
context "with messages in the response" do
|
104
106
|
it "returns nil" do
|
105
107
|
response = mock_response "json/04_invalid_id.json" do
|
106
108
|
NPR::Entity::Story.find_by_id(000)
|
107
109
|
end
|
108
|
-
|
110
|
+
|
109
111
|
response.should eq nil
|
110
112
|
end
|
111
113
|
end
|
112
114
|
end
|
113
|
-
|
115
|
+
|
114
116
|
#--------------------
|
115
|
-
|
117
|
+
|
116
118
|
describe "::where" do
|
117
119
|
it "creates a new QueryBuilder object and runs #where on it" do
|
118
120
|
args = { :id => 9999 }
|
@@ -121,9 +123,9 @@ describe NPR::Entity::Story do
|
|
121
123
|
query.builder[:conditions].should eq args
|
122
124
|
end
|
123
125
|
end
|
124
|
-
|
126
|
+
|
125
127
|
#--------------------
|
126
|
-
|
128
|
+
|
127
129
|
describe "::order" do
|
128
130
|
it "creates a new QueryBuilder object and runs #order on it" do
|
129
131
|
args = "date descending"
|
@@ -131,9 +133,9 @@ describe NPR::Entity::Story do
|
|
131
133
|
query.builder[:order].should eq args
|
132
134
|
end
|
133
135
|
end
|
134
|
-
|
136
|
+
|
135
137
|
#--------------------
|
136
|
-
|
138
|
+
|
137
139
|
describe "::limit" do
|
138
140
|
it "creates a new QueryBuilder object and runs #limit on it" do
|
139
141
|
args = 10
|
@@ -141,9 +143,9 @@ describe NPR::Entity::Story do
|
|
141
143
|
query.builder[:limit].should eq args
|
142
144
|
end
|
143
145
|
end
|
144
|
-
|
146
|
+
|
145
147
|
#--------------------
|
146
|
-
|
148
|
+
|
147
149
|
describe "::offset" do
|
148
150
|
it "creates a new QueryBuilder object and runs #offset on it" do
|
149
151
|
args = 100
|
@@ -151,45 +153,42 @@ describe NPR::Entity::Story do
|
|
151
153
|
query.builder[:offset].should eq args
|
152
154
|
end
|
153
155
|
end
|
154
|
-
|
156
|
+
|
155
157
|
#--------------------
|
156
|
-
|
158
|
+
|
157
159
|
describe "#primary_image" do
|
158
160
|
before :each do
|
159
161
|
@story = mock_response "json/02_story_multiple_images.json" do
|
160
162
|
NPR::Story.find(999)
|
161
163
|
end
|
162
164
|
end
|
163
|
-
|
165
|
+
|
164
166
|
it "finds the first image with type 'primary'" do
|
165
167
|
@story.primary_image.type.should eq "primary"
|
166
168
|
end
|
167
|
-
|
169
|
+
|
168
170
|
it "falls back to just the first image if no primary image is available" do
|
169
171
|
# Remove the type "primary" image from the json response
|
170
172
|
@story.images.delete_if { |i| i.type == "primary" }
|
171
173
|
@story.primary_image.type.should eq "standard"
|
172
174
|
end
|
173
175
|
end
|
174
|
-
|
176
|
+
|
175
177
|
#--------------------
|
176
|
-
|
178
|
+
|
177
179
|
describe "#link_for" do
|
178
180
|
before :each do
|
179
181
|
@story = mock_response "json/02_story_multiple_images.json" do
|
180
182
|
NPR::Story.find(999)
|
181
183
|
end
|
182
184
|
end
|
183
|
-
|
185
|
+
|
184
186
|
it "finds the link for the passed-in type if it exists" do
|
185
187
|
@story.link_for("html").should match /^http:\/\//
|
186
188
|
end
|
187
|
-
|
189
|
+
|
188
190
|
it "is nil if the type isn't present" do
|
189
191
|
@story.link_for("nothing").should eq nil
|
190
192
|
end
|
191
193
|
end
|
192
|
-
|
193
|
-
#--------------------
|
194
|
-
|
195
194
|
end
|
@@ -36,22 +36,22 @@ describe NPR::Entity::Text do
|
|
36
36
|
}
|
37
37
|
JSON
|
38
38
|
end
|
39
|
-
|
39
|
+
|
40
40
|
before :each do
|
41
41
|
@text = NPR::Entity::Text.new(@fixture)
|
42
42
|
end
|
43
|
-
|
43
|
+
|
44
44
|
it "has paragraphs" do
|
45
45
|
@text.paragraphs.size.should eq 7
|
46
46
|
end
|
47
|
-
|
47
|
+
|
48
48
|
it "joins all paragraphs together with to_s" do
|
49
49
|
s = @text.to_s
|
50
50
|
s.should match /^As occurs/
|
51
51
|
s.should match /Amtrak trains\.$/
|
52
52
|
s.should match /\n/
|
53
53
|
end
|
54
|
-
|
54
|
+
|
55
55
|
it "wraps each paragraph in p tags for #to_html" do
|
56
56
|
s = @text.to_html
|
57
57
|
s.should match /\A\<p\>/
|
@@ -9,16 +9,16 @@ describe NPR::Entity::Title do
|
|
9
9
|
}
|
10
10
|
JSON
|
11
11
|
end
|
12
|
-
|
12
|
+
|
13
13
|
before :each do
|
14
14
|
@title = NPR::Entity::Title.new(@fixture)
|
15
15
|
end
|
16
|
-
|
16
|
+
|
17
17
|
it "sets attributes" do
|
18
18
|
@title.num.should eq 2
|
19
19
|
@title.content.should eq "2312"
|
20
20
|
end
|
21
|
-
|
21
|
+
|
22
22
|
it "uses @content for to_s" do
|
23
23
|
@title.to_s.should eq @title.content
|
24
24
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: npr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-08-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: faraday
|
@@ -130,6 +130,7 @@ files:
|
|
130
130
|
- lib/npr/api/response.rb
|
131
131
|
- lib/npr/concern.rb
|
132
132
|
- lib/npr/concern/attr_typecast.rb
|
133
|
+
- lib/npr/concern/links_association.rb
|
133
134
|
- lib/npr/concern/relation.rb
|
134
135
|
- lib/npr/concern/shallow_attributes.rb
|
135
136
|
- lib/npr/configuration.rb
|
@@ -144,6 +145,7 @@ files:
|
|
144
145
|
- lib/npr/entity/collection.rb
|
145
146
|
- lib/npr/entity/crop.rb
|
146
147
|
- lib/npr/entity/enlargement.rb
|
148
|
+
- lib/npr/entity/external_asset.rb
|
147
149
|
- lib/npr/entity/formats.rb
|
148
150
|
- lib/npr/entity/image.rb
|
149
151
|
- lib/npr/entity/intro_text.rb
|
@@ -157,6 +159,7 @@ files:
|
|
157
159
|
- lib/npr/entity/name.rb
|
158
160
|
- lib/npr/entity/organization.rb
|
159
161
|
- lib/npr/entity/paragraph.rb
|
162
|
+
- lib/npr/entity/parent.rb
|
160
163
|
- lib/npr/entity/permissions.rb
|
161
164
|
- lib/npr/entity/program.rb
|
162
165
|
- lib/npr/entity/promo_art.rb
|
@@ -243,6 +246,7 @@ files:
|
|
243
246
|
- spec/unit/entity/collection_spec.rb
|
244
247
|
- spec/unit/entity/crop_spec.rb
|
245
248
|
- spec/unit/entity/englargement_spec.rb
|
249
|
+
- spec/unit/entity/external_assset_spec.rb
|
246
250
|
- spec/unit/entity/formats_spec.rb
|
247
251
|
- spec/unit/entity/image_spec.rb
|
248
252
|
- spec/unit/entity/intro_text_spec.rb
|
@@ -256,6 +260,7 @@ files:
|
|
256
260
|
- spec/unit/entity/name_spec.rb
|
257
261
|
- spec/unit/entity/organization_spec.rb
|
258
262
|
- spec/unit/entity/paragraph_spec.rb
|
263
|
+
- spec/unit/entity/parent_spec.rb
|
259
264
|
- spec/unit/entity/permissions_spec.rb
|
260
265
|
- spec/unit/entity/program_spec.rb
|
261
266
|
- spec/unit/entity/promo_art_book_edition_spec.rb
|
@@ -280,18 +285,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
280
285
|
- - ! '>='
|
281
286
|
- !ruby/object:Gem::Version
|
282
287
|
version: '0'
|
283
|
-
segments:
|
284
|
-
- 0
|
285
|
-
hash: 1451142622533907369
|
286
288
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
287
289
|
none: false
|
288
290
|
requirements:
|
289
291
|
- - ! '>='
|
290
292
|
- !ruby/object:Gem::Version
|
291
293
|
version: '0'
|
292
|
-
segments:
|
293
|
-
- 0
|
294
|
-
hash: 1451142622533907369
|
295
294
|
requirements: []
|
296
295
|
rubyforge_project:
|
297
296
|
rubygems_version: 1.8.25
|
@@ -370,6 +369,7 @@ test_files:
|
|
370
369
|
- spec/unit/entity/collection_spec.rb
|
371
370
|
- spec/unit/entity/crop_spec.rb
|
372
371
|
- spec/unit/entity/englargement_spec.rb
|
372
|
+
- spec/unit/entity/external_assset_spec.rb
|
373
373
|
- spec/unit/entity/formats_spec.rb
|
374
374
|
- spec/unit/entity/image_spec.rb
|
375
375
|
- spec/unit/entity/intro_text_spec.rb
|
@@ -383,6 +383,7 @@ test_files:
|
|
383
383
|
- spec/unit/entity/name_spec.rb
|
384
384
|
- spec/unit/entity/organization_spec.rb
|
385
385
|
- spec/unit/entity/paragraph_spec.rb
|
386
|
+
- spec/unit/entity/parent_spec.rb
|
386
387
|
- spec/unit/entity/permissions_spec.rb
|
387
388
|
- spec/unit/entity/program_spec.rb
|
388
389
|
- spec/unit/entity/promo_art_book_edition_spec.rb
|
@@ -394,3 +395,4 @@ test_files:
|
|
394
395
|
- spec/unit/entity/text_spec.rb
|
395
396
|
- spec/unit/entity/title_spec.rb
|
396
397
|
- spec/unit/entity/transcript_spec.rb
|
398
|
+
has_rdoc:
|