@@ -117,37 +117,41 @@ describe("vscode-desktop-core extension script logic", async () => {
117117    { 
118118      protocol : "vscode" , 
119119      name : "VS Code" , 
120-       expectedUrls : [ "marketplace.visualstudio.com" ] , 
120+       expectedUrls : [ 
121+         "marketplace.visualstudio.com/_apis/public/gallery/vscode/" , 
122+       ] , 
121123      marketplace : "Microsoft" , 
122124    } , 
123125    { 
124126      protocol : "vscode-insiders" , 
125127      name : "VS Code Insiders" , 
126-       expectedUrls : [ "marketplace.visualstudio.com" ] , 
128+       expectedUrls : [ 
129+         "marketplace.visualstudio.com/_apis/public/gallery/vscode/" , 
130+       ] , 
127131      marketplace : "Microsoft" , 
128132    } , 
129133    { 
130134      protocol : "vscodium" , 
131135      name : "VSCodium" , 
132-       expectedUrls : [ "open-vsx.org" ] , 
136+       expectedUrls : [ "open-vsx.org/api/ " ] , 
133137      marketplace : "Open VSX" , 
134138    } , 
135139    { 
136140      protocol : "cursor" , 
137141      name : "Cursor" , 
138-       expectedUrls : [ "open-vsx.org" ] , 
142+       expectedUrls : [ "open-vsx.org/api/ " ] , 
139143      marketplace : "Open VSX" , 
140144    } , 
141145    { 
142146      protocol : "windsurf" , 
143147      name : "WindSurf" , 
144-       expectedUrls : [ "open-vsx.org" ] , 
148+       expectedUrls : [ "open-vsx.org/api/ " ] , 
145149      marketplace : "Open VSX" , 
146150    } , 
147151    { 
148152      protocol : "kiro" , 
149153      name : "Kiro" , 
150-       expectedUrls : [ "open-vsx.org" ] , 
154+       expectedUrls : [ "open-vsx.org/api/ " ] , 
151155      marketplace : "Open VSX" , 
152156    } , 
153157  ] ; 
@@ -186,15 +190,15 @@ describe("vscode-desktop-core extension script logic", async () => {
186190      // Verify extension ID is present 
187191      expect ( scriptContent ) . toContain ( "ms-vscode.hexeditor" ) ; 
188192
189-       // Verify the case statement includes the IDE protocol 
193+       // Verify the case statement includes the IDE protocol (Terraform substitutes the variable)  
190194      expect ( scriptContent ) . toContain ( `case "${ ide . protocol }  ) ; 
191195
192196      // Verify that the correct case branch exists for the IDE 
193197      if  ( ide . marketplace  ===  "Microsoft" )  { 
194-         expect ( scriptContent ) . toContain ( `"vscode"| "vscode-insiders"` ) ; 
198+         expect ( scriptContent ) . toContain ( `"vscode" |  "vscode-insiders"` ) ; 
195199      }  else  { 
196200        expect ( scriptContent ) . toContain ( 
197-           `"vscodium"| "cursor"| "windsurf"| "kiro"` , 
201+           `"vscodium" |  "cursor" |  "windsurf" |  "kiro"` , 
198202        ) ; 
199203      } 
200204
@@ -206,11 +210,11 @@ describe("vscode-desktop-core extension script logic", async () => {
206210      // Verify the script uses the correct case branch for this IDE 
207211      if  ( ide . marketplace  ===  "Microsoft" )  { 
208212        expect ( scriptContent ) . toContain ( 
209-           "# Microsoft IDEs: Use Visual Studio Marketplace " , 
213+           "# Microsoft IDEs: Use the VS Code API to get metadata " , 
210214        ) ; 
211215      }  else  { 
212216        expect ( scriptContent ) . toContain ( 
213-           "# Non-Microsoft IDEs: Use Open VSX Registry" , 
217+           "# Non-Microsoft IDEs: Use Open VSX Registry metadata endpoint " , 
214218        ) ; 
215219      } 
216220    } ) ; 
@@ -223,7 +227,7 @@ describe("vscode-desktop-core extension script logic", async () => {
223227    const  variables  =  { 
224228      ...defaultVariables , 
225229      extensions_urls :
226-         '["https://marketplace.visualstudio.com/_apis/public/gallery/publishers /ms-vscode/vsextensions/ hexeditor/latest/vspackage "]' , 
230+         '["https://marketplace.visualstudio.com/_apis/public/gallery/vscode /ms-vscode/hexeditor/latest"]' , 
227231      extensions_dir : extensionsDir , 
228232    } ; 
229233
0 commit comments