Newer
Older
invitation_service
invitation_identifier
invitation_limit
invited_by_id
invited_by_type
authentication_token
auto_follow_back
auto_follow_back_aspect_id
end
end
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
describe "queue_export" do
it "queues up a job to perform the export" do
user = FactoryGirl.create :user
expect(Workers::ExportUser).to receive(:perform_async).with(user.id)
user.queue_export
expect(user.exporting).to be_truthy
end
end
describe "perform_export!" do
it "saves a json export to the user" do
user = FactoryGirl.create :user, exporting: true
user.perform_export!
expect(user.export).to be_present
expect(user.exported_at).to be_present
expect(user.exporting).to be_falsey
expect(user.export.filename).to match /.json/
expect(ActiveSupport::Gzip.decompress(user.export.file.read)).to include user.username
end
it "compresses the result" do
user = FactoryGirl.create :user, exporting: true
expect(ActiveSupport::Gzip).to receive :compress
user.perform_export!
end
end
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
describe "queue_export_photos" do
it "queues up a job to perform the export photos" do
user = FactoryGirl.create :user
expect(Workers::ExportPhotos).to receive(:perform_async).with(user.id)
user.queue_export_photos
expect(user.exporting_photos).to be_truthy
end
end
describe "perform_export_photos!" do
before do
@user = alice
filename = 'button.png'
image = File.join(File.dirname(__FILE__), '..', 'fixtures', filename)
@saved_image = @user.build_post(:photo, :user_file => File.open(image), :to => alice.aspects.first.id)
@saved_image.save!
end
it "saves a zip export to the user" do
@user.perform_export_photos!
expect(@user.exported_photos_file).to be_present
expect(@user.exported_photos_at).to be_present
expect(@user.exporting_photos).to be_falsey
expect(@user.exported_photos_file.filename).to match /.zip/
expect(Zip::File.open(@user.exported_photos_file.path).entries.count).to eq(1)
end
it "does not add empty entries when photo not found" do
File.unlink @user.photos.first.unprocessed_image.path
@user.perform_export_photos!
expect(@user.exported_photos_file.filename).to match /.zip/
expect(Zip::File.open(@user.exported_photos_file.path).entries.count).to eq(0)
Jason Robinson
a validé
describe "sign up" do
before do
params = {:username => "ohai",
:email => "ohai@example.com",
:password => "password",
:password_confirmation => "password",
:captcha => "12345",
Jason Robinson
a validé
:person =>
{:profile =>
{:first_name => "O",
:last_name => "Hai"}
}
}
@user = User.build(params)
end
it "saves with captcha off" do
AppConfig.settings.captcha.enable = false
expect(@user).to receive(:save).and_return(true)
Jason Robinson
a validé
@user.sign_up
end
it "saves with captcha on" do
AppConfig.settings.captcha.enable = true
expect(@user).to receive(:save_with_captcha).and_return(true)
Jason Robinson
a validé
@user.sign_up
end
end
describe "maintenance" do
before do
@user = bob
AppConfig.settings.maintenance.remove_old_users.enable = true
end
it "#flags user for removal" do
remove_at = Time.now+5.days
@user.flag_for_removal(remove_at)
expect(@user.remove_after).to eq(remove_at)
end
end
describe "#auth database auth maintenance" do
before do
@user = bob
@user.remove_after = Time.now
@user.save
end
it "remove_after is cleared" do
@user.after_database_authentication
expect(@user.remove_after).to eq(nil)
end
Marc Burt
a validé
Marc Burt
a validé
before do
invited_user = FactoryGirl.build(:user, username: nil)
invited_user.save(validate: false)
closed_account = FactoryGirl.create(:user)
closed_account.person.closed_account = true
closed_account.save
Marc Burt
a validé
end
it "returns total_users excluding closed accounts & users without usernames" do
expect(User.active.count).to eq 6 # 6 users from fixtures
Marc Burt
a validé
end