storify 0.0.13 → 0.0.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/fixtures/vcr_cassettes/auth.yml +119 -0
  3. data/fixtures/vcr_cassettes/create.yml +71 -0
  4. data/fixtures/vcr_cassettes/delete.yml +63 -0
  5. data/fixtures/vcr_cassettes/edit_slug.yml +162 -0
  6. data/fixtures/vcr_cassettes/featured.yml +28991 -0
  7. data/fixtures/vcr_cassettes/latest.yml +13835 -0
  8. data/fixtures/vcr_cassettes/popular.yml +17002 -0
  9. data/fixtures/vcr_cassettes/profile.yml +86 -0
  10. data/fixtures/vcr_cassettes/profile_update.yml +238 -0
  11. data/fixtures/vcr_cassettes/publish.yml +352 -0
  12. data/fixtures/vcr_cassettes/save.yml +462 -0
  13. data/fixtures/vcr_cassettes/search.yml +4528 -0
  14. data/fixtures/vcr_cassettes/stories.yml +8505 -0
  15. data/fixtures/vcr_cassettes/story.yml +1194 -0
  16. data/fixtures/vcr_cassettes/topic.yml +31207 -0
  17. data/fixtures/vcr_cassettes/users.yml +1877 -0
  18. data/fixtures/vcr_cassettes/userstories.yml +843 -0
  19. data/lib/storify.rb +1 -1
  20. data/lib/storify/client.rb +30 -35
  21. data/lib/storify/storymeta.rb +2 -1
  22. data/lib/storify/string.rb +10 -0
  23. data/spec/client_auth_spec.rb +28 -15
  24. data/spec/client_edit_slug_spec.rb +30 -0
  25. data/spec/client_profile_spec.rb +19 -0
  26. data/spec/client_profile_update_spec.rb +57 -0
  27. data/spec/client_spec.rb +24 -237
  28. data/spec/client_stories_featured_spec.rb +28 -0
  29. data/spec/client_stories_latest_spec.rb +28 -0
  30. data/spec/client_stories_popular_spec.rb +28 -0
  31. data/spec/client_stories_search_spec.rb +29 -0
  32. data/spec/client_stories_spec.rb +28 -0
  33. data/spec/client_stories_topic_spec.rb +35 -0
  34. data/spec/client_story_create_spec.rb +40 -0
  35. data/spec/client_story_delete_spec.rb +19 -0
  36. data/spec/client_story_publish_spec.rb +74 -0
  37. data/spec/client_story_save_spec.rb +43 -0
  38. data/spec/client_story_spec.rb +46 -0
  39. data/spec/client_users_spec.rb +28 -0
  40. data/spec/client_userstories_spec.rb +32 -0
  41. data/spec/pager_spec.rb +41 -46
  42. data/spec/spec_helper.rb +41 -18
  43. data/spec/storify_spec.rb +73 -72
  44. metadata +97 -4
  45. data/spec/client_noauth_spec.rb +0 -120
@@ -1,85 +1,80 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Storify::Pager do
4
- context "Page" do
5
- it "should optionally accept a starting page" do
6
- Storify::Pager.new(page: 10).page.should == 10
4
+ context ".page" do
5
+ it "optionally accepts a starting page" do
6
+ expect(Storify::Pager.new(page: 10).page).to eql 10
7
7
  end
8
8
 
9
- it "should set the default starting page to 1" do
10
- Storify::Pager.new.page.should == 1
9
+ it "sets the default starting page to 1" do
10
+ expect(Storify::Pager.new.page).to eql 1
11
11
  end
12
12
 
13
- it "should limit the page to the API Min" do
14
- pager = Storify::Pager.new(page: -1)
15
- pager.page.should == Storify::Pager::MIN_PAGE
13
+ it "limits the page to the API minimum" do
14
+ expect(Storify::Pager.new(page: -1).page).to eql Storify::Pager::MIN_PAGE
16
15
  end
17
16
 
