@nbakka/mcp-appium 2.0.83 → 2.0.84
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/server.js +20 -15
- package/package.json +1 -1
package/lib/server.js
CHANGED
|
@@ -940,11 +940,11 @@ tool(
|
|
|
940
940
|
"Check the approval status of test cases review session with 25 second wait",
|
|
941
941
|
{
|
|
942
942
|
sessionId: zod_1.z.string().describe("The session ID returned from review_testcases tool")
|
|
943
|
-
|
|
943
|
+
},
|
|
944
|
+
async ({ sessionId }) => {
|
|
944
945
|
const session = approvalSessions.get(sessionId);
|
|
945
946
|
|
|
946
947
|
if (!session) {
|
|
947
|
-
},
|
|
948
948
|
return JSON.stringify({
|
|
949
949
|
status: "error",
|
|
950
950
|
message: "Session not found. Invalid session ID."
|
|
@@ -955,42 +955,47 @@ tool(
|
|
|
955
955
|
const elapsedTime = Math.floor((currentTime - session.startTime) / 1000);
|
|
956
956
|
|
|
957
957
|
if (session.status === 'approved') {
|
|
958
|
-
|
|
959
958
|
const approvedTestCases = session.finalTestCases || session.testCases;
|
|
960
|
-
approvalSessions.delete(sessionId);
|
|
961
959
|
|
|
962
960
|
// Clean up session and close server
|
|
963
961
|
if (session.server) {
|
|
964
962
|
session.server.close();
|
|
965
963
|
}
|
|
966
|
-
|
|
964
|
+
approvalSessions.delete(sessionId);
|
|
965
|
+
|
|
966
|
+
return JSON.stringify({
|
|
967
|
+
status: "approved",
|
|
967
968
|
message: "Test cases have been approved by the user.",
|
|
968
969
|
approvedTestCases: approvedTestCases,
|
|
969
970
|
elapsedTime: elapsedTime
|
|
970
|
-
session.server.close();
|
|
971
|
-
}
|
|
972
|
-
approvalSessions.delete(sessionId);
|
|
973
|
-
|
|
974
971
|
});
|
|
975
972
|
} else if (session.status === 'cancelled') {
|
|
976
973
|
// Clean up session and close server
|
|
977
974
|
if (session.server) {
|
|
978
|
-
status: "cancelled",
|
|
979
|
-
message: "Review was cancelled by the user.",
|
|
980
|
-
elapsedTime: elapsedTime
|
|
981
975
|
session.server.close();
|
|
982
976
|
}
|
|
983
977
|
approvalSessions.delete(sessionId);
|
|
984
978
|
|
|
979
|
+
return JSON.stringify({
|
|
980
|
+
status: "cancelled",
|
|
981
|
+
message: "Review was cancelled by the user.",
|
|
982
|
+
elapsedTime: elapsedTime
|
|
985
983
|
});
|
|
986
984
|
} else if (session.status === 'timeout' || elapsedTime > 300) { // 5 minutes
|
|
987
985
|
// Clean up session and close server
|
|
988
986
|
if (session.server) {
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
987
|
+
session.server.close();
|
|
988
|
+
}
|
|
989
|
+
approvalSessions.delete(sessionId);
|
|
992
990
|
|
|
991
|
+
return JSON.stringify({
|
|
993
992
|
status: "timeout",
|
|
993
|
+
message: `Review session timed out. Elapsed time: ${elapsedTime} seconds`,
|
|
994
|
+
elapsedTime: elapsedTime
|
|
995
|
+
});
|
|
996
|
+
} else {
|
|
997
|
+
return JSON.stringify({
|
|
998
|
+
status: "pending",
|
|
994
999
|
message: "Test cases are still pending approval. Continue polling.",
|
|
995
1000
|
elapsedTime: elapsedTime,
|
|
996
1001
|
remainingTime: Math.max(0, 300 - elapsedTime)
|