mini_token 1.0.0 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/lib/mini_token.rb +18 -7
- data/mini_token.gemspec +2 -2
- data/test/test_mini_token.rb +28 -7
- metadata +3 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.1.0
|
data/lib/mini_token.rb
CHANGED
@@ -10,12 +10,23 @@ class MiniToken < Struct.new(:db, :token)
|
|
10
10
|
def output(size = nil)
|
11
11
|
generate { @token_size = size.nil? ? TOKEN_SIZE : size }
|
12
12
|
end
|
13
|
-
|
13
|
+
|
14
14
|
def truncate_tokens
|
15
15
|
connection
|
16
16
|
@db.truncate
|
17
17
|
end
|
18
|
-
|
18
|
+
|
19
|
+
def delete_token(param)
|
20
|
+
connection
|
21
|
+
@db.filter(:token => param).delete
|
22
|
+
end
|
23
|
+
|
24
|
+
def find(param)
|
25
|
+
connection
|
26
|
+
t = @db.first(:token => param)
|
27
|
+
t[:token] unless t.nil?
|
28
|
+
end
|
29
|
+
|
19
30
|
def all
|
20
31
|
connection
|
21
32
|
@db.all
|
@@ -28,21 +39,21 @@ class MiniToken < Struct.new(:db, :token)
|
|
28
39
|
@token = TOKEN_CHARACTERS.sample(@token_size).join
|
29
40
|
exist_token?
|
30
41
|
end
|
31
|
-
|
42
|
+
|
32
43
|
protected
|
33
|
-
|
44
|
+
|
34
45
|
def exist_token?
|
35
46
|
connection
|
36
47
|
@db.first(:token => @token).nil? ? storing : generate unless @token.nil?
|
37
48
|
end
|
38
|
-
|
49
|
+
|
39
50
|
def storing
|
40
51
|
@token if @db.insert(:token => @token)
|
41
52
|
end
|
42
|
-
|
53
|
+
|
43
54
|
def connection
|
44
55
|
sequel = Sequel.sqlite(DB_PATH+(TOKEN_ENV=='production' ? '/mini_token.db' : '/mini_token_test.db' ))
|
45
|
-
@db = sequel[:tokens]
|
56
|
+
@db = sequel[:tokens]
|
46
57
|
end
|
47
58
|
end
|
48
59
|
end
|
data/mini_token.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{mini_token}
|
8
|
-
s.version = "1.
|
8
|
+
s.version = "1.1.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Antonio Roberto Silva"]
|
12
|
-
s.date = %q{2010-10-
|
12
|
+
s.date = %q{2010-10-16}
|
13
13
|
s.description = %q{Generate simple tokens for short url and other things}
|
14
14
|
s.email = %q{forevertonny@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
data/test/test_mini_token.rb
CHANGED
@@ -32,29 +32,50 @@ describe MiniToken do
|
|
32
32
|
it 'should be return the token string with size' do
|
33
33
|
assert_match /([a-zA-Z0-9]{10})/, MiniToken.output(10)
|
34
34
|
end
|
35
|
-
|
35
|
+
|
36
36
|
describe ".truncate_tokens" do
|
37
37
|
before(:each) do
|
38
38
|
4.times { MiniToken.output }
|
39
39
|
end
|
40
|
-
|
40
|
+
|
41
41
|
it "should have many tokens " do
|
42
42
|
assert_equal MiniToken.all.size, 4
|
43
43
|
end
|
44
|
-
|
44
|
+
|
45
45
|
it "when call truncate then don't have more tokens storaged" do
|
46
46
|
MiniToken.truncate_tokens
|
47
47
|
assert_equal MiniToken.all.size, 0
|
48
48
|
end
|
49
49
|
end
|
50
|
-
|
50
|
+
|
51
|
+
describe ".delete_token" do
|
52
|
+
before(:each) do
|
53
|
+
@token = MiniToken.output
|
54
|
+
end
|
55
|
+
|
56
|
+
it "should not have token" do
|
57
|
+
MiniToken.delete_token(@token)
|
58
|
+
assert_equal nil, MiniToken.find(@token)
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
describe ".find" do
|
63
|
+
before(:each) do
|
64
|
+
@token = MiniToken.output
|
65
|
+
end
|
66
|
+
|
67
|
+
it "should return token" do
|
68
|
+
assert_equal @token, MiniToken.find(@token)
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
51
72
|
describe ".all" do
|
52
73
|
before(:each) do
|
53
74
|
@token1 = MiniToken.output
|
54
75
|
@token2 = MiniToken.output
|
55
|
-
@token3 = MiniToken.output
|
56
|
-
end
|
57
|
-
|
76
|
+
@token3 = MiniToken.output
|
77
|
+
end
|
78
|
+
|
58
79
|
it "should return one hash with all tokens storaged" do
|
59
80
|
assert_equal MiniToken.all, [{:id=>1, :token=>@token1}, {:id=>2, :token=>@token2}, {:id=>3, :token=>@token3}]
|
60
81
|
end
|
metadata
CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
|
|
4
4
|
prerelease: false
|
5
5
|
segments:
|
6
6
|
- 1
|
7
|
+
- 1
|
7
8
|
- 0
|
8
|
-
|
9
|
-
version: 1.0.0
|
9
|
+
version: 1.1.0
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Antonio Roberto Silva
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-10-
|
17
|
+
date: 2010-10-16 00:00:00 -03:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|