18
- it "should optionally allow an artificial max page (inclusive)" do
19
- pager = Storify::Pager.new(max: 20)
20
- pager.max.should == 20
17
+ it "optionally allows an artificial max page (inclusive)" do
18
+ expect(Storify::Pager.new(max: 20).max).to eql 20
21
19
  end
22
20
 
23
- it "should default the page max to unlimited (0)" do
24
- pager = Storify::Pager.new
25
- pager.max.should == 0
21
+ it "sets the default the page max to unlimited" do
22
+ expect(Storify::Pager.new.max).to eql 0
26
23
  end
27
24
 
28
- it "should allow a page to be advanced (forward)" do
29
- pager = Storify::Pager.new
30
- pager.next.page.should == 2
25
+ it "allows a page to be advanced forward" do
26
+ expect(Storify::Pager.new.next.page).to eql 2
31
27
  end
32
28
 
33
- it "should not allow a page to be advanced beyond (max + 1)" do
34
- pager = Storify::Pager.new(max: 2)
35
- pager.next.next.next.page.should == 3
29
+ it "does not allow a page to be advanced beyond max + 1" do
30
+ expect(Storify::Pager.new(max: 2).next.next.next.page).to eql 3
36
31
  end
37
32
 
38
- it "should allow a page to be advanced (backward)" do
39
- pager = Storify::Pager.new(page: 2)
40
- pager.prev.prev.page.should == 1
33
+ it "allows a page to be advanced backward" do
34
+ expect(Storify::Pager.new(page: 2).prev.prev.page).to eql 1
41
35
  end
42
36
  end
43
37
 
44
- context "Per Page" do
45
- it "should optionally accept a per page option" do
46
- Storify::Pager.new(per_page: 15).per_page.should == 15
38
+ context ".per_page" do
39
+ it "optionally accepts a per page option" do
40
+ expect(Storify::Pager.new(per_page: 15).per_page).to eql 15
47
41
  end
48
42
 
49
- it "should set the default per_page to 20" do
50
- Storify::Pager.new.per_page.should == 20
43
+ it "sets the default per_page to 20" do
44
+ expect(Storify::Pager.new.per_page).to eql 20
51
45
  end
52
46
 
53
- it "should limit per_page to the API Max" do
54
- # Constructor
55
- pager = Storify::Pager.new(per_page: 100)
56
- pager.per_page.should == Storify::Pager::MAX_PER_PAGE
47
+ it "limits per_page to the API maximum (constructor)" do
48
+ expect(Storify::Pager.new(per_page: 100).per_page).to eql Storify::Pager::MAX_PER_PAGE
49
+ end
57
50
 
58
- # Setter
51
+ it "limits per_page to the API maximum (setter)" do
52
+ pager = Storify::Pager.new
59
53
  pager.per_page = 500
60
- pager.per_page.should == Storify::Pager::MAX_PER_PAGE
54
+ expect(pager.per_page).to eql Storify::Pager::MAX_PER_PAGE
61
55
  end
62
56
  end
63
57
 
64
- context "Utility" do
65
- it "should provide access to pagnination as a parameter hash" do
58
+ context ".to_hash" do
59
+ it "hashifies pagination parameters" do
66
60
  pager = Storify::Pager.new(page: 13, per_page: 25).to_hash
67
- pager[:page].should == 13
68
- pager[:per_page].should == 25
61
+ expect(pager[:page]).to eql 13
62
+ expect(pager[:per_page]).to eql 25
69
63
  end
64
+ end
70
65
 
71
- it "should know if there are pages left based on content array size" do
66
+ context ".has_pages?" do
67
+ it "knows if there are pages left based on content array size" do
72
68
  data = {'content' => {'stories' => ['s1', 's2', 's3']}}
73
69
  pager = Storify::Pager.new
74
- pager.has_pages?(data['content']['stories']).should be_true
75
- pager.has_pages?(data['content'][:invalid]).should be_false
76
- pager.has_pages?([]).should be_false
70
+
71
+ expect(pager.has_pages?(data['content']['stories'])).to be_true
72
+ expect(pager.has_pages?(data['content'][:invalid])).to be_false
73
+ expect(pager.has_pages?([])).to be_false
77
74
  end
