Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab <devaroop123@yahoo.co.in>2014-02-06 18:17:21 +0400
committerGitLab <devaroop123@yahoo.co.in>2014-02-06 18:17:21 +0400
commitb1492a2a627d1fe51f5cdd5423169247a188f7e4 (patch)
treedf6956064d849616c20d2014b0a23412bdb702a5 /spec/models/user_spec.rb
parent1c9a41e0d5cac3ee937555ae4189ecd1ad597004 (diff)
parent319f355aeda3fa67c1bc4451c4db5787090ab8af (diff)
sync with upstream for ease to merge
Diffstat (limited to 'spec/models/user_spec.rb')
-rw-r--r--spec/models/user_spec.rb93
1 files changed, 89 insertions, 4 deletions
diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb
index f7e242af00a..3b09f7978bc 100644
--- a/spec/models/user_spec.rb
+++ b/spec/models/user_spec.rb
@@ -36,6 +36,13 @@
# notification_level :integer default(1), not null
# password_expires_at :datetime
# created_by_id :integer
+# avatar :string(255)
+# confirmation_token :string(255)
+# confirmed_at :datetime
+# confirmation_sent_at :datetime
+# unconfirmed_email :string(255)
+# hide_no_ssh_key :boolean default(FALSE)
+# website_url :string(255) default(""), not null
#
require 'spec_helper'
@@ -69,6 +76,27 @@ describe User do
it { should_not allow_value(-1).for(:projects_limit) }
it { should ensure_length_of(:bio).is_within(0..255) }
+
+ describe 'email' do
+ it 'accepts info@example.com' do
+ user = build(:user, email: 'info@example.com')
+ expect(user).to be_valid
+ end
+ it 'accepts info+test@example.com' do
+ user = build(:user, email: 'info+test@example.com')
+ expect(user).to be_valid
+ end
+
+ it 'rejects test@test@example.com' do
+ user = build(:user, email: 'test@test@example.com')
+ expect(user).to be_invalid
+ end
+
+ it 'rejects mailto:test@example.com' do
+ user = build(:user, email: 'mailto:test@example.com')
+ expect(user).to be_invalid
+ end
+ end
end
describe "Respond to" do
@@ -85,8 +113,8 @@ describe User do
end
it "should not generate password by default" do
- user = create(:user, password: 'abcdefg')
- user.password.should == 'abcdefg'
+ user = create(:user, password: 'abcdefghe')
+ user.password.should == 'abcdefghe'
end
it "should generate password when forcing random password" do
@@ -135,7 +163,6 @@ describe User do
end
it { @user.several_namespaces?.should be_true }
- it { @user.namespaces.should include(@user.namespace) }
it { @user.authorized_groups.should == [@group] }
it { @user.owned_groups.should == [@group] }
end
@@ -162,7 +189,6 @@ describe User do
end
it { @user.several_namespaces?.should be_false }
- it { @user.namespaces.should == [@user.namespace] }
end
describe 'blocking user' do
@@ -286,6 +312,65 @@ describe User do
user.all_ssh_keys.should include(key.key)
end
+ end
+ describe :avatar_type do
+ let(:user) { create(:user) }
+
+ it "should be true if avatar is image" do
+ user.update_attribute(:avatar, 'uploads/avatar.png')
+ user.avatar_type.should be_true
+ end
+
+ it "should be false if avatar is html page" do
+ user.update_attribute(:avatar, 'uploads/avatar.html')
+ user.avatar_type.should == ["only images allowed"]
+ end
+ end
+
+ describe '#full_website_url' do
+ let(:user) { create(:user) }
+
+ it 'begins with http if website url omits it' do
+ user.website_url = 'test.com'
+
+ expect(user.full_website_url).to eq 'http://test.com'
+ end
+
+ it 'begins with http if website url begins with http' do
+ user.website_url = 'http://test.com'
+
+ expect(user.full_website_url).to eq 'http://test.com'
+ end
+
+ it 'begins with https if website url begins with https' do
+ user.website_url = 'https://test.com'
+
+ expect(user.full_website_url).to eq 'https://test.com'
+ end
+ end
+
+ describe '#short_website_url' do
+ let(:user) { create(:user) }
+
+ it 'does not begin with http if website url omits it' do
+ user.website_url = 'test.com'
+
+ expect(user.short_website_url).to eq 'test.com'
+ end
+
+ it 'does not begin with http if website url begins with http' do
+ user.website_url = 'http://test.com'
+
+ expect(user.short_website_url).to eq 'test.com'
+ end
+
+ it 'does not begin with https if website url begins with https' do
+ user.website_url = 'https://test.com'
+
+ expect(user.short_website_url).to eq 'test.com'
+ end
end
+
end
+