package model

import (
	"testing"

	"github.com/onsi/gomega"
)

func Test_InsertUserIfAbsent(t *testing.T) {
	ek := "Test_InsertUserIfAbsent"
	u := "andy"

	g := gomega.NewGomegaWithT(t)

	name, err := InsertUserIfAbsent(ek, u, "a@qq.com", true)
	g.Expect(err).To(gomega.Succeed())
	g.Expect(name).To(gomega.Equal(u))

	name, err = InsertUserIfAbsent(ek, u, "a@qq.com", false)
	g.Expect(err).To(gomega.Succeed())
	g.Expect(name).To(gomega.Equal(u))

	name, err = InsertUserIfAbsent(ek+"01", u, "a@qq.com", false)
	g.Expect(err).To(gomega.Succeed())
	g.Expect(len(name)).To(gomega.Equal(len(u) + 6))

	dbUser, err := GetUserByUserName(u)
	g.Expect(err).To(gomega.Succeed())
	g.Expect(dbUser.Internal).To(gomega.BeTrue())
}