78
75
 
79
- it "should have no pages left once on the final page" do
80
- pager = Storify::Pager.new(max: 2)
81
- pager.next.next.next
82
- pager.has_pages?(['g']).should be_false
76
+ it "has no pages left once on the final page" do
77
+ expect(Storify::Pager.new(max: 2).next.next.next.has_pages?(['g'])).to be_false
83
78
  end
84
79
  end
85
80
  end
@@ -1,27 +1,50 @@
1
- require 'storify'
1
+ require 'webmock/rspec'
2
2
  require 'io/console'
3
+ require 'storify'
4
+ require 'vcr'
5
+ require 'uri'
3
6
 
4
- RSpec.configure do |config|
5
- config.mock_with :rspec
6
- config.add_setting :api_key, :default => ''
7
- config.add_setting :api_usr, :default => ''
7
+ ENV['STORIFY_TOKEN'] = "mock__token"
8
+ ENV['STORIFY_SECRET'] = "mock_secret"
9
+ ENV['STORIFY_EMAIL'] = "mock_email"
10
+ ENV['STORIFY_TOK'] = "mock_token"
11
+ ENV['STORIFY_PASSWORD'] = "mock_password"
12
+ ENV['STORIFY_USERNAME'] = "rtejpar"
13
+ ENV['STORIFY_APIKEY'] = "mock_apikey"
8
14
 
9
- # load user-specific keys or fallback to defaults
10
- config.before(:all) do
11
- begin
12
- require File.dirname(__FILE__) + '/.userkey.rb'
13
- @api_key = API_KEY
14
- @username = USERNAME
15
- rescue LoadError
16
- @api_key = RSpec.configuration.api_key
17
- @username = RSpec.configuration.api_usr
18
- end
19
15
 
16
+ RSpec.configure do |config|
17
+ config.before(:all) do
18
+ @api_key = ENV['STORIFY_APIKEY']
19
+ @username = ENV['STORIFY_USERNAME']
20
20
  end
21
21
  end
22
22
 
23
23
  def get_password
24
- puts "Enter Storify Password:"
25
- STDOUT.flush
26
- STDIN.noecho(&:gets).chomp
24
+ ENV['STORIFY_PASSWORD']
25
+ end
26
+
27
+ def get_encoded_password
28
+ URI.encode_www_form_component(get_password)
29
+ end
30
+
31
+ VCR.configure do |config|
32
+ config.cassette_library_dir = 'fixtures/vcr_cassettes'
33
+ config.hook_into :webmock
34
+ config.filter_sensitive_data('mock__token') {ENV['STORIFY_TOKEN']}
35
+ config.filter_sensitive_data('mock_secret') {ENV['STORIFY_SECRET']}
36
+ config.filter_sensitive_data('mock_token') {ENV['STORIFY_TOK']}
37
+ config.filter_sensitive_data('mock_username') {ENV['STORIFY_USERNAME']}
38
+ config.filter_sensitive_data('mock_apikey') {ENV['STORIFY_APIKEY']}
39
+ config.filter_sensitive_data('mock_email') {ENV['STORIFY_EMAIL']}
40
+
41
+ config.filter_sensitive_data('mock_password') do |interaction|
42
+ get_encoded_password
43
+ end
44
+
45
+ config.default_cassette_options = { :record => :new_episodes, :match_requests_on => [:query, :uri, :method, :body] }
46
+ end
47
+
48
+ def vcr_ignore_protocol
49
+ [:host, :path, :method, :query, :body]
27
50
  end
@@ -1,146 +1,147 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Storify do
4
- context "API Protocols:" do
5
- it "should support http" do
6
- Storify::PROTOCOLS[:insecure].should == "http://"
4
+ context "API Protocols" do
5
+ it "supports http" do
6
+ expect(Storify::PROTOCOLS[:insecure]).to eql "http://"
7
7
  end
8
8
 
9
- it "should support secure http" do
10
- Storify::PROTOCOLS[:secure].should == "https://"
9
+ it "supports secure http" do
10
+ expect(Storify::PROTOCOLS[:secure]).to eql "https://"
11
11
  end
