fix tests GetQuizList
This commit is contained in:
parent
c3d6d46c38
commit
ee8843288c
@ -5069,7 +5069,7 @@ func getQuizListRequest(token string, body map[string]interface{}) (*http.Respon
|
||||
return http.DefaultClient.Do(req)
|
||||
}
|
||||
|
||||
// todo чекнуть запрос в бд что то не то res [] 27 ! <nil> ? pq: argument of OFFSET must be type bigint, not type text "sessions_count": converting NULL to uint64 is unsupported
|
||||
// отсмотрено
|
||||
func TestGetQuizList_Success(t *testing.T) {
|
||||
quizNames := []string{"Квиз по географии", "Квиз по истории", "Квиз по математике"}
|
||||
var quizIDs []uint64
|
||||
@ -5091,7 +5091,7 @@ func TestGetQuizList_Success(t *testing.T) {
|
||||
t.Run("BasicList", func(t *testing.T) {
|
||||
resp, err := getQuizListRequest(validToken, map[string]interface{}{
|
||||
"limit": 5,
|
||||
"page": 1,
|
||||
"page": 0,
|
||||
"status": "start",
|
||||
})
|
||||
assert.NoError(t, err)
|
||||
@ -5120,7 +5120,7 @@ func TestGetQuizList_Success(t *testing.T) {
|
||||
resp, err := getQuizListRequest(validToken, map[string]interface{}{
|
||||
"limit": 10,
|
||||
"page": 1,
|
||||
"search": "география",
|
||||
"search": "географии",
|
||||
"status": "start",
|
||||
})
|
||||
assert.NoError(t, err)
|
||||
@ -5140,7 +5140,7 @@ func TestGetQuizList_Success(t *testing.T) {
|
||||
assert.True(t, ok)
|
||||
name, ok := quiz["name"].(string)
|
||||
assert.True(t, ok)
|
||||
assert.Contains(t, strings.ToLower(name), "география")
|
||||
assert.Contains(t, strings.ToLower(name), "географии")
|
||||
}
|
||||
})
|
||||
}
|
||||
@ -5336,12 +5336,12 @@ func TestGetQuizList_Pagination(t *testing.T) {
|
||||
})
|
||||
}
|
||||
|
||||
// todo res [] 0 ! pq: syntax error in tsquery: "Filter Test" ? pq: argument of LIMIT must be type bigint, not type text
|
||||
// отсмотрено
|
||||
func TestGetQuizList_Filters(t *testing.T) {
|
||||
statuses := []string{"draft", "start", "stop", "template"}
|
||||
for _, status := range statuses {
|
||||
resp, err := createQuizRequest(validToken, map[string]interface{}{
|
||||
"name": fmt.Sprintf("Filter Test Quiz %s", status),
|
||||
"name": fmt.Sprintf("тест по фильтру %s", status),
|
||||
"status": status,
|
||||
})
|
||||
assert.NoError(t, err)
|
||||
@ -5356,40 +5356,34 @@ func TestGetQuizList_Filters(t *testing.T) {
|
||||
defer resp.Body.Close()
|
||||
assert.Equal(t, http.StatusOK, resp.StatusCode)
|
||||
|
||||
var result map[string]interface{}
|
||||
var result quiz.GetQuizListResp
|
||||
err = json.NewDecoder(resp.Body).Decode(&result)
|
||||
assert.NoError(t, err)
|
||||
|
||||
items, ok := result["items"].([]interface{})
|
||||
assert.True(t, ok)
|
||||
items := result.Items
|
||||
|
||||
for _, item := range items {
|
||||
quiz, ok := item.(map[string]interface{})
|
||||
assert.True(t, ok)
|
||||
assert.Equal(t, "draft", quiz["status"])
|
||||
assert.Equal(t, "draft", item.Status)
|
||||
}
|
||||
})
|
||||
t.Run("SearchFilter", func(t *testing.T) {
|
||||
resp, err := getQuizListRequest(validToken, map[string]interface{}{
|
||||
"search": "Filter Test",
|
||||
"search": "тест",
|
||||
"limit": 5,
|
||||
"page": 0,
|
||||
})
|
||||
assert.NoError(t, err)
|
||||
defer resp.Body.Close()
|
||||
assert.Equal(t, http.StatusOK, resp.StatusCode)
|
||||
|
||||
var result map[string]interface{}
|
||||
var result quiz.GetQuizListResp
|
||||
err = json.NewDecoder(resp.Body).Decode(&result)
|
||||
assert.NoError(t, err)
|
||||
|
||||
items, ok := result["items"].([]interface{})
|
||||
assert.True(t, ok)
|
||||
items := result.Items
|
||||
|
||||
for _, item := range items {
|
||||
quiz, ok := item.(map[string]interface{})
|
||||
assert.True(t, ok)
|
||||
name, ok := quiz["name"].(string)
|
||||
assert.True(t, ok)
|
||||
assert.Contains(t, name, "Filter Test")
|
||||
assert.Contains(t, item.Name, "тест по фильтру")
|
||||
}
|
||||
})
|
||||
|
||||
@ -5403,12 +5397,11 @@ func TestGetQuizList_Filters(t *testing.T) {
|
||||
defer resp.Body.Close()
|
||||
assert.Equal(t, http.StatusOK, resp.StatusCode)
|
||||
|
||||
var result map[string]interface{}
|
||||
var result quiz.GetQuizListResp
|
||||
err = json.NewDecoder(resp.Body).Decode(&result)
|
||||
assert.NoError(t, err)
|
||||
|
||||
items, ok := result["items"].([]interface{})
|
||||
assert.True(t, ok)
|
||||
items := result.Items
|
||||
assert.GreaterOrEqual(t, len(items), 0)
|
||||
})
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user