summaryrefslogtreecommitdiff
path: root/spec/requests/api/session_spec.rb
diff options
context:
space:
mode:
authorAndrey Krivko <jastkand@gmail.com>2014-10-22 22:29:26 +0700
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-10-30 18:29:18 +0200
commitbafd30f92cfb754fe6864c9cd595df10b52b11f2 (patch)
tree5f46e2435bf87e4b52b4b459bcffe5f2754d3789 /spec/requests/api/session_spec.rb
parent8388bbe82918d2fca2600620f48e048ccfab2c97 (diff)
downloadgitlab-ce-bafd30f92cfb754fe6864c9cd595df10b52b11f2.tar.gz
Session API: Use case-insensitive authentication like in UI
Diffstat (limited to 'spec/requests/api/session_spec.rb')
-rw-r--r--spec/requests/api/session_spec.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/spec/requests/api/session_spec.rb b/spec/requests/api/session_spec.rb
index 013f425d6ce..57b2e6cbd6a 100644
--- a/spec/requests/api/session_spec.rb
+++ b/spec/requests/api/session_spec.rb
@@ -19,6 +19,32 @@ describe API::API, api: true do
end
end
+ context 'when email has case-typo and password is valid' do
+ it 'should return private token' do
+ post api('/session'), email: user.email.upcase, password: '12345678'
+ expect(response.status).to eq 201
+
+ expect(json_response['email']).to eq user.email
+ expect(json_response['private_token']).to eq user.private_token
+ expect(json_response['is_admin']).to eq user.is_admin?
+ expect(json_response['can_create_project']).to eq user.can_create_project?
+ expect(json_response['can_create_group']).to eq user.can_create_group?
+ end
+ end
+
+ context 'when login has case-typo and password is valid' do
+ it 'should return private token' do
+ post api('/session'), login: user.username.upcase, password: '12345678'
+ expect(response.status).to eq 201
+
+ expect(json_response['email']).to eq user.email
+ expect(json_response['private_token']).to eq user.private_token
+ expect(json_response['is_admin']).to eq user.is_admin?
+ expect(json_response['can_create_project']).to eq user.can_create_project?
+ expect(json_response['can_create_group']).to eq user.can_create_group?
+ end
+ end
+
context "when invalid password" do
it "should return authentication error" do
post api("/session"), email: user.email, password: '123'