12
12
 
13
- it "should default to secure http" do
14
- Storify::PROTOCOLS[:unknown].should == "https://"
13
+ it "defaults to secure http" do
14
+ expect(Storify::PROTOCOLS[:unknown]).to eql "https://"
15
15
  end
16
16
  end
17
17
 
18
- context "API Versions:" do
19
- it "should support Storify API v1" do
20
- Storify::ENDPOINTS[:v1].is_a?(Hash).should be_true
18
+ context "API Versions" do
19
+ it "supports v1" do
20
+ expect(Storify::ENDPOINTS[:v1].is_a?(Hash)).to be_true
21
21
  end
22
22
 
23
- it "should fallback to Storify API v1" do
24
- Storify::ENDPOINTS[:unknown].is_a?(Hash).should be_true
23
+ it "defaults to v1" do
24
+ expect(Storify::ENDPOINTS[:unknown].is_a?(Hash)).to be_true
25
25
  end
26
26
  end
27
27
 
28
- context "API v1 Endpoints Sub-Paths:" do
29
- it "should support a base URL for a version" do
30
- Storify::ENDPOINTS[:v1][:base].should == "api.storify.com/v1"
28
+ context "API Endpoints" do
29
+ it "supports a base URL for a version" do
30
+ expect(Storify::ENDPOINTS[:v1][:base]).to eql "api.storify.com/v1"
31
31
  end
32
32
 
33
- it "should default to the base URL" do
34
- Storify::ENDPOINTS[:unknown][:unknown].should == "api.storify.com/v1"
33
+ it "defaults to the base URL" do
34
+ expect(Storify::ENDPOINTS[:unknown][:unknown]).to eql "api.storify.com/v1"
35
35
  end
36
36
 
37
- it "should support the Authentication endpoint" do
38
- Storify::ENDPOINTS[:v1][:auth].should == "/auth"
37
+ it "supports Authentication" do
38
+ expect(Storify::ENDPOINTS[:v1][:auth]).to eql "/auth"
39
39
  end
40
40
 
41
- it "should support the Stories endpoint" do
42
- Storify::ENDPOINTS[:v1][:stories].should == "/stories"
41
+ it "supports Stories" do
42
+ expect(Storify::ENDPOINTS[:v1][:stories]).to eql "/stories"
43
43
  end
44
44
 
45
- it "should support the Latest Stories endpoint" do
46
- Storify::ENDPOINTS[:v1][:latest].should == "/stories/browse/latest"
45
+ it "supports Latest Stories" do
46
+ expect(Storify::ENDPOINTS[:v1][:latest]).to eql "/stories/browse/latest"
47
47
  end
48
48
 
49
- it "should support the Featured Stories endpoint" do
50
- Storify::ENDPOINTS[:v1][:featured].should == "/stories/browse/featured"
49
+ it "supports Featured Stories" do
50
+ expect(Storify::ENDPOINTS[:v1][:featured]).to eql "/stories/browse/featured"
51
51
  end
52
52
 
53
- it "should support the Popular Stories endpoint" do
54
- Storify::ENDPOINTS[:v1][:popular].should == "/stories/browse/popular"
53
+ it "supports Popular Stories" do
54
+ expect(Storify::ENDPOINTS[:v1][:popular]).to eql "/stories/browse/popular"
55
55
  end
56
56
 
57
- it "should support Stories by Topic endpoint" do
58
- Storify::ENDPOINTS[:v1][:topic].should == "/stories/browse/topic/:topic"
57
+ it "supports Stories by Topic" do
58
+ expect(Storify::ENDPOINTS[:v1][:topic]).to eql "/stories/browse/topic/:topic"
59
59
  end
60
60
 
61
- it "should support the User Stories endpoint" do
62
- Storify::ENDPOINTS[:v1][:userstories].should == "/stories/:username"
61
+ it "supports User Stories" do
62
+ expect(Storify::ENDPOINTS[:v1][:userstories]).to eql "/stories/:username"
63
63
  end
64
64
 
