mirror of
https://gitlab.bertha.cloud/partitio/Nextcloud-Partitio/gonextcloud
synced 2024-11-14 06:06:24 +00:00
58 lines
1.2 KiB
Go
58 lines
1.2 KiB
Go
package gonextcloud
|
|
|
|
import (
|
|
"fmt"
|
|
"github.com/fatih/structs"
|
|
"github.com/stretchr/testify/assert"
|
|
"gitlab.bertha.cloud/partitio/Nextcloud-Partitio/gonextcloud/types"
|
|
"strings"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestUserUpdate(t *testing.T) {
|
|
if err := initClient(); err != nil {
|
|
return
|
|
}
|
|
username := fmt.Sprintf("%s-2", config.NotExistingUser)
|
|
err := c.Users().Create(username, password, nil)
|
|
if err != nil {
|
|
t.FailNow()
|
|
}
|
|
err = c.Groups().Create(config.NotExistingGroup)
|
|
if err != nil {
|
|
t.FailNow()
|
|
}
|
|
user := &types.UserDetails{
|
|
ID: username,
|
|
Displayname: strings.ToUpper(username),
|
|
Email: "some@mail.com",
|
|
Quota: types.Quota{
|
|
// Unlimited
|
|
Quota: -3,
|
|
},
|
|
Groups: []string{config.NotExistingGroup},
|
|
}
|
|
s := time.Now()
|
|
err = c.Users().Update(user)
|
|
e := time.Now().Sub(s)
|
|
fmt.Println(e.String())
|
|
assert.NoError(t, err)
|
|
u, err := c.Users().Get(username)
|
|
assert.NoError(t, err)
|
|
o := structs.Map(user)
|
|
r := structs.Map(u)
|
|
for k := range o {
|
|
if ignoredUserField(k) {
|
|
continue
|
|
}
|
|
assert.Equal(t, o[k], r[k])
|
|
}
|
|
// Clean up
|
|
err = c.Users().Delete(username)
|
|
assert.NoError(t, err)
|
|
err = c.Groups().Delete(config.NotExistingGroup)
|
|
assert.NoError(t, err)
|
|
|
|
}
|