| ... | ... | @@ -119,6 +119,77 @@ describe("applyProviderInstanceSettings", () => { |
| 119 | 119 | |
| 120 | 120 | expect(entry?.enabled).toBe(false); |
| 121 | 121 | }); |
| 122 | |
| 123 | it.each(["constructor", "toString"])( |
| 124 | "treats a removed custom instance named %s as disabled", |
| 125 | (instanceId) => { |
| 126 | const entries = deriveProviderInstanceEntries([ |
| 127 | provider({ |
| 128 | provider: ProviderDriverKind.make("claudeAgent"), |
| 129 | instanceId, |
| 130 | }), |
| 131 | ]); |
| 132 | const [entry] = applyProviderInstanceSettings(entries, { |
| 133 | providerInstances: {}, |
| 134 | providers: {} as never, |
| 135 | }); |
| 136 | |
| 137 | expect(entry?.enabled).toBe(false); |
| 138 | }, |
| 139 | ); |
| 140 | |
| 141 | it("uses settings for a configured custom instance named constructor", () => { |
| 142 | const instanceId = ProviderInstanceId.make("constructor"); |
| 143 | const entries = deriveProviderInstanceEntries([ |
| 144 | provider({ |
| 145 | provider: ProviderDriverKind.make("claudeAgent"), |
| 146 | instanceId, |
| 147 | }), |
| 148 | ]); |
| 149 | const [entry] = applyProviderInstanceSettings(entries, { |
| 150 | providerInstances: { |
| 151 | [instanceId]: { |
| 152 | driver: ProviderDriverKind.make("claudeAgent"), |
| 153 | enabled: false, |
| 154 | }, |
| 155 | }, |
| 156 | providers: {} as never, |
| 157 | }); |
| 158 | |
| 159 | expect(entry?.enabled).toBe(false); |
| 160 | }); |
| 161 | |
| 162 | it("treats a removed default instance for a fork driver as disabled", () => { |
| 163 | const driver = ProviderDriverKind.make("constructor"); |
| 164 | const entries = deriveProviderInstanceEntries([ |
| 165 | provider({ |
| 166 | provider: driver, |
| 167 | instanceId: "constructor", |
| 168 | }), |
| 169 | ]); |
| 170 | const [entry] = applyProviderInstanceSettings(entries, { |
| 171 | providerInstances: {}, |
| 172 | providers: {} as never, |
| 173 | }); |
| 174 | |
| 175 | expect(entry?.isDefault).toBe(true); |
| 176 | expect(entry?.enabled).toBe(false); |
| 177 | }); |
| 178 | |
| 179 | it("uses legacy settings for a built-in default instance", () => { |
| 180 | const entries = deriveProviderInstanceEntries([ |
| 181 | provider({ |
| 182 | provider: ProviderDriverKind.make("codex"), |
| 183 | instanceId: "codex", |
| 184 | }), |
| 185 | ]); |
| 186 | const [entry] = applyProviderInstanceSettings(entries, { |
| 187 | providerInstances: {}, |
| 188 | providers: { codex: { enabled: false } } as never, |
| 189 | }); |
| 190 | |
| 191 | expect(entry?.enabled).toBe(false); |
| 192 | }); |
| 122 | 193 | }); |
| 123 | 194 | |
| 124 | 195 | describe("deriveProviderInstanceEntries", () => { |