65
- it "should support the Single Story endpoint" do
66
- Storify::ENDPOINTS[:v1][:userstory].should == "/stories/:username/:slug"
65
+ it "supports a Single Story" do
66
+ expect(Storify::ENDPOINTS[:v1][:userstory]).to eql "/stories/:username/:slug"
67
67
  end
68
68
 
69
- it "should support the Edit Story Slug endpoint" do
70
- Storify::ENDPOINTS[:v1][:editslug].should == "/stories/:username/:slug/editslug"
69
+ it "supports Editing a Story Slug" do
70
+ expect(Storify::ENDPOINTS[:v1][:editslug]).to eql "/stories/:username/:slug/editslug"
71
71
  end
72
72
 
73
- it "should support the Search Story endpoint" do
74
- Storify::ENDPOINTS[:v1][:search].should == "/stories/search"
73
+ it "supports Searching for Stories" do
74
+ expect(Storify::ENDPOINTS[:v1][:search]).to eql "/stories/search"
75
75
  end
76
76
 
77
- it "should support the Users endpoint" do
78
- Storify::ENDPOINTS[:v1][:users].should == "/users"
77
+ it "supports Users" do
78
+ expect(Storify::ENDPOINTS[:v1][:users]).to eql "/users"
79
79
  end
80
80
 
81
- it "should support the User Profile endpoint" do
82
- Storify::ENDPOINTS[:v1][:userprofile].should == "/users/:username"
81
+ it "supports User Profiles" do
82
+ expect(Storify::ENDPOINTS[:v1][:userprofile]).to eql "/users/:username"
83
83
  end
84
84
 
85
- it "should support the Publish Story endpoint" do
86
- Storify::ENDPOINTS[:v1][:publish].should == "/stories/:username/:slug/publish"
85
+ it "supports Publishing a Story" do
86
+ expect(Storify::ENDPOINTS[:v1][:publish]).to eql "/stories/:username/:slug/publish"
87
87
  end
88
88
 
89
- it "should support the Update User Profile endpoint" do
90
- Storify::ENDPOINTS[:v1][:update_profile].should == "/users/:username/update"
89
+ it "supports Updating a User Profile" do
90
+ expect(Storify::ENDPOINTS[:v1][:update_profile]).to eql "/users/:username/update"
91
91
  end
92
92
 
93
- it "should support the Save Story endpoint" do
94
- Storify::ENDPOINTS[:v1][:save].should == "/stories/:username/:slug/save"
93
+ it "supports Saving a Story" do
94
+ expect(Storify::ENDPOINTS[:v1][:save]).to eql "/stories/:username/:slug/save"
95
95
  end
96
96
 
97
- it "should support the Create Story endpoint" do
98
- Storify::ENDPOINTS[:v1][:create].should == "/stories/:username/create"
97
+ it "supports Creating a Story" do
98
+ expect(Storify::ENDPOINTS[:v1][:create]).to eql "/stories/:username/create"
99
99
  end
100
100
 
101
- it "should support the Delete Story endpoint (undocumented)" do
102
- Storify::ENDPOINTS[:v1][:delete].should == "/stories/:username/:slug/delete"
101
+ it "supports Deleting a Story (undocumented)" do
102
+ expect(Storify::ENDPOINTS[:v1][:delete]).to eql "/stories/:username/:slug/delete"
103
103
  end
104
104
  end
105
105
 
106
- context "API Endpoint URI Builder:" do
107
- it "should allow dynamic protocol selection" do
108
- Storify::endpoint(protocol: :secure).include?('https').should be_true
106
+ context "URI Builder" do
107
+ it "allows dynamic protocol selection" do
108
+ expect(Storify::endpoint(protocol: :secure).include?('https')).to be_true
109
109
  end
110
110
 
111
- it "should allow dynamic version selection" do
112
- Storify::endpoint(version: :v1).include?('v1').should be_true
111
+ it "allows dynamic version selection" do
112
+ expect(Storify::endpoint(version: :v1).include?('v1')).to be_true
113
113
  end
114
114
 
