Fix stale conversation sync labels on mobile

This commit is contained in:
kris
2026-04-07 13:35:52 +08:00
parent a43bb92f3c
commit 6153e94000
7 changed files with 76 additions and 4 deletions

View File

@@ -51,6 +51,8 @@ public class BossApiClientDispatchPlansTest {
assertEquals("GET", connection.requestMethodValue);
assertEquals(12000, connection.connectTimeoutValue);
assertEquals(30000, connection.readTimeoutValue);
assertEquals("no-cache, no-store, max-age=0", connection.getRequestProperty("Cache-Control"));
assertEquals("no-cache", connection.getRequestProperty("Pragma"));
}
@Test
@@ -67,6 +69,18 @@ public class BossApiClientDispatchPlansTest {
assertEquals(30000, connection.readTimeoutValue);
}
@Test
public void getConversationHomeSendsNoCacheHeadersToAvoidStaleMobileFeed() throws Exception {
RecordingConnection connection = new RecordingConnection(new URL("https://boss.hyzq.net/api/v1/conversations/home"));
RecordingBossApiClient apiClient = new RecordingBossApiClient(connection);
BossApiClient.ApiResponse response = apiClient.getConversationHome();
assertEquals(200, response.statusCode);
assertEquals("no-cache, no-store, max-age=0", connection.getRequestProperty("Cache-Control"));
assertEquals("no-cache", connection.getRequestProperty("Pragma"));
}
@Test
public void confirmDispatchPlanWritesApprovedTargetProjectIds() throws Exception {
RecordingConnection connection = new RecordingConnection(new URL("https://boss.hyzq.net/api/v1/projects/p1/dispatch-plans/plan-1/confirm"));