auth_manager 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/auth_manager/{add/add.rb → adder/adder.rb} +2 -2
- data/lib/auth_manager/{delete/delete.rb → deleter/deleter.rb} +3 -3
- data/lib/auth_manager/{find/find.rb → finder/finder.rb} +1 -1
- data/lib/auth_manager/{update/update.rb → updater/updater.rb} +6 -6
- data/lib/auth_manager/version.rb +1 -1
- data/lib/auth_manager.rb +4 -4
- data/specs/adder_spec.rb +44 -0
- data/specs/deleter_spec.rb +47 -0
- data/specs/finder_spec.rb +43 -0
- data/specs/spec_helper.rb +22 -0
- data/specs/updater_spec.rb +43 -0
- metadata +10 -10
- data/specs/add_spec.rb +0 -41
- data/specs/delete_spec.rb +0 -24
- data/specs/find_spec.rb +0 -32
- data/specs/update_spec.rb +0 -34
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e7465dfb956e67e5f1603a7e1242a10854942b68
|
4
|
+
data.tar.gz: 7f168f106e4ee1816b774c70e613b83587a2782b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a429104d31a2d6122192d7914450c88fbdb5954f682a7e8e0daf4eaaf37015caa1fa40814af14f3efa100c2eac0abed24a6789df305695b671a9147d57987fb7
|
7
|
+
data.tar.gz: faf321f3be3f4ba07a65262bf3af6d9ce3e9f84b8ef9abdbf9b3a9d7226a97919c3668b24564c7edb76de2a6911f2e637f4a27c329eb9a78d2c71494945e051d
|
@@ -2,7 +2,7 @@
|
|
2
2
|
require 'redis'
|
3
3
|
require_relative '../base.rb'
|
4
4
|
|
5
|
-
class
|
5
|
+
class Adder < AuthManager::Validation
|
6
6
|
|
7
7
|
def save?(given_user, option={user: true, app: false})
|
8
8
|
user = option.fetch(:user) || false
|
@@ -11,7 +11,7 @@ class Add < AuthManager::Validation
|
|
11
11
|
save(user, given_user) if available_login?(given_user, user)
|
12
12
|
end
|
13
13
|
|
14
|
-
private
|
14
|
+
private ###################################
|
15
15
|
|
16
16
|
def available_login?(given_user, user)
|
17
17
|
login_ok = true
|
@@ -2,7 +2,7 @@
|
|
2
2
|
require 'redis'
|
3
3
|
require_relative '../base'
|
4
4
|
|
5
|
-
class
|
5
|
+
class Deleter < AuthManager::Base
|
6
6
|
|
7
7
|
def delete?(obj_to_del, option)
|
8
8
|
new_obj = format_new_obj(obj_to_del)
|
@@ -12,8 +12,8 @@ class Delete < AuthManager::Base
|
|
12
12
|
private
|
13
13
|
|
14
14
|
def fake_delete?(obj_to_del, new_obj, option)
|
15
|
-
|
16
|
-
|
15
|
+
updater = Updater.new
|
16
|
+
updater.update(obj_to_del, new_obj, option)
|
17
17
|
end
|
18
18
|
|
19
19
|
def format_new_obj(obj_to_del)
|
@@ -2,7 +2,7 @@
|
|
2
2
|
require 'redis'
|
3
3
|
require_relative '../base'
|
4
4
|
|
5
|
-
class
|
5
|
+
class Updater < AuthManager::Base
|
6
6
|
|
7
7
|
def update(old_obj, new_obj, option)
|
8
8
|
existing_obj?(old_obj, option)
|
@@ -10,11 +10,11 @@ class Update < AuthManager::Base
|
|
10
10
|
delete_obj?(old_obj, option)
|
11
11
|
end
|
12
12
|
|
13
|
-
private
|
13
|
+
private ###########################
|
14
14
|
|
15
15
|
def existing_obj?(old_obj, option)
|
16
|
-
|
17
|
-
|
16
|
+
finder = Finder.new
|
17
|
+
finder.find_object?(old_obj, option)
|
18
18
|
end
|
19
19
|
|
20
20
|
def delete_obj?(old_obj, option)
|
@@ -24,8 +24,8 @@ class Update < AuthManager::Base
|
|
24
24
|
end
|
25
25
|
|
26
26
|
def write_new_info?(new_obj, option)
|
27
|
-
|
28
|
-
|
27
|
+
adder = Adder.new
|
28
|
+
adder.save?(new_obj, option)
|
29
29
|
end
|
30
30
|
|
31
31
|
end
|
data/lib/auth_manager/version.rb
CHANGED
data/lib/auth_manager.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
require 'auth_manager/version'
|
2
|
-
require 'auth_manager/
|
3
|
-
require 'auth_manager/
|
4
|
-
require 'auth_manager/
|
5
|
-
require 'auth_manager/
|
2
|
+
require 'auth_manager/adder/adder'
|
3
|
+
require 'auth_manager/finder/finder'
|
4
|
+
require 'auth_manager/updater/updater'
|
5
|
+
require 'auth_manager/deleter/deleter'
|
6
6
|
|
7
7
|
module AuthManager
|
8
8
|
# Your code goes here...
|
data/specs/adder_spec.rb
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
require_relative 'spec_helper'
|
2
|
+
|
3
|
+
describe Adder do
|
4
|
+
let(:adder) { Adder.new }
|
5
|
+
let(:user) { { login: 'nano', password: 'password' } }
|
6
|
+
let(:app) { { api_key: 'api_key' } }
|
7
|
+
let(:opt) { {user: false, app: false} }
|
8
|
+
|
9
|
+
describe '.initialize' do
|
10
|
+
context 'When created' do
|
11
|
+
it { expect( adder.redis).to_not be_nil }
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
describe '#save?' do
|
16
|
+
#cleaning valid_user and or valid app before new save
|
17
|
+
before(:each) do
|
18
|
+
adder.redis.del('users', user)
|
19
|
+
adder.redis.del('applications', app)
|
20
|
+
end
|
21
|
+
#normal cases
|
22
|
+
context 'When saved a valid user' do
|
23
|
+
it {
|
24
|
+
swap_option_to('user')
|
25
|
+
expect( adder.save?(user.to_json, opt)).to be_true
|
26
|
+
}
|
27
|
+
end
|
28
|
+
context 'When saved a valid app' do
|
29
|
+
it {
|
30
|
+
swap_option_to('app')
|
31
|
+
expect( adder.save?(app.to_json, opt)).to be_true
|
32
|
+
}
|
33
|
+
end
|
34
|
+
context 'When saved with an existing login' do
|
35
|
+
it {
|
36
|
+
expect( adder.save?(user.to_json, opt) ).to be_true
|
37
|
+
expect( adder.save?(user.to_json, opt)).to be_false
|
38
|
+
user['password'] = 'another password'
|
39
|
+
expect( adder.save?(user.to_json, opt)).to be_false
|
40
|
+
}
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
require_relative 'spec_helper'
|
2
|
+
|
3
|
+
describe Deleter do
|
4
|
+
let(:deleter) { Deleter.new }
|
5
|
+
let(:user) { {login: 'login', password: 'password'} }
|
6
|
+
let(:app) { {api_key: 'api_key'} }
|
7
|
+
let(:opt) { { user: false, app: true } }
|
8
|
+
describe '#delete' do
|
9
|
+
before(:each) do
|
10
|
+
deleter.redis.del('users')
|
11
|
+
deleter.redis.del('applications')
|
12
|
+
deleter.redis.sadd('users', user.to_json)
|
13
|
+
deleter.redis.sadd('applications', app.to_json)
|
14
|
+
end
|
15
|
+
|
16
|
+
context 'When deleted a user' do
|
17
|
+
it {
|
18
|
+
swap_option_to('user')
|
19
|
+
user[:login] = 'login'
|
20
|
+
expect( deleter.delete?(user.to_json, opt)).to be_true
|
21
|
+
}
|
22
|
+
end
|
23
|
+
|
24
|
+
context 'When user is not deleted' do
|
25
|
+
it {
|
26
|
+
swap_option_to('user')
|
27
|
+
user[:login] = 'not a login'
|
28
|
+
expect( deleter.delete?(user.to_json, opt)).to be_false
|
29
|
+
}
|
30
|
+
end
|
31
|
+
context 'When deleted an app' do
|
32
|
+
it {
|
33
|
+
swap_option_to('app')
|
34
|
+
app[:api_key] = 'api_key'
|
35
|
+
expect( deleter.delete?(app.to_json, opt)).to be_true
|
36
|
+
}
|
37
|
+
end
|
38
|
+
|
39
|
+
context 'When app is not deleted' do
|
40
|
+
it {
|
41
|
+
swap_option_to('app')
|
42
|
+
app[:api_key] = 'not an api_key'
|
43
|
+
expect( deleter.delete?(app.to_json, opt)).to be_false
|
44
|
+
}
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
require_relative 'spec_helper'
|
2
|
+
|
3
|
+
describe Finder do
|
4
|
+
let(:finder) { Finder.new }
|
5
|
+
let(:user) { { login: 'login', password: 'password' }}
|
6
|
+
let(:app) { { api_key: 'api_key' } }
|
7
|
+
let(:opt) { { user: true, app: false } }
|
8
|
+
describe '#find_object?' do
|
9
|
+
before(:each) do
|
10
|
+
finder.redis.del('users')
|
11
|
+
finder.redis.del('applications')
|
12
|
+
finder.redis.sadd('users', user.to_json)
|
13
|
+
finder.redis.sadd('applications', app.to_json)
|
14
|
+
end
|
15
|
+
context 'When user is found' do
|
16
|
+
it {
|
17
|
+
swap_option_to('user')
|
18
|
+
expect( finder.find_object?(user.to_json, opt ) ).to be_true
|
19
|
+
}
|
20
|
+
end
|
21
|
+
context 'When user is not found' do
|
22
|
+
it {
|
23
|
+
swap_option_to('user')
|
24
|
+
user[:login] = 'not a login'
|
25
|
+
expect( finder.find_object?( user.to_json, opt ) ).to be_false
|
26
|
+
}
|
27
|
+
end
|
28
|
+
|
29
|
+
context 'When app is found' do
|
30
|
+
it {
|
31
|
+
swap_option_to('app')
|
32
|
+
expect( finder.find_object?(app.to_json, opt ) ).to be_true
|
33
|
+
}
|
34
|
+
end
|
35
|
+
context 'When app is not found' do
|
36
|
+
it {
|
37
|
+
swap_option_to('app')
|
38
|
+
app[:api_key] = 'not an api_key'
|
39
|
+
expect( finder.find_object?( app.to_json, opt ) ).to be_false
|
40
|
+
}
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
data/specs/spec_helper.rb
CHANGED
@@ -1 +1,23 @@
|
|
1
1
|
require_relative './fixtures/environment'
|
2
|
+
|
3
|
+
|
4
|
+
def swap_option_to(list)
|
5
|
+
case list
|
6
|
+
when 'user'
|
7
|
+
opt[:user] = true
|
8
|
+
opt[:app] = false
|
9
|
+
else
|
10
|
+
opt[:user] = false
|
11
|
+
opt[:app] = true
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def new_object_from(object)
|
16
|
+
case object
|
17
|
+
when object.include?(:login)
|
18
|
+
object[:password] = 'new password'
|
19
|
+
else
|
20
|
+
object[:api_key] = 'new api_key'
|
21
|
+
end
|
22
|
+
object
|
23
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
require_relative 'spec_helper'
|
3
|
+
|
4
|
+
describe Updater do
|
5
|
+
let(:updater) { Updater.new }
|
6
|
+
let(:app) { { api_key: 'api_key' } }
|
7
|
+
let(:user) { { login: 'login', password: 'password' }}
|
8
|
+
let(:opt) { { user: true, app: false } }
|
9
|
+
describe '#update' do
|
10
|
+
before(:each) do
|
11
|
+
updater.redis.del('users')
|
12
|
+
updater.redis.del('applications')
|
13
|
+
updater.redis.sadd('users', user.to_json)
|
14
|
+
updater.redis.sadd('applications', app.to_json)
|
15
|
+
end
|
16
|
+
context 'When user object is updated' do
|
17
|
+
it {
|
18
|
+
swap_option_to('user')
|
19
|
+
expect(updater.update(user.to_json, new_object_from(user).to_json, opt)).to be_true
|
20
|
+
}
|
21
|
+
end
|
22
|
+
context 'When app object is updated' do
|
23
|
+
it {
|
24
|
+
swap_option_to('app')
|
25
|
+
expect(updater.update(app.to_json, new_object_from(app).to_json, opt)).to be_true
|
26
|
+
}
|
27
|
+
end
|
28
|
+
context 'When user object is not updated' do
|
29
|
+
it {
|
30
|
+
swap_option_to('user')
|
31
|
+
user[:login] = 'not a login'
|
32
|
+
expect(updater.update(user.to_json, new_object_from(user).to_json, opt)).to be_false
|
33
|
+
}
|
34
|
+
end
|
35
|
+
context 'When app object is not updated' do
|
36
|
+
it {
|
37
|
+
swap_option_to('app')
|
38
|
+
app[:api_key] = 'not an api_key'
|
39
|
+
expect(updater.update(app.to_json, new_object_from(app).to_json, opt)).to be_false
|
40
|
+
}
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: auth_manager
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- atacraft && fabira
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-05-
|
11
|
+
date: 2014-05-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -87,19 +87,19 @@ files:
|
|
87
87
|
- auth_manager.gemspec
|
88
88
|
- dump.rdb
|
89
89
|
- lib/auth_manager.rb
|
90
|
-
- lib/auth_manager/
|
90
|
+
- lib/auth_manager/adder/adder.rb
|
91
91
|
- lib/auth_manager/base.rb
|
92
|
-
- lib/auth_manager/
|
93
|
-
- lib/auth_manager/
|
94
|
-
- lib/auth_manager/
|
92
|
+
- lib/auth_manager/deleter/deleter.rb
|
93
|
+
- lib/auth_manager/finder/finder.rb
|
94
|
+
- lib/auth_manager/updater/updater.rb
|
95
95
|
- lib/auth_manager/version.rb
|
96
|
-
- specs/
|
97
|
-
- specs/
|
96
|
+
- specs/adder_spec.rb
|
97
|
+
- specs/deleter_spec.rb
|
98
98
|
- specs/feed/populate.rb
|
99
|
-
- specs/
|
99
|
+
- specs/finder_spec.rb
|
100
100
|
- specs/fixtures/environment.rb
|
101
101
|
- specs/spec_helper.rb
|
102
|
-
- specs/
|
102
|
+
- specs/updater_spec.rb
|
103
103
|
homepage: ''
|
104
104
|
licenses:
|
105
105
|
- MIT
|
data/specs/add_spec.rb
DELETED
@@ -1,41 +0,0 @@
|
|
1
|
-
require_relative 'spec_helper'
|
2
|
-
|
3
|
-
describe Add do
|
4
|
-
let(:add) { Add.new }
|
5
|
-
#valid variables
|
6
|
-
let(:valid_user) { { login: 'nano', password: 'password' }.to_json }
|
7
|
-
let(:stored_user) { {login: 'login', password: 'password'}.to_json }
|
8
|
-
let(:user_used_login) { {login: 'login', password: 'a password'}.to_json }
|
9
|
-
let(:valid_app) { { api_key: 'api_key' }.to_json }
|
10
|
-
let(:valid_user_opt) { {user: true, app: false} }
|
11
|
-
let(:valid_app_opt) { { user: false, app: true } }
|
12
|
-
|
13
|
-
describe '.initialize' do
|
14
|
-
context 'When created' do
|
15
|
-
it { expect(add.redis).to_not be_nil }
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
describe '#save?' do
|
20
|
-
#cleaning valid_user and or valid app before new save
|
21
|
-
before(:each) do
|
22
|
-
add.redis.del('users', valid_user)
|
23
|
-
add.redis.del('applications', valid_app)
|
24
|
-
add.redis.sadd('users', stored_user)
|
25
|
-
end
|
26
|
-
#normal cases
|
27
|
-
context 'When saved a valid user' do
|
28
|
-
it { expect(add.save?(valid_user, valid_user_opt)).to be_true }
|
29
|
-
end
|
30
|
-
context 'When saved a valid user with default option' do
|
31
|
-
it { expect(add.save?(valid_user)).to be_true }
|
32
|
-
end
|
33
|
-
context 'When saved a valid app' do
|
34
|
-
it { expect(add.save?(valid_app, valid_app_opt)).to be_true }
|
35
|
-
end
|
36
|
-
context 'When saved with an existing login' do
|
37
|
-
it { expect(add.save?(user_used_login, valid_user_opt)).to be_false }
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
end
|
data/specs/delete_spec.rb
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
require_relative 'spec_helper'
|
2
|
-
|
3
|
-
describe Delete do
|
4
|
-
let(:delete) { Delete.new }
|
5
|
-
let(:user_to_del) { {login: 'login', password: 'password'}.to_json }
|
6
|
-
let(:app_to_del) { {api_key: 'api_key'}.to_json }
|
7
|
-
let(:user_option) { { user: true, app: false } }
|
8
|
-
let(:app_option) { { user: false, app: true } }
|
9
|
-
describe '#delete' do
|
10
|
-
before(:each) do
|
11
|
-
delete.redis.del('users')
|
12
|
-
delete.redis.del('applications')
|
13
|
-
delete.redis.sadd('users', user_to_del)
|
14
|
-
delete.redis.sadd('applications', app_to_del)
|
15
|
-
end
|
16
|
-
|
17
|
-
context 'When deleted a user' do
|
18
|
-
it { expect(delete.delete?(user_to_del, user_option)).to be_true }
|
19
|
-
end
|
20
|
-
context 'When deleted an app' do
|
21
|
-
it { expect(delete.delete?(app_to_del, app_option)).to be_true }
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
data/specs/find_spec.rb
DELETED
@@ -1,32 +0,0 @@
|
|
1
|
-
require_relative 'spec_helper'
|
2
|
-
|
3
|
-
describe Find do
|
4
|
-
let(:find) { Find.new }
|
5
|
-
let(:invalid_user) { { login: 'login', password: 'password' }.to_json }
|
6
|
-
let(:valid_user){ { login: 'tata', password: 'toto' }.to_json }
|
7
|
-
let(:valid_app) { { api_key: 'api_key' }.to_json }
|
8
|
-
let(:invalid_app) { { api_key: 'not_api_key' }.to_json }
|
9
|
-
let(:user_opt) { { user: true, app: false } }
|
10
|
-
let(:app_opt) { { user: false, app: true } }
|
11
|
-
describe '#find_object?' do
|
12
|
-
context 'When user is found' do
|
13
|
-
before(:each) do
|
14
|
-
find.redis.del('users')
|
15
|
-
find.redis.del('applications')
|
16
|
-
find.redis.sadd('users', valid_user)
|
17
|
-
find.redis.sadd('applications', valid_app)
|
18
|
-
end
|
19
|
-
it { expect( find.find_object?(valid_user, user_opt ) ).to be_true }
|
20
|
-
end
|
21
|
-
context 'When user is not found' do
|
22
|
-
it { expect( find.find_object?( invalid_user, user_opt ) ).to be_false }
|
23
|
-
end
|
24
|
-
|
25
|
-
context 'When app is found' do
|
26
|
-
it { expect( find.find_object?(valid_app, app_opt ) ).to be_true }
|
27
|
-
end
|
28
|
-
context 'When app is not found' do
|
29
|
-
it { expect( find.find_object?( invalid_app, app_opt ) ).to be_false }
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
data/specs/update_spec.rb
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
# coding: utf-8
|
2
|
-
require_relative 'spec_helper'
|
3
|
-
|
4
|
-
describe Update do
|
5
|
-
let(:update) { Update.new }
|
6
|
-
let(:new_user_info) { {login: 'new login', password: 'new password'}.to_json }
|
7
|
-
let(:new_app_info) { { api_key: 'new api key' }.to_json }
|
8
|
-
let(:valid_old_app) { { api_key: 'api_key' }.to_json }
|
9
|
-
let(:invalid_old_app) { { api_key: 'bad_key' }.to_json }
|
10
|
-
let(:valid_old_user) { { login: 'login', password: 'password' }.to_json}
|
11
|
-
let(:invalid_old_user) { {login: 'not a login', password: 'not a password'}.to_json }
|
12
|
-
let(:user_option) { { user: true, app: false } }
|
13
|
-
let(:app_option) { { user: false, app: true } }
|
14
|
-
describe '#update' do
|
15
|
-
before(:each) do
|
16
|
-
update.redis.del('users')
|
17
|
-
update.redis.del('applications')
|
18
|
-
update.redis.sadd('users', valid_old_user)
|
19
|
-
update.redis.sadd('applications', valid_old_app)
|
20
|
-
end
|
21
|
-
context 'When user object is updated' do
|
22
|
-
it { expect(update.update(valid_old_user, new_user_info, user_option)).to be_true }
|
23
|
-
end
|
24
|
-
context 'When app object is updated' do
|
25
|
-
it { expect(update.update(valid_old_app, new_app_info, app_option)).to be_true }
|
26
|
-
end
|
27
|
-
context 'When user object is not updated' do
|
28
|
-
it { expect(update.update(invalid_old_user, new_user_info, user_option)).to be_false }
|
29
|
-
end
|
30
|
-
context 'When app object is not updated' do
|
31
|
-
it { expect(update.update(invalid_old_app, new_app_info, app_option)).to be_false }
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|