115
- it "should allow dynamic endpoint selection" do
116
- Storify::endpoint(method: :auth).include?('/auth').should be_true
115
+ it "allows dynamic endpoint selection" do
116
+ expect(Storify::endpoint(method: :auth).include?('/auth')).to be_true
117
117
  end
118
118
 
119
- it "should allow dynamic parameter substitution" do
120
- params = {':username' => 'rtejpar', ':slug' => 'this-is-my-story'}
119
+ it "allows dynamic parameter substitution" do
120
+ params = {':username' => 'uname', ':slug' => 'this-is-my-story'}
121
121
  uri = Storify::endpoint(params: params, method: :userstory)
122
- ['rtejpar', 'this-is-my-story'].each {|s| uri.include?(s).should be_true }
122
+
123
+ ['uname', 'this-is-my-story'].each do |s|
124
+ expect(uri.include?(s)).to be_true
125
+ end
123
126
  end
124
127
 
125
- it "should force secure protocol for Authentication" do
126
- Storify::endpoint(protocol: :secure, method: :auth).include?('https').should be_true
128
+ it "enforces secure protocol for Authentication" do
129
+ expect(Storify::endpoint(protocol: :secure, method: :auth).include?('https')).to be_true
127
130
  end
128
131
 
129
- it "should build the final uri based on dynamic configuration" do
130
- params = {':username' => 'rtejpar'}
131
- uri = Storify::endpoint(protocol: :insecure, method: :userstories, params: params)
132
- uri.should == 'http://api.storify.com/v1/stories/rtejpar'
132
+ it "builds the final uri based on dynamic configuration" do
133
+ params = {':username' => 'uname'}
134
+ expect(Storify::endpoint(protocol: :insecure, method: :userstories, params: params)).to eql 'http://api.storify.com/v1/stories/uname'
133
135
  end
134
136
  end
135
137
 
136
- context "API v1 Error Handling" do
137
- it "should return an empty content block (if api max reached)" do
138
+ context "API Error Handling" do
139
+ it "returns an empty content block (if api max reached)" do
138
140
  eoc = Storify::Client::EOC
139
- content = Storify::error(400, '...Max...', 'bad request', end_of_content: eoc)
140
- content.should == eoc
141
+ expect(Storify::error(400, '...Max...', 'bad request', end_of_content: eoc)).to eql eoc
141
142
  end
142
143
 
143
- it "should return an API error for a non-max case" do
144
+ it "raises an API error for a non-max case" do
144
145
  eoc = Storify::Client::EOC
145
146
  expect{Storify::error(400, '...', 'bad request', end_of_content: eoc)}.to raise_error(Storify::ApiError)
146
147
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: storify
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.13
4
+ version: 0.0.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rizwan Tejpar
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-12-16 00:00:00.000000000 Z
11
+ date: 2013-12-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -80,6 +80,34 @@ dependencies:
80
80
  - - '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: 2.14.1
83
+ - !ruby/object:Gem::Dependency
84
+ name: webmock
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: 1.16.1
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: 1.16.1
97
+ - !ruby/object:Gem::Dependency
98
+ name: vcr
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: '2.8'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: '2.8'
83
111
  - !ruby/object:Gem::Dependency
84
112
  name: io-console
85
113
  requirement: !ruby/object:Gem::Requirement
@@ -134,15 +162,48 @@ files:
134
162
  - lib/storify/story.rb
135
163
  - lib/storify/storymeta.rb
136
164
  - lib/storify/storystats.rb
165
+ - lib/storify/string.rb
137
166
  - lib/storify/user.rb
138
167
  - lib/storify/userstats.rb
139
168
  - lib/storify.rb
140
169
  - spec/client_auth_spec.rb
141
- - spec/client_noauth_spec.rb
170
+ - spec/client_edit_slug_spec.rb
171
+ - spec/client_profile_spec.rb
172
+ - spec/client_profile_update_spec.rb
142
173
  - spec/client_spec.rb
