refactor: isolate forward payload serialization
This commit is contained in:
@@ -28,7 +28,10 @@ public class ForwardTargetActivityTest {
|
||||
|
||||
assertEquals("single", payload.optString("mode"));
|
||||
assertEquals("m1", payload.optString("sourceMessageId"));
|
||||
assertEquals("{\"mode\":\"single\",\"sourceMessageId\":\"m1\"}", payload.toString());
|
||||
assertEquals(
|
||||
"{\"targetProjectId\":\"target\",\"mode\":\"single\",\"sourceMessageId\":\"m1\"}",
|
||||
ForwardPayloads.toRequestBody("target", payload)
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -39,7 +42,16 @@ public class ForwardTargetActivityTest {
|
||||
assertEquals(2, payload.optJSONArray("sourceMessageIds").length());
|
||||
assertEquals("m1", payload.optJSONArray("sourceMessageIds").optString(0));
|
||||
assertEquals("m2", payload.optJSONArray("sourceMessageIds").optString(1));
|
||||
assertEquals("{\"mode\":\"bundle\",\"sourceMessageIds\":[\"m1\",\"m2\"]}", payload.toString());
|
||||
assertEquals(
|
||||
"{\"targetProjectId\":\"target\",\"mode\":\"bundle\",\"sourceMessageIds\":[\"m1\",\"m2\"]}",
|
||||
ForwardPayloads.toRequestBody("target", payload)
|
||||
);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void approvalRequiredResponseUsesApprovalMessage() {
|
||||
StubJSONObject response = new StubJSONObject().withBoolean("approvalRequired", true);
|
||||
assertEquals("已提交主 Agent 审批", ForwardTargetActivity.resolveForwardResultMessage(response));
|
||||
}
|
||||
|
||||
private static final class StubJSONObject extends JSONObject {
|
||||
@@ -50,6 +62,11 @@ public class ForwardTargetActivityTest {
|
||||
return this;
|
||||
}
|
||||
|
||||
StubJSONObject withBoolean(String key, boolean value) {
|
||||
values.put(key, value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String optString(String key) {
|
||||
Object value = values.get(key);
|
||||
@@ -61,6 +78,12 @@ public class ForwardTargetActivityTest {
|
||||
Object value = values.get(key);
|
||||
return value instanceof String ? (String) value : fallback;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean optBoolean(String key, boolean fallback) {
|
||||
Object value = values.get(key);
|
||||
return value instanceof Boolean ? (Boolean) value : fallback;
|
||||
}
|
||||
}
|
||||
|
||||
private static final class StubJSONArray extends JSONArray {
|
||||
|
||||
Reference in New Issue
Block a user