fix: 同步记录弹窗改为局部刷新 (#62)
This commit is contained in:
+29
-1
@@ -67,7 +67,8 @@ func TestMainPagesReturnOK(t *testing.T) {
|
||||
sybResponse := httptest.NewRecorder()
|
||||
router.ServeHTTP(sybResponse, sybRequest)
|
||||
for _, want := range []string{
|
||||
"同步记录", "刷新记录", `data-history-refresh-url=`,
|
||||
"同步记录", "刷新同步记录", `data-syb-history-slot`,
|
||||
`data-history-fetch-url=`,
|
||||
`name="date_from"`, `name="date_to"`,
|
||||
"按顺运宝货运单创建日期(UTC+8)同步",
|
||||
} {
|
||||
@@ -79,6 +80,33 @@ func TestMainPagesReturnOK(t *testing.T) {
|
||||
t.Error("顺运宝页面不应再显示旧的指定日期同步入口")
|
||||
}
|
||||
|
||||
partialRequest := httptest.NewRequest(http.MethodGet,
|
||||
"/syb/sync-history?history_page=1&order_no=ORDER-1&date_from=2026-08-01&date_to=2026-08-09", nil)
|
||||
addAuth(partialRequest)
|
||||
partialResponse := httptest.NewRecorder()
|
||||
router.ServeHTTP(partialResponse, partialRequest)
|
||||
partialBody := partialResponse.Body.String()
|
||||
if partialResponse.Code != http.StatusOK ||
|
||||
!strings.Contains(partialBody, "刷新同步记录") ||
|
||||
!strings.Contains(partialBody, `data-history-fetch-url=`) {
|
||||
t.Fatalf("同步记录片段响应不完整:%d %s", partialResponse.Code, partialBody)
|
||||
}
|
||||
if partialResponse.Header().Get("Cache-Control") != "no-store" {
|
||||
t.Fatalf("同步记录刷新响应不得被浏览器缓存,实际 Cache-Control=%q",
|
||||
partialResponse.Header().Get("Cache-Control"))
|
||||
}
|
||||
if strings.Contains(partialBody, `data-syb-sync-form`) || strings.Contains(partialBody, `modal-backdrop`) {
|
||||
t.Fatalf("同步记录片段不应包含 SYB 主页面或弹窗外壳:%s", partialBody)
|
||||
}
|
||||
unauthorizedPartial := httptest.NewRequest(http.MethodGet, "/syb/sync-history", nil)
|
||||
unauthorizedPartialResponse := httptest.NewRecorder()
|
||||
router.ServeHTTP(unauthorizedPartialResponse, unauthorizedPartial)
|
||||
if unauthorizedPartialResponse.Code != http.StatusSeeOther ||
|
||||
!strings.HasPrefix(unauthorizedPartialResponse.Header().Get("Location"), "/login") {
|
||||
t.Fatalf("匿名读取同步记录片段应跳转登录,实际 %d %s",
|
||||
unauthorizedPartialResponse.Code, unauthorizedPartialResponse.Header().Get("Location"))
|
||||
}
|
||||
|
||||
if !service.TryStartSybSync() {
|
||||
t.Fatal("准备同步中页面状态失败")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user