committed by
Kim "BKC" Carlbäcker
11 changed files with 180 additions and 0 deletions
-
1cmd/web.go
-
17models/fixtures/user_open_id.yml
-
2models/migrations/migrations.go
-
18models/migrations/v25.go
-
8models/user_openid.go
-
82models/user_openid_test.go
-
2options/locale/locale_en-US.ini
-
8routers/user/profile.go
-
16routers/user/setting_openid.go
-
8templates/user/profile.tmpl
-
18templates/user/settings/openid.tmpl
@ -0,0 +1,17 @@ |
|||
- |
|||
id: 1 |
|||
uid: 1 |
|||
uri: https://user1.domain1.tld/ |
|||
show: false |
|||
|
|||
- |
|||
id: 2 |
|||
uid: 1 |
|||
uri: http://user1.domain2.tld/ |
|||
show: true |
|||
|
|||
- |
|||
id: 3 |
|||
uid: 2 |
|||
uri: https://domain1.tld/user2/ |
|||
show: true |
@ -0,0 +1,18 @@ |
|||
// Copyright 2017 Gitea. All rights reserved.
|
|||
// Use of this source code is governed by a MIT-style
|
|||
// license that can be found in the LICENSE file.
|
|||
|
|||
package migrations |
|||
|
|||
import ( |
|||
"fmt" |
|||
|
|||
"github.com/go-xorm/xorm" |
|||
) |
|||
|
|||
func addUserOpenIDShow(x *xorm.Engine) error { |
|||
if err := x.Sync2(new(UserOpenID)); err != nil { |
|||
return fmt.Errorf("Sync2: %v", err) |
|||
} |
|||
return nil |
|||
} |
@ -0,0 +1,82 @@ |
|||
// Copyright 2017 The Gitea Authors. All rights reserved.
|
|||
// Use of this source code is governed by a MIT-style
|
|||
// license that can be found in the LICENSE file.
|
|||
|
|||
package models |
|||
|
|||
import ( |
|||
"testing" |
|||
|
|||
"github.com/stretchr/testify/assert" |
|||
) |
|||
|
|||
func TestGetUserOpenIDs(t *testing.T) { |
|||
assert.NoError(t, PrepareTestDatabase()) |
|||
|
|||
oids, err := GetUserOpenIDs(int64(1)) |
|||
if assert.NoError(t, err) { |
|||
assert.Len(t, oids, 2) |
|||
assert.Equal(t, oids[0].URI, "https://user1.domain1.tld/") |
|||
assert.False(t, oids[0].Show) |
|||
assert.Equal(t, oids[1].URI, "http://user1.domain2.tld/") |
|||
assert.True(t, oids[1].Show) |
|||
} |
|||
|
|||
oids, err = GetUserOpenIDs(int64(2)) |
|||
if assert.NoError(t, err) { |
|||
assert.Len(t, oids, 1) |
|||
assert.Equal(t, oids[0].URI, "https://domain1.tld/user2/") |
|||
assert.True(t, oids[0].Show) |
|||
} |
|||
} |
|||
|
|||
func TestGetUserByOpenID(t *testing.T) { |
|||
assert.NoError(t, PrepareTestDatabase()) |
|||
|
|||
user, err := GetUserByOpenID("https://unknown") |
|||
if assert.Error(t, err) { |
|||
assert.True(t, IsErrUserNotExist(err)) |
|||
} |
|||
|
|||
user, err = GetUserByOpenID("https://user1.domain1.tld") |
|||
if assert.NoError(t, err) { |
|||
assert.Equal(t, user.ID, int64(1)) |
|||
} |
|||
|
|||
user, err = GetUserByOpenID("https://domain1.tld/user2/") |
|||
if assert.NoError(t, err) { |
|||
assert.Equal(t, user.ID, int64(2)) |
|||
} |
|||
} |
|||
|
|||
func TestToggleUserOpenIDVisibility(t *testing.T) { |
|||
assert.NoError(t, PrepareTestDatabase()) |
|||
oids, err := GetUserOpenIDs(int64(2)) |
|||
if ! assert.NoError(t, err) { |
|||
return |
|||
} |
|||
assert.Len(t, oids, 1) |
|||
assert.True(t, oids[0].Show) |
|||
|
|||
err = ToggleUserOpenIDVisibility(oids[0].ID) |
|||
if ! assert.NoError(t, err) { |
|||
return |
|||
} |
|||
|
|||
oids, err = GetUserOpenIDs(int64(2)) |
|||
if assert.NoError(t, err) { |
|||
assert.Len(t, oids, 1) |
|||
assert.False(t, oids[0].Show) |
|||
} |
|||
err = ToggleUserOpenIDVisibility(oids[0].ID) |
|||
if ! assert.NoError(t, err) { |
|||
return |
|||
} |
|||
|
|||
oids, err = GetUserOpenIDs(int64(2)) |
|||
if ! assert.NoError(t, err) { |
|||
return |
|||
} |
|||
assert.Len(t, oids, 1) |
|||
assert.True(t, oids[0].Show) |
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue