@bunny-agent/runner-cli 0.9.58 → 0.9.59-beta.2

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.
@@ -1,5 +1,5 @@
1
1
  import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
2
- import { takeToolRefsFromEnv } from "../env-payload.js";
2
+ import { takeMcpConfigFromEnv, takeToolRefsFromEnv } from "../env-payload.js";
3
3
  describe("takeToolRefsFromEnv", () => {
4
4
  beforeEach(() => {
5
5
  vi.spyOn(console, "error").mockImplementation(() => { });
@@ -51,4 +51,56 @@ describe("takeToolRefsFromEnv", () => {
51
51
  expect(takeToolRefsFromEnv(env)).toBeNull();
52
52
  });
53
53
  });
54
+ describe("takeMcpConfigFromEnv", () => {
55
+ beforeEach(() => {
56
+ vi.spyOn(console, "error").mockImplementation(() => { });
57
+ });
58
+ afterEach(() => {
59
+ vi.restoreAllMocks();
60
+ });
61
+ it("parses and removes a request-scoped MCP config", () => {
62
+ const env = {
63
+ BUNNY_AGENT_MCP_CONFIG_JSON: JSON.stringify({
64
+ config: {
65
+ mcpServers: {
66
+ remote: {
67
+ url: "https://mcp.example.com",
68
+ auth: "bearer",
69
+ bearerToken: "secret",
70
+ },
71
+ },
72
+ },
73
+ }),
74
+ };
75
+ expect(takeMcpConfigFromEnv(env)?.config).toMatchObject({
76
+ mcpServers: {
77
+ remote: { bearerToken: "secret" },
78
+ },
79
+ });
80
+ expect(env.BUNNY_AGENT_MCP_CONFIG_JSON).toBeUndefined();
81
+ });
82
+ it("removes malformed payloads before returning", () => {
83
+ const env = {
84
+ BUNNY_AGENT_MCP_CONFIG_JSON: "{not-json",
85
+ };
86
+ expect(takeMcpConfigFromEnv(env)).toBeNull();
87
+ expect(env.BUNNY_AGENT_MCP_CONFIG_JSON).toBeUndefined();
88
+ });
89
+ it("removes an empty payload before returning", () => {
90
+ const env = {
91
+ BUNNY_AGENT_MCP_CONFIG_JSON: "",
92
+ };
93
+ expect(takeMcpConfigFromEnv(env)).toBeNull();
94
+ expect(env.BUNNY_AGENT_MCP_CONFIG_JSON).toBeUndefined();
95
+ });
96
+ it("is one-shot", () => {
97
+ const env = {
98
+ BUNNY_AGENT_MCP_CONFIG_JSON: JSON.stringify({
99
+ config: { mcpServers: {} },
100
+ }),
101
+ };
102
+ expect(takeMcpConfigFromEnv(env)).not.toBeNull();
103
+ expect(takeMcpConfigFromEnv(env)).toBeNull();
104
+ });
105
+ });
54
106
  //# sourceMappingURL=env-payload.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"env-payload.test.js","sourceRoot":"","sources":["../../src/__tests__/env-payload.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,eAAe,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,GAAG,GAAG,EAAuB,CAAC;QACpC,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5C,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,aAAa,EAAE,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,GAAG,GAAG;YACV,0BAA0B,EAAE,IAAI,CAAC,SAAS,CAAC;gBACzC,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,GAAG;wBACT,WAAW,EAAE,EAAE;wBACf,WAAW,EAAE,EAAE;wBACf,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE;qBAC3C;iBACF;aACF,CAAC;SACkB,CAAC;QAEvB,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,aAAa,EAAE,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QAChF,MAAM,GAAG,GAAG;YACV,0BAA0B,EAAE,WAAW;SACnB,CAAC;QAEvB,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5C,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,aAAa,EAAE,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,GAAG,GAAG;YACV,0BAA0B,EAAE,0BAA0B;SAClC,CAAC;QAEvB,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC5C,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,aAAa,EAAE,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,GAAG,GAAG;YACV,0BAA0B,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;SACrC,CAAC;QAEvB,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QACxD,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"env-payload.test.js","sourceRoot":"","sources":["../../src/__tests__/env-payload.test.ts"],"names":[],"mappings":"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"}