mongoid_token 3.0.0 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
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.