174
+ - spec/client_stories_featured_spec.rb
175
+ - spec/client_stories_latest_spec.rb
176
+ - spec/client_stories_popular_spec.rb
177
+ - spec/client_stories_search_spec.rb
178
+ - spec/client_stories_spec.rb
179
+ - spec/client_stories_topic_spec.rb
180
+ - spec/client_story_create_spec.rb
181
+ - spec/client_story_delete_spec.rb
182
+ - spec/client_story_publish_spec.rb
183
+ - spec/client_story_save_spec.rb
184
+ - spec/client_story_spec.rb
185
+ - spec/client_users_spec.rb
186
+ - spec/client_userstories_spec.rb
143
187
  - spec/pager_spec.rb
144
188
  - spec/spec_helper.rb
145
189
  - spec/storify_spec.rb
190
+ - fixtures/vcr_cassettes/auth.yml
191
+ - fixtures/vcr_cassettes/create.yml
192
+ - fixtures/vcr_cassettes/delete.yml
193
+ - fixtures/vcr_cassettes/edit_slug.yml
194
+ - fixtures/vcr_cassettes/featured.yml
195
+ - fixtures/vcr_cassettes/latest.yml
196
+ - fixtures/vcr_cassettes/popular.yml
197
+ - fixtures/vcr_cassettes/profile.yml
198
+ - fixtures/vcr_cassettes/profile_update.yml
199
+ - fixtures/vcr_cassettes/publish.yml
200
+ - fixtures/vcr_cassettes/save.yml
201
+ - fixtures/vcr_cassettes/search.yml
202
+ - fixtures/vcr_cassettes/stories.yml
203
+ - fixtures/vcr_cassettes/story.yml
204
+ - fixtures/vcr_cassettes/topic.yml
205
+ - fixtures/vcr_cassettes/users.yml
206
+ - fixtures/vcr_cassettes/userstories.yml
146
207
  homepage: https://github.com/natural-affinity/storify
147
208
  licenses:
148
209
  - MIT
@@ -169,8 +230,40 @@ specification_version: 4
169
230
  summary: Storify API
170
231
  test_files:
171
232
  - spec/client_auth_spec.rb
172
- - spec/client_noauth_spec.rb
233
+ - spec/client_edit_slug_spec.rb
234
+ - spec/client_profile_spec.rb
235
+ - spec/client_profile_update_spec.rb
173
236
  - spec/client_spec.rb
237
+ - spec/client_stories_featured_spec.rb
238
+ - spec/client_stories_latest_spec.rb
239
+ - spec/client_stories_popular_spec.rb
240
+ - spec/client_stories_search_spec.rb
241
+ - spec/client_stories_spec.rb
242
+ - spec/client_stories_topic_spec.rb
243
+ - spec/client_story_create_spec.rb
244
+ - spec/client_story_delete_spec.rb
245
+ - spec/client_story_publish_spec.rb
246
+ - spec/client_story_save_spec.rb
247
+ - spec/client_story_spec.rb
248
+ - spec/client_users_spec.rb
249
+ - spec/client_userstories_spec.rb
174
250
  - spec/pager_spec.rb
175
251
  - spec/spec_helper.rb
176
252
  - spec/storify_spec.rb
253
+ - fixtures/vcr_cassettes/auth.yml
254
+ - fixtures/vcr_cassettes/create.yml
255
+ - fixtures/vcr_cassettes/delete.yml
256
+ - fixtures/vcr_cassettes/edit_slug.yml
257
+ - fixtures/vcr_cassettes/featured.yml
258
+ - fixtures/vcr_cassettes/latest.yml
259
+ - fixtures/vcr_cassettes/popular.yml
260
+ - fixtures/vcr_cassettes/profile.yml
261
+ - fixtures/vcr_cassettes/profile_update.yml
262
+ - fixtures/vcr_cassettes/publish.yml
263
+ - fixtures/vcr_cassettes/save.yml
264
+ - fixtures/vcr_cassettes/search.yml
265
+ - fixtures/vcr_cassettes/stories.yml
266
+ - fixtures/vcr_cassettes/story.yml
267
+ - fixtures/vcr_cassettes/topic.yml
268
+ - fixtures/vcr_cassettes/users.yml
269
+ - fixtures/vcr_cassettes/userstories.yml