@@ -19,6 +19,8 @@ vi.mock("@roo-code/cloud", () => ({
1919 getOrganizationId : vi . fn ( ) ,
2020 } ,
2121 } ,
22+ getClerkBaseUrl : vi . fn ( ) ,
23+ PRODUCTION_CLERK_BASE_URL : "https://clerk.roocode.com" ,
2224} ) )
2325
2426vi . mock ( "vscode" , ( ) => ( {
@@ -44,12 +46,13 @@ import * as fs from "fs"
4446import * as os from "os"
4547import * as vscode from "vscode"
4648import { MdmService } from "../MdmService"
47- import { CloudService } from "@roo-code/cloud"
49+ import { CloudService , getClerkBaseUrl , PRODUCTION_CLERK_BASE_URL } from "@roo-code/cloud"
4850
4951const mockFs = fs as any
5052const mockOs = os as any
5153const mockCloudService = CloudService as any
5254const mockVscode = vscode as any
55+ const mockGetClerkBaseUrl = getClerkBaseUrl as any
5356
5457describe ( "MdmService" , ( ) => {
5558 let originalPlatform : string
@@ -64,6 +67,9 @@ describe("MdmService", () => {
6467 // Set default platform for tests
6568 mockOs . platform . mockReturnValue ( "darwin" )
6669
70+ // Setup default mock for getClerkBaseUrl to return development URL
71+ mockGetClerkBaseUrl . mockReturnValue ( "https://dev.clerk.roocode.com" )
72+
6773 // Setup VSCode mocks
6874 const mockConfig = {
6975 get : vi . fn ( ) . mockReturnValue ( false ) ,
@@ -73,6 +79,8 @@ describe("MdmService", () => {
7379
7480 // Reset mocks
7581 vi . clearAllMocks ( )
82+ // Re-setup the default after clearing
83+ mockGetClerkBaseUrl . mockReturnValue ( "https://dev.clerk.roocode.com" )
7684 } )
7785
7886 afterEach ( ( ) => {
@@ -142,7 +150,7 @@ describe("MdmService", () => {
142150 it ( "should use correct path for Windows in production" , async ( ) => {
143151 mockOs . platform . mockReturnValue ( "win32" )
144152 process . env . PROGRAMDATA = "C:\\ProgramData"
145- process . env . NODE_ENV = "production"
153+ mockGetClerkBaseUrl . mockReturnValue ( PRODUCTION_CLERK_BASE_URL )
146154
147155 mockFs . existsSync . mockReturnValue ( false )
148156
@@ -154,7 +162,7 @@ describe("MdmService", () => {
154162 it ( "should use correct path for Windows in development" , async ( ) => {
155163 mockOs . platform . mockReturnValue ( "win32" )
156164 process . env . PROGRAMDATA = "C:\\ProgramData"
157- process . env . NODE_ENV = "development"
165+ mockGetClerkBaseUrl . mockReturnValue ( "https://dev.clerk.roocode.com" )
158166
159167 mockFs . existsSync . mockReturnValue ( false )
160168
@@ -165,7 +173,7 @@ describe("MdmService", () => {
165173
166174 it ( "should use correct path for macOS in production" , async ( ) => {
167175 mockOs . platform . mockReturnValue ( "darwin" )
168- process . env . NODE_ENV = "production"
176+ mockGetClerkBaseUrl . mockReturnValue ( PRODUCTION_CLERK_BASE_URL )
169177
170178 mockFs . existsSync . mockReturnValue ( false )
171179
@@ -176,7 +184,7 @@ describe("MdmService", () => {
176184
177185 it ( "should use correct path for macOS in development" , async ( ) => {
178186 mockOs . platform . mockReturnValue ( "darwin" )
179- process . env . NODE_ENV = "development"
187+ mockGetClerkBaseUrl . mockReturnValue ( "https://dev.clerk.roocode.com" )
180188
181189 mockFs . existsSync . mockReturnValue ( false )
182190
@@ -187,7 +195,7 @@ describe("MdmService", () => {
187195
188196 it ( "should use correct path for Linux in production" , async ( ) => {
189197 mockOs . platform . mockReturnValue ( "linux" )
190- process . env . NODE_ENV = "production"
198+ mockGetClerkBaseUrl . mockReturnValue ( PRODUCTION_CLERK_BASE_URL )
191199
192200 mockFs . existsSync . mockReturnValue ( false )
193201
@@ -198,7 +206,7 @@ describe("MdmService", () => {
198206
199207 it ( "should use correct path for Linux in development" , async ( ) => {
200208 mockOs . platform . mockReturnValue ( "linux" )
201- process . env . NODE_ENV = "development"
209+ mockGetClerkBaseUrl . mockReturnValue ( "https://dev.clerk.roocode.com" )
202210
203211 mockFs . existsSync . mockReturnValue ( false )
204212
@@ -209,7 +217,7 @@ describe("MdmService", () => {
209217
210218 it ( "should default to dev config when NODE_ENV is not set" , async ( ) => {
211219 mockOs . platform . mockReturnValue ( "darwin" )
212- delete process . env . NODE_ENV
220+ mockGetClerkBaseUrl . mockReturnValue ( "https://dev.clerk.roocode.com" )
213221
214222 mockFs . existsSync . mockReturnValue ( false )
215223
@@ -248,6 +256,7 @@ describe("MdmService", () => {
248256 mockFs . existsSync . mockReturnValue ( true )
249257 mockFs . readFileSync . mockReturnValue ( JSON . stringify ( mockConfig ) )
250258
259+ // Mock CloudService to indicate no instance or no active session
251260 mockCloudService . hasInstance . mockReturnValue ( false )
252261
253262 const service = await MdmService . createInstance ( )
@@ -267,6 +276,7 @@ describe("MdmService", () => {
267276 mockFs . existsSync . mockReturnValue ( true )
268277 mockFs . readFileSync . mockReturnValue ( JSON . stringify ( mockConfig ) )
269278
279+ // Mock CloudService to have instance and active session but wrong org
270280 mockCloudService . hasInstance . mockReturnValue ( true )
271281 mockCloudService . instance . hasActiveSession . mockReturnValue ( true )
272282 mockCloudService . instance . getOrganizationId . mockReturnValue ( "different-org-456" )
0 commit comments