@@ -63,6 +63,7 @@ test('prepareV0LocalProject aligns local wrangler config and JWT secret files',
6363 assert . deepEqual ( data . vars , {
6464 AUTH_MODE : 'jwt' ,
6565 ENABLE_ACTIVITY_LOGS : false ,
66+ API_URL : 'http://localhost:8080' ,
6667 WORKER_NODE_ENV : 'development' ,
6768 JWT_ISSUER : 'issuer-1' ,
6869 JWT_AUDIENCE : 'audience-1' ,
@@ -87,3 +88,60 @@ test('prepareV0LocalProject aligns local wrangler config and JWT secret files',
8788 / J W T _ S E C R E T = g e n e r a t e d - s e c r e t / ,
8889 ) ;
8990} ) ;
91+
92+ test ( 'prepareV0LocalProject keeps no-auth local config aligned without secret files' , async ( ) => {
93+ const projectDir = await createProjectFixture ( ) ;
94+
95+ const result = await prepareV0LocalProject ( {
96+ projectDir,
97+ projectName : 'My Deepcrawl' ,
98+ authMode : 'none' ,
99+ enableActivityLogs : true ,
100+ } ) ;
101+
102+ const next = await readFile (
103+ join ( projectDir , 'apps' , 'workers' , 'v0' , 'wrangler.jsonc' ) ,
104+ 'utf8' ,
105+ ) ;
106+ const data = parse ( next ) as {
107+ vars ?: Record < string , string | boolean > ;
108+ env ?: {
109+ production ?: {
110+ vars ?: Record < string , string | boolean > ;
111+ } ;
112+ } ;
113+ } ;
114+
115+ assert . equal ( result . localJwtSecretFiles , undefined ) ;
116+ assert . deepEqual ( data . vars , {
117+ AUTH_MODE : 'none' ,
118+ ENABLE_ACTIVITY_LOGS : true ,
119+ API_URL : 'http://localhost:8080' ,
120+ WORKER_NODE_ENV : 'development' ,
121+ JWT_ISSUER : '' ,
122+ JWT_AUDIENCE : '' ,
123+ ENABLE_API_RATE_LIMIT : false ,
124+ } ) ;
125+ assert . deepEqual ( data . env ?. production ?. vars , {
126+ AUTH_MODE : 'none' ,
127+ ENABLE_ACTIVITY_LOGS : true ,
128+ WORKER_NODE_ENV : 'production' ,
129+ JWT_ISSUER : '' ,
130+ JWT_AUDIENCE : '' ,
131+ ENABLE_API_RATE_LIMIT : false ,
132+ } ) ;
133+ } ) ;
134+
135+ test ( 'prepareV0LocalProject rejects jwt mode without a secret' , async ( ) => {
136+ const projectDir = await createProjectFixture ( ) ;
137+
138+ await assert . rejects (
139+ prepareV0LocalProject ( {
140+ projectDir,
141+ projectName : 'My Deepcrawl' ,
142+ authMode : 'jwt' ,
143+ enableActivityLogs : false ,
144+ } ) ,
145+ / J W T s e c r e t i s m i s s i n g / ,
146+ ) ;
147+ } ) ;
0 commit comments