mirror of
https://git.rwth-aachen.de/acs/public/villas/web-backend-go/
synced 2025-03-30 00:00:12 +01:00

Instead of marshaling the expected response in the test function the marshaling happens inside the NewTestEndpoint() where is passed as interface{}.
39 lines
885 B
Go
39 lines
885 B
Go
package user
|
|
|
|
import (
|
|
"encoding/json"
|
|
"testing"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
"github.com/stretchr/testify/assert"
|
|
|
|
"git.rwth-aachen.de/acs/public/villas/villasweb-backend-go/common"
|
|
)
|
|
|
|
func TestUserEndpoints(t *testing.T) {
|
|
|
|
myUsers := []common.User{common.User0}
|
|
msgUsers := common.ResponseMsgUsers{Users: myUsers}
|
|
|
|
db := common.DummyInitDB()
|
|
defer db.Close()
|
|
common.DummyOnlyAdminDB(db)
|
|
|
|
router := gin.Default()
|
|
api := router.Group("/api")
|
|
|
|
VisitorAuthenticate(api.Group("/authenticate"))
|
|
api.Use(Authentication(true))
|
|
RegisterUserEndpoints(api.Group("/users"))
|
|
|
|
credjson, _ := json.Marshal(common.CredAdmin)
|
|
|
|
token, err := common.NewAuthenticateForTest(router,
|
|
"/api/authenticate", "POST", credjson, 200)
|
|
assert.NoError(t, err)
|
|
|
|
// test GET user/
|
|
err = common.NewTestEndpoint(router, token, "/api/users", "GET",
|
|
nil, 200, msgUsers)
|
|
assert.NoError(t, err)
|
|
}
|