2017-03-20 11:31:08 +03:00
// 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 ) )
2017-08-28 12:17:45 +03:00
if assert . NoError ( t , err ) && assert . Len ( t , oids , 2 ) {
2017-03-20 11:31:08 +03:00
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 ) )
2017-08-28 12:17:45 +03:00
if assert . NoError ( t , err ) && assert . Len ( t , oids , 1 ) {
2017-03-20 11:31:08 +03:00
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 ) )
2017-08-28 12:17:45 +03:00
if ! assert . NoError ( t , err ) || ! assert . Len ( t , oids , 1 ) {
2017-03-20 11:31:08 +03:00
return
}
assert . True ( t , oids [ 0 ] . Show )
err = ToggleUserOpenIDVisibility ( oids [ 0 ] . ID )
2017-03-21 03:55:00 +03:00
if ! assert . NoError ( t , err ) {
2017-03-20 11:31:08 +03:00
return
}
oids , err = GetUserOpenIDs ( int64 ( 2 ) )
2017-08-28 12:17:45 +03:00
if ! assert . NoError ( t , err ) || ! assert . Len ( t , oids , 1 ) {
return
2017-03-20 11:31:08 +03:00
}
2017-08-28 12:17:45 +03:00
assert . False ( t , oids [ 0 ] . Show )
2017-03-20 11:31:08 +03:00
err = ToggleUserOpenIDVisibility ( oids [ 0 ] . ID )
2017-03-21 03:55:00 +03:00
if ! assert . NoError ( t , err ) {
2017-03-20 11:31:08 +03:00
return
}
oids , err = GetUserOpenIDs ( int64 ( 2 ) )
2017-03-21 03:55:00 +03:00
if ! assert . NoError ( t , err ) {
2017-03-20 11:31:08 +03:00
return
}
2017-08-28 12:17:45 +03:00
if assert . Len ( t , oids , 1 ) {
assert . True ( t , oids [ 0 ] . Show )
}
2017-03-20 11:31:08 +03:00
}