mongoid-sequence2 0.2.5 → 0.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 +8 -8
- data/Changelogs.md +10 -0
- data/lib/mongoid-sequence2/version.rb +1 -1
- data/mongoid-sequence2.gemspec +5 -5
- data/test/consistency_test.rb +18 -1
- metadata +22 -16
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NGJlZGRmYTA2NzY4YjY4NjA0NGE1N2ZmNTU0NTBmZTZkMGQ5OTIwNg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
MDgxNjkzMWQyZGVhYWQzYWE3ZWU5NTJmMjYzMGJhOGE0ZTFjMTExYQ==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
NzU5NTU4ZDBkZDNmZDNiMWQ2YTA3NjVhYjk0NDI4ODFiNzRmNWUyOTY0NDc1
|
10
|
+
NjBmYmEyNmIyYmMyOTY0OTIzMTdiNzg2YzU5ZjViZTM2YzBlOWU4MGM4NzAz
|
11
|
+
NTE0NWZkYTJhOGRlYTJkNTQxMDllNzdkMDk1N2RmZjllMjg4Zjg=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MzYxZGJhNTc5NjU5ODk5MjUyMDgyZmVmMTY3NzMzMDU3MTM4YjdkNDY0Mzg0
|
14
|
+
ZmY0MDViZWE2NjQ0Mjk5OTdkYTZmNTNmNzk0M2E4MTIwNjFmOWViNzdiN2Iw
|
15
|
+
NWI1OGNjYTUyMDYzZjVlMDQ1YWRkMDE5N2M3YzhkMWNhYzMzZmQ=
|
data/Changelogs.md
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
## 0.3.1
|
2
|
+
|
3
|
+
* fix dependence error on `0.3.0`
|
4
|
+
|
5
|
+
## 0.3.0.yanked
|
6
|
+
|
7
|
+
* `activesupport` dependence change as `[">= 3.0.0","< 4.0.0"]`
|
8
|
+
* now support rails 4, and still compatible with rails 3
|
9
|
+
* define `activesupport` and `mongoid` error
|
10
|
+
|
1
11
|
## 0.2.5
|
2
12
|
|
3
13
|
* #1 Add `next_sequence` which allows to have any per model sequence, without need to create given model's objects. ([dawid-sklodowski](https://github.com/dawid-sklodowski))
|
data/mongoid-sequence2.gemspec
CHANGED
@@ -8,11 +8,11 @@ Gem::Specification.new do |gem|
|
|
8
8
|
gem.summary = %q{Specify fields to behave like a sequence number (exactly like the "id" column in conventional SQL flavors).}
|
9
9
|
gem.homepage = "https://github.com/jhjguxin/mongoid-sequence2"
|
10
10
|
|
11
|
-
gem.add_dependency("mongoid", [">= 3.0.0","
|
12
|
-
gem.add_dependency("activesupport", "
|
13
|
-
gem.add_development_dependency("rake", "
|
14
|
-
gem.add_development_dependency "database_cleaner", "~>
|
15
|
-
gem.add_development_dependency "test-unit", "~> 2.5
|
11
|
+
gem.add_dependency("mongoid", [">= 3.0.0","<= 4.0"])
|
12
|
+
gem.add_dependency("activesupport", [">= 3.0.0","<= 4.0"])
|
13
|
+
gem.add_development_dependency("rake", ">= 0.9")
|
14
|
+
gem.add_development_dependency "database_cleaner", "~> 1.1"
|
15
|
+
gem.add_development_dependency "test-unit", "~> 2.5"
|
16
16
|
gem.add_development_dependency "debugger"
|
17
17
|
gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
18
18
|
gem.files = `git ls-files`.split("\n")
|
data/test/consistency_test.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
require "test_helper"
|
2
2
|
|
3
|
-
class
|
3
|
+
class ConsistencyTest < BaseTest
|
4
4
|
def test_single_sequence_consistency
|
5
5
|
n = 200
|
6
6
|
|
@@ -11,6 +11,23 @@ class SequenceTest < BaseTest
|
|
11
11
|
assert_equal FirstSequencedModel.only(:auto_increment).map(&:auto_increment).sort, (1..n).to_a
|
12
12
|
end
|
13
13
|
|
14
|
+
def test_concurrent_sequence
|
15
|
+
n = 500
|
16
|
+
|
17
|
+
thread_group = ThreadGroup.new
|
18
|
+
|
19
|
+
n.times {
|
20
|
+
thread =Thread.new {
|
21
|
+
FirstSequencedModel.create
|
22
|
+
}
|
23
|
+
thread_group.add thread
|
24
|
+
}
|
25
|
+
|
26
|
+
thread_group.list.collect{|thread| thread.join}
|
27
|
+
|
28
|
+
assert_equal FirstSequencedModel.only(:auto_increment).map(&:auto_increment).sort, (1..n).to_a
|
29
|
+
end
|
30
|
+
|
14
31
|
def test_id_sequence_consistency
|
15
32
|
n = 200
|
16
33
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mongoid-sequence2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jhjguxin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-08-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mongoid
|
@@ -17,9 +17,9 @@ dependencies:
|
|
17
17
|
- - ! '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: 3.0.0
|
20
|
-
- -
|
20
|
+
- - <=
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 4.
|
22
|
+
version: '4.0'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -27,35 +27,41 @@ dependencies:
|
|
27
27
|
- - ! '>='
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: 3.0.0
|
30
|
-
- -
|
30
|
+
- - <=
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 4.
|
32
|
+
version: '4.0'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: activesupport
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
36
36
|
requirements:
|
37
|
-
- -
|
37
|
+
- - ! '>='
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: 3.0.0
|
40
|
+
- - <=
|
38
41
|
- !ruby/object:Gem::Version
|
39
|
-
version: '
|
42
|
+
version: '4.0'
|
40
43
|
type: :runtime
|
41
44
|
prerelease: false
|
42
45
|
version_requirements: !ruby/object:Gem::Requirement
|
43
46
|
requirements:
|
44
|
-
- -
|
47
|
+
- - ! '>='
|
45
48
|
- !ruby/object:Gem::Version
|
46
|
-
version:
|
49
|
+
version: 3.0.0
|
50
|
+
- - <=
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '4.0'
|
47
53
|
- !ruby/object:Gem::Dependency
|
48
54
|
name: rake
|
49
55
|
requirement: !ruby/object:Gem::Requirement
|
50
56
|
requirements:
|
51
|
-
- -
|
57
|
+
- - ! '>='
|
52
58
|
- !ruby/object:Gem::Version
|
53
59
|
version: '0.9'
|
54
60
|
type: :development
|
55
61
|
prerelease: false
|
56
62
|
version_requirements: !ruby/object:Gem::Requirement
|
57
63
|
requirements:
|
58
|
-
- -
|
64
|
+
- - ! '>='
|
59
65
|
- !ruby/object:Gem::Version
|
60
66
|
version: '0.9'
|
61
67
|
- !ruby/object:Gem::Dependency
|
@@ -64,28 +70,28 @@ dependencies:
|
|
64
70
|
requirements:
|
65
71
|
- - ~>
|
66
72
|
- !ruby/object:Gem::Version
|
67
|
-
version:
|
73
|
+
version: '1.1'
|
68
74
|
type: :development
|
69
75
|
prerelease: false
|
70
76
|
version_requirements: !ruby/object:Gem::Requirement
|
71
77
|
requirements:
|
72
78
|
- - ~>
|
73
79
|
- !ruby/object:Gem::Version
|
74
|
-
version:
|
80
|
+
version: '1.1'
|
75
81
|
- !ruby/object:Gem::Dependency
|
76
82
|
name: test-unit
|
77
83
|
requirement: !ruby/object:Gem::Requirement
|
78
84
|
requirements:
|
79
85
|
- - ~>
|
80
86
|
- !ruby/object:Gem::Version
|
81
|
-
version: 2.5
|
87
|
+
version: '2.5'
|
82
88
|
type: :development
|
83
89
|
prerelease: false
|
84
90
|
version_requirements: !ruby/object:Gem::Requirement
|
85
91
|
requirements:
|
86
92
|
- - ~>
|
87
93
|
- !ruby/object:Gem::Version
|
88
|
-
version: 2.5
|
94
|
+
version: '2.5'
|
89
95
|
- !ruby/object:Gem::Dependency
|
90
96
|
name: debugger
|
91
97
|
requirement: !ruby/object:Gem::Requirement
|