Initial commit
This commit is contained in:
@@ -0,0 +1,160 @@
|
||||
require 'spec_helper'
|
||||
|
||||
describe SynchronizationOauth do
|
||||
|
||||
before(:all) do
|
||||
@user = create_user(:quota_in_bytes => 500.megabytes, :table_quota => 500)
|
||||
@user.reload
|
||||
end
|
||||
|
||||
after(:all) do
|
||||
bypass_named_maps
|
||||
@user.destroy
|
||||
end
|
||||
|
||||
after(:each) do
|
||||
@user.synchronization_oauths.map &:destroy
|
||||
@user.reload
|
||||
end
|
||||
|
||||
context '#creation_updating' do
|
||||
it 'Tests basic creation operations' do
|
||||
service_name = 'testtest'
|
||||
token_value = 'qv2345q235erfaweerfdsdfsds'
|
||||
token_value_2 = 'aaaaaaaaaaaaaaaaaaaaaaaa'
|
||||
|
||||
SynchronizationOauth.all.size.should eq 0
|
||||
|
||||
oauth_entry = SynchronizationOauth.create(
|
||||
user_id: @user.id,
|
||||
service: service_name,
|
||||
token: token_value
|
||||
).reload
|
||||
|
||||
oauth_entry.nil?.should eq false
|
||||
oauth_entry.user_id.should eq @user.id
|
||||
oauth_entry.service.should eq service_name
|
||||
oauth_entry.token.should eq token_value
|
||||
|
||||
SynchronizationOauth.all.size.should eq 1
|
||||
|
||||
entry_second_handle = SynchronizationOauth.where(user_id: @user.id, service: service_name).first
|
||||
entry_second_handle.nil?.should eq false
|
||||
entry_second_handle.user_id.should eq @user.id
|
||||
entry_second_handle.service.should eq service_name
|
||||
entry_second_handle.token.should eq token_value
|
||||
|
||||
entry_second_handle.should eq oauth_entry
|
||||
|
||||
oauth_entry.token = token_value_2
|
||||
oauth_entry.save.reload
|
||||
oauth_entry.token.should eq token_value_2
|
||||
|
||||
expect {
|
||||
oauth_entry.service = 'another_service_name'
|
||||
oauth_entry.save
|
||||
}.to raise_exception Sequel::ValidationFailed
|
||||
oauth_entry.service = service_name
|
||||
|
||||
expect {
|
||||
oauth_entry.user_id = UUIDTools::UUID.timestamp_create
|
||||
oauth_entry.save
|
||||
}.to raise_exception Sequel::ValidationFailed
|
||||
|
||||
expect {
|
||||
SynchronizationOauth.create(
|
||||
user_id: @user.id,
|
||||
service: service_name,
|
||||
token: UUIDTools::UUID.timestamp_create
|
||||
)
|
||||
}.to raise_exception Sequel::ValidationFailed
|
||||
|
||||
expect {
|
||||
SynchronizationOauth.create(
|
||||
user_id: @user_id,
|
||||
service: service_name,
|
||||
token: nil
|
||||
)
|
||||
}.to raise_exception Sequel::ValidationFailed
|
||||
|
||||
expect {
|
||||
SynchronizationOauth.create(
|
||||
user_id: @user_id,
|
||||
service: service_name,
|
||||
token: ''
|
||||
)
|
||||
}.to raise_exception Sequel::ValidationFailed
|
||||
end
|
||||
end
|
||||
|
||||
context '#deletion' do
|
||||
it 'tests deletion of items' do
|
||||
another_uuid = UUIDTools::UUID.timestamp_create.to_s
|
||||
service_name = 'testtest'
|
||||
service_name_2 = '123456'
|
||||
token_value = 'qv2345q235erfaweerfdsdfsds'
|
||||
token_value_2 = 'aaaaaaaaaaaaaaaaaaaaaaaa'
|
||||
|
||||
SynchronizationOauth.create(
|
||||
user_id: @user.id,
|
||||
service: service_name,
|
||||
token: token_value
|
||||
)
|
||||
SynchronizationOauth.create(
|
||||
user_id: @user.id,
|
||||
service: service_name_2,
|
||||
token: token_value_2
|
||||
)
|
||||
SynchronizationOauth.create(
|
||||
user_id: another_uuid,
|
||||
service: service_name_2,
|
||||
token: token_value_2
|
||||
)
|
||||
|
||||
@user.synchronization_oauths.size.should eq 2
|
||||
|
||||
oauth = SynchronizationOauth.where(user_id: @user.id, service: service_name).first
|
||||
oauth.destroy
|
||||
@user.reload
|
||||
@user.synchronization_oauths.size.should eq 1
|
||||
|
||||
oauth = SynchronizationOauth.where(user_id: @user.id, service: service_name_2).first
|
||||
oauth.destroy
|
||||
@user.reload
|
||||
@user.synchronization_oauths.size.should eq 0
|
||||
end
|
||||
end
|
||||
|
||||
context '#user_oauths' do
|
||||
it 'tests the one to many association of user and sync oauths' do
|
||||
service_name = 'testtest'
|
||||
token_value = 'qv2345q235erfaweerfdsdfsds'
|
||||
|
||||
@user.synchronization_oauths.size.should eq 0
|
||||
|
||||
SynchronizationOauth.create(
|
||||
user_id: @user.id,
|
||||
service: service_name,
|
||||
token: token_value
|
||||
)
|
||||
@user.reload
|
||||
@user.synchronization_oauths.size.should eq 1
|
||||
|
||||
retrieved_entry = @user.synchronization_oauths.first
|
||||
@user.synchronization_oauths.first.should eq retrieved_entry
|
||||
|
||||
@user.synchronization_oauths.first.destroy
|
||||
@user.reload
|
||||
@user.synchronization_oauths.size.should eq 0
|
||||
|
||||
@user.add_synchronization_oauth(service: service_name, token: token_value)
|
||||
@user.synchronization_oauths.size.should eq 1
|
||||
|
||||
expect {
|
||||
@user.add_synchronization_oauth(service: service_name, token: token_value)
|
||||
}.to raise_exception Sequel::ValidationFailed
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user