facemock 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,10 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Facemock::FbGraph::Application::User::Right do
4
- let(:table_name) { "user_rights" }
5
-
6
- describe '.table_name' do
7
- subject { Facemock::FbGraph::Application::User::Right.table_name }
8
- it { is_expected.to eq table_name }
9
- end
10
- end
@@ -1,131 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Facemock::FbGraph::Application::User do
4
- let(:table_name) { "users" }
5
-
6
- let(:db_name) { ".test" }
7
- let(:adapter) { "sqlite3" }
8
- let(:db_directory) { File.expand_path("../../../../db", __FILE__) }
9
- let(:db_filepath) { File.join(db_directory, "#{db_name}.#{adapter}") }
10
- let(:options) { { identifier: 100000000000001,
11
- name: "test user",
12
- email: "test@example.com",
13
- password: "testpass",
14
- installed: true,
15
- access_token: "test_token",
16
- permissions: "email, read_stream" } }
17
-
18
- before do
19
- stub_const("Facemock::Config::Database::DEFAULT_DB_NAME", db_name)
20
- Facemock::Config.database
21
- end
22
- after { Facemock::Config.database.drop }
23
-
24
- it 'should have a rigth class' do
25
- expect(Facemock::FbGraph::Application::User::Right).to be_truthy
26
- expect(Facemock::FbGraph::Application::User::Right.ancestors).to include ActiveRecord::Base
27
- end
28
-
29
- describe '.table_name' do
30
- subject { Facemock::FbGraph::Application::User.table_name }
31
- it { is_expected.to eq table_name }
32
- end
33
-
34
- describe '#new' do
35
- context 'without options' do
36
- subject { lambda { Facemock::FbGraph::Application::User.new } }
37
- it { is_expected.not_to raise_error }
38
-
39
- it 'should be initialized attribute' do
40
- user = Facemock::FbGraph::Application::User.new
41
-
42
- expect(user.identifier).to be_kind_of Integer
43
- expect(user.name).to be_kind_of String
44
- expect(user.email).to be_kind_of String
45
- expect(user.password).to be_kind_of String
46
- expect(user.access_token).to be_kind_of String
47
- expect(user.permissions).to be_kind_of Array
48
-
49
- expect(user.identifier).to be >= 100000000000000
50
- expect(user.name).not_to be_empty
51
- expect(user.password).not_to be_empty
52
- expect(user.installed).to be false
53
- expect(user.access_token).not_to be_empty
54
- expect(user.permissions).to be_empty
55
- end
56
- end
57
-
58
- context 'with all options' do
59
- it 'should be initialized attribute by options' do
60
- user = Facemock::FbGraph::Application::User.new(options)
61
- options.each do |attribute, value|
62
- if attribute.eql? :permissions
63
- expect(user.send(attribute)).to include :email
64
- expect(user.send(attribute)).to include :read_stream
65
- else
66
- expect(user.send(attribute)).to eq value
67
- end
68
- end
69
-
70
- user.rights.each do |right|
71
- expect(options[:permissions]).to include right.name
72
- end
73
- end
74
- end
75
-
76
- context 'with only name option' do
77
- before { @options = { name: "test_user" } }
78
-
79
- subject { @user = Facemock::FbGraph::Application::User.new(@options).email }
80
- it { is_expected.to eq "#{@options[:name]}@example.com" }
81
- end
82
- end
83
-
84
- describe '#fetch' do
85
- before { @user = Facemock::FbGraph::Application::User.new }
86
-
87
- context 'when user does not save' do
88
- subject { @user.fetch }
89
- it { is_expected.to eq nil }
90
- end
91
-
92
- context 'when user already saved' do
93
- before do
94
- @user.save!
95
- end
96
-
97
- subject { @user.fetch }
98
- it { is_expected.not_to eq nil }
99
-
100
- describe '.id' do
101
- subject { @user.fetch.id }
102
- it { is_expected.to eq @user.id }
103
- end
104
- end
105
- end
106
-
107
- describe '#revoke!' do
108
- context 'when does not have permission' do
109
- before do
110
- @user = Facemock::FbGraph::Application::User.new
111
- @user.save!
112
- end
113
-
114
- subject { lambda { @user.revoke! } }
115
- it { is_expected.not_to raise_error }
116
- end
117
-
118
- context 'when have some permissions' do
119
- before do
120
- @user = Facemock::FbGraph::Application::User.new({permissions: "email, read_stream"})
121
- @user.save!
122
- end
123
-
124
- it 'should destroy permissions' do
125
- @user.revoke!
126
- expect(Facemock::FbGraph::Application::User::Right.find_by_user_id(@user.id)).to be_nil
127
- expect(@user.permissions).to be_empty
128
- end
129
- end
130
- end
131
- end
@@ -1,140 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Facemock::FbGraph::Application do
4
- let(:table_name) { "applications" }
5
-
6
- let(:facebook_app_id) { 100000000000000 }
7
- let(:facebook_app_secret) { "test_secret" }
8
- let(:access_token) { "access_token" }
9
-
10
- let(:db_name) { ".test" }
11
- let(:adapter) { "sqlite3" }
12
- let(:db_directory) { File.expand_path("../../../../db", __FILE__) }
13
- let(:db_filepath) { File.join(db_directory, "#{db_name}.#{adapter}") }
14
-
15
- it 'should have a user class' do
16
- expect(Facemock::FbGraph::Application::User).to be_truthy
17
- expect(Facemock::FbGraph::Application::User.ancestors).to include ActiveRecord::Base
18
- end
19
-
20
- it 'should have a users class' do
21
- expect(Facemock::FbGraph::Application::TestUsers).to be_truthy
22
- expect(Facemock::FbGraph::Application::TestUsers.ancestors).to include Array
23
- end
24
-
25
- describe '.table_name' do
26
- subject { Facemock::FbGraph::Application.table_name }
27
- it { is_expected.to eq table_name }
28
- end
29
-
30
- before do
31
- stub_const("Facemock::Config::Database::DEFAULT_DB_NAME", db_name)
32
- Facemock::Config.database
33
- end
34
- after { Facemock::Config.database.drop }
35
-
36
- describe '#new' do
37
- context 'without argument' do
38
- subject { lambda { Facemock::FbGraph::Application.new } }
39
- it { is_expected.to raise_error ArgumentError }
40
- end
41
-
42
- context 'with facebook app id and secret' do
43
- before { @app = Facemock::FbGraph::Application.new(facebook_app_id, secret: facebook_app_secret) }
44
-
45
- describe '.id' do
46
- subject { @app.id }
47
- it { is_expected.to eq facebook_app_id }
48
- end
49
-
50
- describe '.secreet' do
51
- subject { @app.secret }
52
- it { is_expected.to eq facebook_app_secret }
53
- end
54
- end
55
-
56
- context 'with facebook app id and secret' do
57
- before do
58
- options = { secret: facebook_app_secret }
59
- Facemock::FbGraph.on
60
- @app = Facemock::FbGraph::Application.new(facebook_app_id, options)
61
- end
62
-
63
- describe '.id' do
64
- subject { @app.id }
65
- it { is_expected.to eq facebook_app_id }
66
- end
67
-
68
- describe '.secreet' do
69
- subject { @app.secret }
70
- it { is_expected.to eq facebook_app_secret }
71
- end
72
- end
73
-
74
- context 'with app symbole and access_token' do
75
- before { @app = Facemock::FbGraph::Application.new(:app, access_token: access_token) }
76
-
77
- describe '.id' do
78
- subject { @app.id }
79
- it { is_expected.to be_kind_of Integer }
80
- end
81
-
82
- describe '.secreet' do
83
- subject { @app.secret }
84
- it { is_expected.not_to be_empty }
85
- end
86
- end
87
- end
88
-
89
- describe '#fetch' do
90
- before { @app = Facemock::FbGraph::Application.new(facebook_app_id, secret: facebook_app_secret) }
91
-
92
- describe '.id' do
93
- subject { @app.fetch.identifier }
94
- it { is_expected.to eq @app.identifier }
95
- end
96
-
97
- describe '.secret' do
98
- subject { @app.fetch.secret }
99
- it { is_expected.to eq @app.secret }
100
- end
101
- end
102
-
103
- describe '#test_user!' do
104
- before { @app = Facemock::FbGraph::Application.new(facebook_app_id, secret: facebook_app_secret) }
105
-
106
- it 'should created user' do
107
- expect(Facemock::FbGraph::Application::User.all).to be_empty
108
- user = @app.test_user!
109
- expect(Facemock::FbGraph::Application::User.find_by_id(user.id)).to eq user
110
- end
111
- end
112
-
113
- describe '#test_users' do
114
- before do
115
- @app = Facemock::FbGraph::Application.new(facebook_app_id, secret: facebook_app_secret)
116
- end
117
-
118
- context 'when test_user is not created' do
119
- subject { @app.test_users }
120
-
121
- it { is_expected.to be_kind_of Facemock::FbGraph::Application::TestUsers }
122
- it { is_expected.to be_empty }
123
- end
124
-
125
- context 'when test_user is created' do
126
- before do
127
- @user = @app.test_user!
128
- end
129
-
130
- subject { @app.test_users }
131
- it { is_expected.to be_kind_of Facemock::FbGraph::Application::TestUsers }
132
- it { is_expected.not_to be_empty }
133
-
134
- describe '.first.id' do
135
- subject { @app.test_users.first.id }
136
- it { is_expected.to eq @user.id }
137
- end
138
- end
139
- end
140
- end
@@ -1,13 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Facemock::FbGraph::Errors do
4
- before do
5
- Facemock::FbGraph.off
6
- end
7
-
8
- it 'should have a error module' do
9
- expect(Facemock::FbGraph::Errors::Error).to be_truthy
10
- expect(Facemock::FbGraph::Errors::Error.ancestors).to include StandardError
11
- expect(Facemock::FbGraph::Errors::InvalidToken.ancestors).to include FbGraph::InvalidToken
12
- end
13
- end
@@ -1,39 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Facemock::FbGraph::User do
4
- let(:facebook_app_id) { "100000000000000" }
5
- let(:facebook_app_secret) { "test_secret" }
6
- let(:db_name) { ".test" }
7
- let(:adapter) { "sqlite3" }
8
- let(:table_names) { [:users, :user_rights] }
9
- let(:db_directory) { File.expand_path("../../../../db", __FILE__) }
10
- let(:db_filepath) { File.join(db_directory, "#{db_name}.#{adapter}") }
11
-
12
- before do
13
- stub_const("Facemock::Config::Database::DEFAULT_DB_NAME", db_name)
14
- Facemock::Config.database
15
- end
16
- after { Facemock::Config.database.drop }
17
-
18
- describe '.me' do
19
- context 'when access_token is correct' do
20
- before do
21
- app = Facemock::FbGraph::Application.new(facebook_app_id, secret: facebook_app_secret)
22
- @user = app.test_user!
23
- @access_token = @user.access_token
24
- end
25
-
26
- it 'can get user' do
27
- user = Facemock::FbGraph::User.me(@access_token)
28
- Facemock::FbGraph::Application::User.column_names.each do |column|
29
- expect(user.send(column)).to eq @user.send(column) unless column == "created_at"
30
- end
31
- end
32
- end
33
-
34
- context 'when access_token is incorrect' do
35
- subject { Facemock::FbGraph::User.me('incorrect_token') }
36
- it { is_expected.to eq nil }
37
- end
38
- end
39
- end
@@ -1,54 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Facemock::FbGraph do
4
- let(:db_name) { ".test" }
5
-
6
- it 'should have a application class' do
7
- expect(Facemock::FbGraph::Application).to be_truthy
8
- end
9
-
10
- it 'should have a errors module' do
11
- expect(Facemock::FbGraph::Errors).to be_truthy
12
- end
13
-
14
- it 'should have a user module' do
15
- expect(Facemock::FbGraph::User).to be_truthy
16
- end
17
-
18
- before do
19
- stub_const("Facemock::Config::Database::DEFAULT_DB_NAME", db_name)
20
- end
21
- after { Facemock::Config.database.drop }
22
-
23
- describe '#on' do
24
- subject { Facemock::FbGraph.on }
25
- it { is_expected.to be_truthy }
26
-
27
- context 'FbGraph' do
28
- before { Facemock::FbGraph.on }
29
- it { expect(::FbGraph).to eq Facemock::FbGraph }
30
- it { expect( lambda { Facemock::FbGraph.on } ).not_to raise_error }
31
- end
32
- end
33
-
34
- describe '#off' do
35
- subject { Facemock::FbGraph.off }
36
- it { is_expected.to be_truthy }
37
-
38
- context 'FbGraph' do
39
- before { Facemock::FbGraph.off }
40
- it { expect(FbGraph).to eq FbGraph }
41
- it { expect( lambda { Facemock::FbGraph.off } ).not_to raise_error }
42
-
43
- context 'when mock is on' do
44
- before do
45
- Facemock::FbGraph.on
46
- Facemock::FbGraph.off
47
- end
48
-
49
- subject { ::FbGraph }
50
- it { is_expected.to eq FbGraph }
51
- end
52
- end
53
- end
54
- end
@@ -1,72 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Facemock do
4
- let(:version) { "0.0.2" }
5
- let(:db_name) { ".test" }
6
-
7
- describe 'VERSION' do
8
- subject { Facemock::VERSION }
9
- it { is_expected.to eq version }
10
- end
11
-
12
- it 'should have a config module' do
13
- expect(Facemock::Config).to be_truthy
14
- end
15
-
16
- it 'should have a fb_graph module' do
17
- expect(Facemock::FbGraph).to be_truthy
18
- end
19
-
20
- it 'should have a errors module' do
21
- expect(Facemock::Errors).to be_truthy
22
- end
23
-
24
- before do
25
- stub_const("Facemock::Config::Database::DEFAULT_DB_NAME", db_name)
26
- end
27
- after { Facemock::Config.database.drop }
28
-
29
- describe '#on' do
30
- subject { Facemock.on }
31
- it { is_expected.to be_truthy }
32
-
33
- context 'FbGraph' do
34
- context 'without option' do
35
- before { Facemock.on }
36
- it { expect(::FbGraph).to eq Facemock::FbGraph }
37
- it { expect( lambda { Facemock.on } ).not_to raise_error }
38
- end
39
-
40
- context 'with database_name option' do
41
- before do
42
- @options = { database_name: db_name}
43
- Facemock.on(@options)
44
- end
45
- it { expect(::FbGraph).to eq Facemock::FbGraph }
46
- it { expect( lambda { Facemock.on } ).not_to raise_error }
47
- it { expect( lambda { Facemock.on(@options) } ).not_to raise_error }
48
- end
49
- end
50
- end
51
-
52
- describe '#off' do
53
- subject { Facemock.off }
54
- it { is_expected.to be_truthy }
55
-
56
- context 'FbGraph' do
57
- before { Facemock.off }
58
- it { expect(FbGraph).to eq FbGraph }
59
- it { expect( lambda { Facemock.off } ).not_to raise_error }
60
-
61
- context 'when Mock is on' do
62
- before do
63
- Facemock.on
64
- Facemock.off
65
- end
66
-
67
- subject { ::FbGraph }
68
- it { is_expected.to eq FbGraph }
69
- end
70
- end
71
- end
72
- end
data/spec/spec_helper.rb DELETED
@@ -1,15 +0,0 @@
1
- $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
-
3
- require 'simplecov'
4
- require 'coveralls'
5
-
6
- SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
7
- SimpleCov::Formatter::HTMLFormatter,
8
- Coveralls::SimpleCov::Formatter
9
- ]
10
- SimpleCov.start do
11
- add_filter '.bundle/'
12
- add_filter '/spec/'
13
- end
14
-
15
- require 'facemock'