puppet_forge 2.3.0 → 2.3.1
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 +4 -4
- data/.github/workflows/ruby-rspec.yml +30 -0
- data/CHANGELOG.md +6 -0
- data/CODEOWNERS +1 -0
- data/lib/puppet_forge/version.rb +1 -1
- data/puppet_forge.gemspec +1 -2
- metadata +13 -28
- data/.travis.yml +0 -22
- data/MAINTAINERS +0 -13
- data/spec/integration/forge/v3/module_spec.rb +0 -119
- data/spec/integration/forge/v3/release_spec.rb +0 -75
- data/spec/integration/forge/v3/user_spec.rb +0 -70
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7979d3eea2d729bf36dd4ee5ad190dda3d9cbecc3064c6a03a2b58353cf5cc61
|
4
|
+
data.tar.gz: 28b03d724725713058b07263ff2ae1f0fade2f5845db7ccf288dcf781a161d6b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2d5e0f8b06881a161119229b80bc7b105ca856e6267abb504bb3a4882e566c851c123e2eed9ecbc8a51787b2de834450e2dffa8d211a4c26332dc5e30bb1e8dc
|
7
|
+
data.tar.gz: 0b285df0b6a223d35a6a89f4a0dbb41796c6aacb92437a321af0f52cba39c964d1d7a2ae232ec0f6bc285742029e97e22b7f7c3192bb879eb0c7323b41f31855
|
@@ -0,0 +1,30 @@
|
|
1
|
+
name: ruby-rspec
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches:
|
6
|
+
- master
|
7
|
+
pull_request:
|
8
|
+
branches:
|
9
|
+
- master
|
10
|
+
|
11
|
+
jobs:
|
12
|
+
test:
|
13
|
+
name: Test with Ruby ${{ matrix.ruby_version }}
|
14
|
+
runs-on: ubuntu-latest
|
15
|
+
strategy:
|
16
|
+
matrix:
|
17
|
+
ruby_version: ['2.6.x', '2.5.x', '2.4.x', '2.3.x']
|
18
|
+
|
19
|
+
steps:
|
20
|
+
- uses: actions/checkout@v1
|
21
|
+
- name: Set up Ruby ${{ matrix.ruby_version }}
|
22
|
+
uses: actions/setup-ruby@v1
|
23
|
+
with:
|
24
|
+
ruby-version: ${{ matrix.ruby_version }}
|
25
|
+
|
26
|
+
- name: Build and test with Rspec
|
27
|
+
run: |
|
28
|
+
gem install bundler
|
29
|
+
bundle install --jobs 4 --retry 3
|
30
|
+
bundle exec rspec
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,12 @@
|
|
3
3
|
Starting with v2.0.0, all notable changes to this project will be documented in this file.
|
4
4
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
5
5
|
|
6
|
+
## v2.3.1 - 2019-11-15
|
7
|
+
|
8
|
+
### Fixed
|
9
|
+
|
10
|
+
* Fixed an issue where proxy configurations were being ignored by expanding the range of acceptable versions of the `faraday` gem dependency and specifically excluding the version that was ignoring proxy configuration options.
|
11
|
+
|
6
12
|
## v2.3.0 - 2019-07-09
|
7
13
|
|
8
14
|
### Changed
|
data/CODEOWNERS
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
* @puppetlabs/forge-team
|
data/lib/puppet_forge/version.rb
CHANGED
data/puppet_forge.gemspec
CHANGED
@@ -20,13 +20,12 @@ Gem::Specification.new do |spec|
|
|
20
20
|
|
21
21
|
spec.required_ruby_version = '>= 1.9.3'
|
22
22
|
|
23
|
-
spec.add_runtime_dependency "faraday", [">= 0.9.0", "< 0.
|
23
|
+
spec.add_runtime_dependency "faraday", [">= 0.9.0", "< 0.15.0", "!= 0.13.1"]
|
24
24
|
spec.add_runtime_dependency "faraday_middleware", [">= 0.9.0", "< 0.13.0"]
|
25
25
|
spec.add_dependency 'semantic_puppet', '~> 1.0'
|
26
26
|
spec.add_dependency 'minitar'
|
27
27
|
spec.add_dependency 'gettext-setup', '~> 0.11'
|
28
28
|
|
29
|
-
spec.add_development_dependency "bundler", "~> 1.6"
|
30
29
|
spec.add_development_dependency "rake"
|
31
30
|
spec.add_development_dependency "rspec", "~> 3.0"
|
32
31
|
spec.add_development_dependency "simplecov"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: puppet_forge
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
4
|
+
version: 2.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Puppet Labs
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-11-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -17,9 +17,12 @@ dependencies:
|
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: 0.9.0
|
20
|
+
- - "!="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 0.13.1
|
20
23
|
- - "<"
|
21
24
|
- !ruby/object:Gem::Version
|
22
|
-
version: 0.
|
25
|
+
version: 0.15.0
|
23
26
|
type: :runtime
|
24
27
|
prerelease: false
|
25
28
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -27,9 +30,12 @@ dependencies:
|
|
27
30
|
- - ">="
|
28
31
|
- !ruby/object:Gem::Version
|
29
32
|
version: 0.9.0
|
33
|
+
- - "!="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: 0.13.1
|
30
36
|
- - "<"
|
31
37
|
- !ruby/object:Gem::Version
|
32
|
-
version: 0.
|
38
|
+
version: 0.15.0
|
33
39
|
- !ruby/object:Gem::Dependency
|
34
40
|
name: faraday_middleware
|
35
41
|
requirement: !ruby/object:Gem::Requirement
|
@@ -92,20 +98,6 @@ dependencies:
|
|
92
98
|
- - "~>"
|
93
99
|
- !ruby/object:Gem::Version
|
94
100
|
version: '0.11'
|
95
|
-
- !ruby/object:Gem::Dependency
|
96
|
-
name: bundler
|
97
|
-
requirement: !ruby/object:Gem::Requirement
|
98
|
-
requirements:
|
99
|
-
- - "~>"
|
100
|
-
- !ruby/object:Gem::Version
|
101
|
-
version: '1.6'
|
102
|
-
type: :development
|
103
|
-
prerelease: false
|
104
|
-
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
requirements:
|
106
|
-
- - "~>"
|
107
|
-
- !ruby/object:Gem::Version
|
108
|
-
version: '1.6'
|
109
101
|
- !ruby/object:Gem::Dependency
|
110
102
|
name: rake
|
111
103
|
requirement: !ruby/object:Gem::Requirement
|
@@ -212,12 +204,12 @@ executables: []
|
|
212
204
|
extensions: []
|
213
205
|
extra_rdoc_files: []
|
214
206
|
files:
|
207
|
+
- ".github/workflows/ruby-rspec.yml"
|
215
208
|
- ".gitignore"
|
216
|
-
- ".travis.yml"
|
217
209
|
- CHANGELOG.md
|
210
|
+
- CODEOWNERS
|
218
211
|
- Gemfile
|
219
212
|
- LICENSE.txt
|
220
|
-
- MAINTAINERS
|
221
213
|
- README.md
|
222
214
|
- Rakefile
|
223
215
|
- lib/puppet_forge.rb
|
@@ -271,9 +263,6 @@ files:
|
|
271
263
|
- spec/fixtures/v3/releases__module=puppetlabs-apache.json
|
272
264
|
- spec/fixtures/v3/users/puppetlabs.headers
|
273
265
|
- spec/fixtures/v3/users/puppetlabs.json
|
274
|
-
- spec/integration/forge/v3/module_spec.rb
|
275
|
-
- spec/integration/forge/v3/release_spec.rb
|
276
|
-
- spec/integration/forge/v3/user_spec.rb
|
277
266
|
- spec/spec_helper.rb
|
278
267
|
- spec/tmp/.gitkeep
|
279
268
|
- spec/unit/forge/connection/connection_failure_spec.rb
|
@@ -311,8 +300,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
311
300
|
- !ruby/object:Gem::Version
|
312
301
|
version: '0'
|
313
302
|
requirements: []
|
314
|
-
|
315
|
-
rubygems_version: 2.7.7
|
303
|
+
rubygems_version: 3.0.3
|
316
304
|
signing_key:
|
317
305
|
specification_version: 4
|
318
306
|
summary: Access the Puppet Forge API from Ruby for resource information and to download
|
@@ -348,9 +336,6 @@ test_files:
|
|
348
336
|
- spec/fixtures/v3/releases__module=puppetlabs-apache.json
|
349
337
|
- spec/fixtures/v3/users/puppetlabs.headers
|
350
338
|
- spec/fixtures/v3/users/puppetlabs.json
|
351
|
-
- spec/integration/forge/v3/module_spec.rb
|
352
|
-
- spec/integration/forge/v3/release_spec.rb
|
353
|
-
- spec/integration/forge/v3/user_spec.rb
|
354
339
|
- spec/spec_helper.rb
|
355
340
|
- spec/tmp/.gitkeep
|
356
341
|
- spec/unit/forge/connection/connection_failure_spec.rb
|
data/.travis.yml
DELETED
@@ -1,22 +0,0 @@
|
|
1
|
-
dist: xenial
|
2
|
-
language: ruby
|
3
|
-
rvm:
|
4
|
-
- 2.6
|
5
|
-
- 2.5
|
6
|
-
- 2.3
|
7
|
-
- 2.1
|
8
|
-
# TODO: enable integration testing
|
9
|
-
script: bundle exec rspec spec/unit
|
10
|
-
jobs:
|
11
|
-
include:
|
12
|
-
- stage: deploy
|
13
|
-
if: tag IS present
|
14
|
-
rvm: 2.6
|
15
|
-
script: echo "Deploying to rubygems.org..."
|
16
|
-
deploy:
|
17
|
-
on:
|
18
|
-
all_branches: true
|
19
|
-
provider: rubygems
|
20
|
-
gem: puppet_forge
|
21
|
-
api_key:
|
22
|
-
secure: 066s1nJoYzCPzujfTAZ1OiDbbHghLIfW2SxZ/xTom7SbtYlb4SVOUkzOr6dLMysUBAWLQRwiFvgNij+iWwHoNEPqNA+JeGZIiL32ShQI0NW+lTcjPzeAe8Ppy/1pxgXFSJAPHLzdpdgiK91eM4vMWHIaOqPeT/4+X2+kmWbg71E=
|
data/MAINTAINERS
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
If you'd like to make a change to this library, you should contact at least one
|
2
|
-
of the maintainers listed below. They will be able to discuss the change with
|
3
|
-
you and decide the next best step. The maintainers will also be notified of pull
|
4
|
-
requests as described in the README. This maintainers file should be kept up to
|
5
|
-
date with the current maintainers of the project.
|
6
|
-
|
7
|
-
If you need to contact the maintainers of this project you should email
|
8
|
-
info@puppetlabs.com.
|
9
|
-
|
10
|
-
Alex Dreyer, Puppet Labs
|
11
|
-
Anderson Mills, Puppet Labs
|
12
|
-
Jesse Scott, Puppet Labs
|
13
|
-
|
@@ -1,119 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe PuppetForge::V3::Module do
|
4
|
-
before do
|
5
|
-
PuppetForge.host = "https://forge-aio01-petest.puppetlabs.com/"
|
6
|
-
PuppetForge::V3::Base.conn = PuppetForge::Connection.make_connection(PuppetForge.host, nil, {:ssl => {:verify => false} })
|
7
|
-
end
|
8
|
-
|
9
|
-
context "::find" do
|
10
|
-
context "gets information on an existing module and" do
|
11
|
-
let (:mod) { PuppetForge::V3::Module.find('puppetforgegemtesting-thorin') }
|
12
|
-
let (:mod_stateless) { PuppetForge::V3::Module.find_stateless('puppetforgegemtesting-thorin') }
|
13
|
-
|
14
|
-
it "returns a PuppetForge::V3::Module." do
|
15
|
-
expect(mod).to be_a(PuppetForge::V3::Module)
|
16
|
-
end
|
17
|
-
|
18
|
-
it "returns a PuppetForge::V3::Module from a stateless call." do
|
19
|
-
expect(mod_stateless).to be_a(PuppetForge::V3::Module)
|
20
|
-
end
|
21
|
-
|
22
|
-
it "exposes the API information." do
|
23
|
-
expect(mod).to respond_to(:uri)
|
24
|
-
expect(mod).to respond_to(:owner)
|
25
|
-
expect(mod).to respond_to(:current_release)
|
26
|
-
expect(mod).to respond_to(:releases)
|
27
|
-
|
28
|
-
expect(mod.uri).to be_a(String)
|
29
|
-
expect(mod.owner).to be_a(PuppetForge::V3::User)
|
30
|
-
expect(mod.current_release).to be_a(PuppetForge::V3::Release)
|
31
|
-
expect(mod.releases.first).to be_a(PuppetForge::V3::Release)
|
32
|
-
end
|
33
|
-
|
34
|
-
end
|
35
|
-
|
36
|
-
context "raises Faraday::ResourceNotFound when" do
|
37
|
-
let (:mod) { PuppetForge::V3::Module.find('puppetforgegemtesting-bilbo') }
|
38
|
-
|
39
|
-
it "the module does not exist" do
|
40
|
-
expect { mod }.to raise_error(Faraday::ResourceNotFound)
|
41
|
-
end
|
42
|
-
|
43
|
-
end
|
44
|
-
|
45
|
-
end
|
46
|
-
|
47
|
-
context "::where" do
|
48
|
-
context "finds matching resources" do
|
49
|
-
|
50
|
-
it "only returns modules that match the query" do
|
51
|
-
modules = PuppetForge::V3::Module.where(:owner => 'puppetforgegemtesting')
|
52
|
-
|
53
|
-
expect(modules).to be_a(PuppetForge::V3::Base::PaginatedCollection)
|
54
|
-
modules.each do |mod|
|
55
|
-
expect(mod.owner.username).to eq('puppetforgegemtesting')
|
56
|
-
end
|
57
|
-
|
58
|
-
end
|
59
|
-
|
60
|
-
it "returns a paginated response" do
|
61
|
-
modules = PuppetForge::V3::Module.where(:owner => 'puppetforgegemtesting', :limit => 1)
|
62
|
-
|
63
|
-
expect(modules.limit).to eq(1)
|
64
|
-
expect(modules.total).to eq(2)
|
65
|
-
|
66
|
-
expect(modules.next).not_to be_nil
|
67
|
-
end
|
68
|
-
|
69
|
-
end
|
70
|
-
|
71
|
-
context "does not find matching resources" do
|
72
|
-
it "returns an empty PaginatedCollection" do
|
73
|
-
modules = PuppetForge::V3::Module.where(:owner => 'absentuser')
|
74
|
-
|
75
|
-
expect(modules).to be_a(PuppetForge::V3::Base::PaginatedCollection)
|
76
|
-
|
77
|
-
expect(modules.size).to eq(0)
|
78
|
-
expect(modules.empty?).to be(true)
|
79
|
-
end
|
80
|
-
end
|
81
|
-
end
|
82
|
-
|
83
|
-
context "::where_stateless" do
|
84
|
-
context "finds matching resources" do
|
85
|
-
|
86
|
-
it "only returns modules that match the query" do
|
87
|
-
modules = PuppetForge::V3::Module.where_stateless(:owner => 'puppetforgegemtesting')
|
88
|
-
|
89
|
-
expect(modules).to be_a(PuppetForge::V3::Base::PaginatedCollection)
|
90
|
-
modules.each do |mod|
|
91
|
-
expect(mod.owner.username).to eq('puppetforgegemtesting')
|
92
|
-
end
|
93
|
-
|
94
|
-
end
|
95
|
-
|
96
|
-
it "returns a paginated response" do
|
97
|
-
modules = PuppetForge::V3::Module.where_stateless(:owner => 'puppetforgegemtesting', :limit => 1)
|
98
|
-
|
99
|
-
expect(modules.limit).to eq(1)
|
100
|
-
expect(modules.total).to eq(2)
|
101
|
-
|
102
|
-
expect(modules.next).not_to be_nil
|
103
|
-
end
|
104
|
-
|
105
|
-
end
|
106
|
-
|
107
|
-
context "does not find matching resources" do
|
108
|
-
it "returns an empty PaginatedCollection" do
|
109
|
-
modules = PuppetForge::V3::Module.where_stateless(:owner => 'absentuser')
|
110
|
-
|
111
|
-
expect(modules).to be_a(PuppetForge::V3::Base::PaginatedCollection)
|
112
|
-
|
113
|
-
expect(modules.size).to eq(0)
|
114
|
-
expect(modules.empty?).to be(true)
|
115
|
-
end
|
116
|
-
end
|
117
|
-
end
|
118
|
-
end
|
119
|
-
|
@@ -1,75 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe PuppetForge::V3::Release do
|
4
|
-
before do
|
5
|
-
PuppetForge.host = "https://forge-aio01-petest.puppetlabs.com/"
|
6
|
-
PuppetForge::V3::Base.conn = PuppetForge::Connection.make_connection(PuppetForge.host, nil, {:ssl => {:verify => false} })
|
7
|
-
end
|
8
|
-
|
9
|
-
context "#find" do
|
10
|
-
context "when the release exists," do
|
11
|
-
|
12
|
-
it "find returns a PuppetForge::V3::Release." do
|
13
|
-
release = PuppetForge::V3::Release.find('puppetforgegemtesting-thorin-0.0.1')
|
14
|
-
|
15
|
-
expect(release).to be_a(PuppetForge::V3::Release)
|
16
|
-
end
|
17
|
-
|
18
|
-
it "it exposes the API information." do
|
19
|
-
release = PuppetForge::V3::Release.find('puppetforgegemtesting-thorin-0.0.1')
|
20
|
-
|
21
|
-
expect(release).to respond_to(:uri)
|
22
|
-
|
23
|
-
expect(release.uri).to be_a(String)
|
24
|
-
end
|
25
|
-
|
26
|
-
end
|
27
|
-
|
28
|
-
context "when the release doesn't exist," do
|
29
|
-
let (:release) { PuppetForge::V3::Release.find('puppetforgegemtesting-bilbo-0.0.1') }
|
30
|
-
|
31
|
-
it "find returns nil." do
|
32
|
-
expect { release }.to raise_error(Faraday::ResourceNotFound)
|
33
|
-
end
|
34
|
-
|
35
|
-
end
|
36
|
-
|
37
|
-
end
|
38
|
-
|
39
|
-
context "::where" do
|
40
|
-
context "finds matching resources" do
|
41
|
-
|
42
|
-
it "only returns releases that match the query" do
|
43
|
-
releases = PuppetForge::V3::Release.where(:module => 'puppetforgegemtesting-thorin')
|
44
|
-
|
45
|
-
expect(releases).to be_a(PuppetForge::V3::Base::PaginatedCollection)
|
46
|
-
|
47
|
-
expect(releases.first.version).to eq("0.0.2")
|
48
|
-
expect(releases[1].version).to eq("0.0.1")
|
49
|
-
|
50
|
-
end
|
51
|
-
|
52
|
-
it "returns a paginated response" do
|
53
|
-
releases = PuppetForge::V3::Release.where(:module => 'puppetforgegemtesting-thorin', :limit => 1)
|
54
|
-
|
55
|
-
expect(releases.limit).to eq(1)
|
56
|
-
expect(releases.total).to eq(2)
|
57
|
-
|
58
|
-
expect(releases.next).not_to be_nil
|
59
|
-
end
|
60
|
-
|
61
|
-
end
|
62
|
-
|
63
|
-
context "does not find matching resources" do
|
64
|
-
it "returns an empty PaginatedCollection" do
|
65
|
-
releases = PuppetForge::V3::Release.where(:module => 'puppetforgegemtesting-notamodule')
|
66
|
-
|
67
|
-
expect(releases).to be_a(PuppetForge::V3::Base::PaginatedCollection)
|
68
|
-
|
69
|
-
expect(releases.size).to eq(0)
|
70
|
-
expect(releases.empty?).to be(true)
|
71
|
-
end
|
72
|
-
end
|
73
|
-
end
|
74
|
-
end
|
75
|
-
|
@@ -1,70 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe PuppetForge::V3::User do
|
4
|
-
before do
|
5
|
-
PuppetForge.host = "https://forge-aio01-petest.puppetlabs.com/"
|
6
|
-
PuppetForge::V3::Base.conn = PuppetForge::Connection.make_connection(PuppetForge.host, nil, {:ssl => {:verify => false} })
|
7
|
-
end
|
8
|
-
|
9
|
-
context "#find" do
|
10
|
-
context "when the user exists," do
|
11
|
-
|
12
|
-
it "find returns a PuppetForge::V3::User." do
|
13
|
-
user = PuppetForge::V3::User.find('puppetforgegemtesting')
|
14
|
-
expect(user).to be_a(PuppetForge::V3::User)
|
15
|
-
end
|
16
|
-
|
17
|
-
it "it exposes the API information." do
|
18
|
-
user = PuppetForge::V3::User.find('puppetforgegemtesting')
|
19
|
-
|
20
|
-
expect(user).to respond_to(:uri)
|
21
|
-
expect(user).to respond_to(:modules)
|
22
|
-
|
23
|
-
expect(user.uri).to be_a(String)
|
24
|
-
expect(user.modules).to be_a(PuppetForge::V3::Base::PaginatedCollection)
|
25
|
-
end
|
26
|
-
|
27
|
-
end
|
28
|
-
|
29
|
-
context "when the user doesn't exists," do
|
30
|
-
let (:user) { PuppetForge::V3::User.find('notauser') }
|
31
|
-
|
32
|
-
it "find returns nil." do
|
33
|
-
expect { user }.to raise_error(Faraday::ResourceNotFound)
|
34
|
-
end
|
35
|
-
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
|
-
context "::where" do
|
40
|
-
context "finds matching resources" do
|
41
|
-
|
42
|
-
it "returns sorted users" do
|
43
|
-
users = PuppetForge::V3::User.where(:sort_by => 'releases')
|
44
|
-
|
45
|
-
expect(users).to be_a(PuppetForge::V3::Base::PaginatedCollection)
|
46
|
-
|
47
|
-
previous_releases = users.first.release_count
|
48
|
-
users.each do |user|
|
49
|
-
expect(user.release_count).to be <= previous_releases
|
50
|
-
previous_releases = user.release_count
|
51
|
-
end
|
52
|
-
|
53
|
-
end
|
54
|
-
|
55
|
-
it "returns a paginated response" do
|
56
|
-
users = PuppetForge::V3::User.where(:limit => 1)
|
57
|
-
|
58
|
-
expect(users.limit).to eq(1)
|
59
|
-
|
60
|
-
2.times do
|
61
|
-
expect(users).not_to be_nil
|
62
|
-
users = users.next
|
63
|
-
end
|
64
|
-
end
|
65
|
-
|
66
|
-
end
|
67
|
-
|
68
|
-
end
|
69
|
-
end
|
70
|
-
|