2018-10-15 14:42:47 +05:30
|
|
|
require 'spec_helper'
|
|
|
|
require Rails.root.join('db', 'migrate', '20180413022611_create_missing_namespace_for_internal_users.rb')
|
|
|
|
|
|
|
|
describe CreateMissingNamespaceForInternalUsers, :migration do
|
|
|
|
let(:users) { table(:users) }
|
|
|
|
let(:namespaces) { table(:namespaces) }
|
|
|
|
let(:routes) { table(:routes) }
|
|
|
|
|
2019-09-04 21:01:54 +05:30
|
|
|
context "for ghost user" do
|
|
|
|
let(:internal_user) do
|
|
|
|
users.create!(email: 'test@example.com', projects_limit: 100, username: 'test', ghost: true)
|
|
|
|
end
|
2018-10-15 14:42:47 +05:30
|
|
|
|
2019-09-04 21:01:54 +05:30
|
|
|
it 'creates the missing namespace' do
|
|
|
|
expect(namespaces.find_by(owner_id: internal_user.id)).to be_nil
|
2018-10-15 14:42:47 +05:30
|
|
|
|
2019-09-04 21:01:54 +05:30
|
|
|
migrate!
|
2018-10-15 14:42:47 +05:30
|
|
|
|
2019-09-04 21:01:54 +05:30
|
|
|
namespace = Namespace.find_by(type: nil, owner_id: internal_user.id)
|
|
|
|
route = namespace.route
|
2018-10-15 14:42:47 +05:30
|
|
|
|
2019-09-04 21:01:54 +05:30
|
|
|
expect(namespace.path).to eq(route.path)
|
|
|
|
expect(namespace.name).to eq(route.name)
|
|
|
|
end
|
2018-10-15 14:42:47 +05:30
|
|
|
|
2019-09-04 21:01:54 +05:30
|
|
|
it 'sets notification email' do
|
|
|
|
users.update(internal_user.id, notification_email: nil)
|
2018-10-15 14:42:47 +05:30
|
|
|
|
2019-09-04 21:01:54 +05:30
|
|
|
expect(users.find(internal_user.id).notification_email).to be_nil
|
2018-10-15 14:42:47 +05:30
|
|
|
|
2019-09-04 21:01:54 +05:30
|
|
|
migrate!
|
2018-10-15 14:42:47 +05:30
|
|
|
|
2019-09-04 21:01:54 +05:30
|
|
|
user = users.find(internal_user.id)
|
|
|
|
expect(user.notification_email).to eq(user.email)
|
2018-10-15 14:42:47 +05:30
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|