mongoid_token 3.0.0 → 4.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8c76063246f7bcb7225d68d373cfbc1b1ec569e1
4
- data.tar.gz: cb1d18edee2bd3c1b201d51345c0d28bf0bdecf0
3
+ metadata.gz: e750cdbf69b5f26f50a338219aad4efc71cb3dbb
4
+ data.tar.gz: 13de3c6572824b74fee06ad087549468a84d8d8a
5
5
  SHA512:
6
- metadata.gz: 7f5e3b6924961274b881d0e9fa74fb524fad4eb622135d2668e4756ffc97c1ff28700d19db3d046aaaba22a9ed5a688efaf95cc1e361fb279b2aeebf74c1778a
7
- data.tar.gz: f801efb0a8d8541b08d0b15c9dc777bbb821a37b6a4dfeac4a4b32096276e6a6117d3dabd9450995579e00262cdb01f68b9d756ae979566c602ae139c03ccf6d
6
+ metadata.gz: fcffc9de812baff70b946e745d43f09bd3994f6d34505cf6588cac2f9c7b6f876fcf25e212dae6f2fb3fdf6407ef7bf605feb7157784beb5f0b5848cb0705e57
7
+ data.tar.gz: 7b4760b632cefc19c3185537ea9365e044a949d29534c7b20cd498dbb0a1c666783ebe261a134e694b3b3c387cbd38f6bc927aece5cec73cd91c0261f1f38a3a
data/README.md CHANGED
@@ -20,7 +20,13 @@ Into something more like this:
20
20
 
21
21
  In your gemfile, add:
22
22
 
23
- gem 'mongoid_token', '~> 2.0.0'
23
+ ```ruby
24
+ # For mongoid < 5
25
+ gem 'mongoid_token', '~> 3.0.0'
26
+
27
+ # For mongoid >= 5
28
+ gem 'mongoid_token', '~> 4.0.0'
29
+ ```
24
30
 
25
31
  Then update your bundle
26
32
 
@@ -5,7 +5,7 @@ module Mongoid
5
5
  retries = resolver.retry_count
6
6
  begin
7
7
  yield
8
- rescue Moped::Errors::OperationFailure => e
8
+ rescue Mongo::Error::OperationFailure => e
9
9
  if is_duplicate_token_error?(e, self, resolver.field_name)
10
10
  if (retries -= 1) >= 0
11
11
  resolver.create_new_token_for(self)
@@ -24,9 +24,9 @@ module Mongoid
24
24
  end
25
25
 
26
26
  def is_duplicate_token_error?(err, document, field_name)
27
- [11000, 11001].include?(err.details['code']) &&
28
- err.details['err'] =~ /dup key/ &&
29
- err.details['err'] =~ /"#{document.send(field_name)}"/
27
+ err.message =~ /(11000|11001)/ &&
28
+ err.message =~ /dup key/ &&
29
+ err.message =~ /"#{document.send(field_name)}"/
30
30
  end
31
31
  end
32
32
  end
data/lib/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module MongoidToken
2
- VERSION = "3.0.0"
2
+ VERSION = "4.0.0"
3
3
  end
@@ -14,7 +14,7 @@ Gem::Specification.new do |s|
14
14
  s.description = %q{Mongoid token is a gem for creating random, unique tokens for mongoid documents. Highly configurable and great for making URLs a little more compact.}
15
15
 
16
16
  s.rubyforge_project = "mongoid_token"
17
- s.add_dependency 'mongoid', '~> 4.0.0'
17
+ s.add_dependency 'mongoid', '~> 5.0.0'
18
18
 
19
19
  s.files = `git ls-files`.split("\n")
20
20
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
@@ -17,7 +17,7 @@ describe Mongoid::Token::Collisions do
17
17
  it "should raise an error after the first try" do
18
18
  resolver.stub(:retry_count).and_return(0)
19
19
  attempts = 0
20
- expect{document.resolve_token_collisions(resolver) { attempts += 1; raise Moped::Errors::OperationFailure.new("","") }}.to raise_error Mongoid::Token::CollisionRetriesExceeded
20
+ expect{document.resolve_token_collisions(resolver) { attempts += 1; raise Mongo::Error::OperationFailure }}.to raise_error Mongoid::Token::CollisionRetriesExceeded
21
21
  expect(attempts).to eq 1
22
22
  end
23
23
  end
@@ -26,7 +26,7 @@ describe Mongoid::Token::Collisions do
26
26
  it "should raise an error after retrying once" do
27
27
  resolver.stub(:retry_count).and_return(1)
28
28
  attempts = 0
29
- expect{document.resolve_token_collisions(resolver) { attempts += 1; raise Moped::Errors::OperationFailure.new("","") }}.to raise_error Mongoid::Token::CollisionRetriesExceeded
29
+ expect{document.resolve_token_collisions(resolver) { attempts += 1; raise Mongo::Error::OperationFailure }}.to raise_error Mongoid::Token::CollisionRetriesExceeded
30
30
  expect(attempts).to eq 2
31
31
  end
32
32
  end
@@ -35,7 +35,7 @@ describe Mongoid::Token::Collisions do
35
35
  it "should raise an error after retrying" do
36
36
  resolver.stub(:retry_count).and_return(3)
37
37
  attempts = 0
38
- expect{document.resolve_token_collisions(resolver) { attempts += 1; raise Moped::Errors::OperationFailure.new("","") }}.to raise_error Mongoid::Token::CollisionRetriesExceeded
38
+ expect{document.resolve_token_collisions(resolver) { attempts += 1; raise Mongo::Error::OperationFailure }}.to raise_error Mongoid::Token::CollisionRetriesExceeded
39
39
  expect(attempts).to eq 4
40
40
  end
41
41
  end
@@ -44,7 +44,7 @@ describe Mongoid::Token::Collisions do
44
44
  it "should bubble the operation failure" do
45
45
  document.stub(:is_duplicate_token_error?).and_return(false)
46
46
  resolver.stub(:retry_count).and_return(3)
47
- e = Moped::Errors::OperationFailure.new("command", {:details => "nope"})
47
+ e = Mongo::Error::OperationFailure.new("nope")
48
48
  expect{document.resolve_token_collisions(resolver) { raise e }}.to raise_error(e)
49
49
  end
50
50
  end
@@ -84,7 +84,7 @@ describe Mongoid::Token::Collisions do
84
84
  context "when there is a duplicate key error" do
85
85
  it "should return true" do
86
86
  document.stub("token").and_return("tokenvalue123")
87
- err = double("Moped::Errors::OperationFailure")
87
+ err = double("Mongo::Error::OperationFailure")
88
88
  err.stub("details").and_return do
89
89
  {
90
90
  "err" => "E11000 duplicate key error index: mongoid_token_test.links.$token_1 dup key: { : \"tokenvalue123\" }",
@@ -255,7 +255,7 @@ describe Mongoid::Token do
255
255
  it "should raise an operation failure" do
256
256
  duplicate_name = "Got Duped."
257
257
  document_class.create!(:name => duplicate_name)
258
- expect{ document_class.create!(:name => duplicate_name) }.to raise_exception(Moped::Errors::OperationFailure)
258
+ expect{ document_class.create!(:name => duplicate_name) }.to raise_exception(Mongo::Error::OperationFailure)
259
259
  end
260
260
  end
261
261
  end
data/spec/spec_helper.rb CHANGED
@@ -11,6 +11,8 @@ require 'mongoid_token'
11
11
  ENV['MONGOID_ENV'] = "test"
12
12
 
13
13
  RSpec.configure do |config|
14
+ Mongo::Logger.logger.level = Logger::ERROR
15
+
14
16
  config.include Mongoid::Matchers
15
17
  config.before(:suite) do
16
18
  DatabaseCleaner.strategy = :truncation
@@ -23,11 +25,5 @@ RSpec.configure do |config|
23
25
  end
24
26
 
25
27
  Mongoid.configure do |config|
26
- config.sessions = {
27
- default: {
28
- database: "mongoid_token_test",
29
- hosts: [ "localhost:#{ENV['BOXEN_MONGODB_PORT'] || 27017}" ],
30
- options: {}
31
- }
32
- }
28
+ config.connect_to("mongoid_token_test", {})
33
29
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mongoid_token
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nicholas Bruning
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-22 00:00:00.000000000 Z
11
+ date: 2015-11-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mongoid
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 4.0.0
19
+ version: 5.0.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 4.0.0
26
+ version: 5.0.0
27
27
  description: Mongoid token is a gem for creating random, unique tokens for mongoid
28
28
  documents. Highly configurable and great for making URLs a little more compact.
29
29
  email:
@@ -78,7 +78,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
78
78
  version: '0'
79
79
  requirements: []
80
80
  rubyforge_project: mongoid_token
81
- rubygems_version: 2.4.6
81
+ rubygems_version: 2.4.5
82
82
  signing_key:
83
83
  specification_version: 4
84
84
  summary: A little random, unique token generator for Mongoid documents.