Skip to content

Commit 1f2e9f2

Browse files
authored
Update IDE tests with new command structure (#3166)
1 parent 222c3c3 commit 1f2e9f2

File tree

3 files changed

+25
-29
lines changed

3 files changed

+25
-29
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ require (
1919
github.com/jfrog/build-info-go v1.12.0
2020
github.com/jfrog/gofrog v1.7.6
2121
github.com/jfrog/jfrog-cli-application v1.0.1
22-
github.com/jfrog/jfrog-cli-artifactory v0.7.3-0.20251015051724-72d111a3d107
22+
github.com/jfrog/jfrog-cli-artifactory v0.7.3-0.20251015052652-84ea3afaf439
2323
github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20251015045218-1a38c9e47097
2424
github.com/jfrog/jfrog-cli-platform-services v1.10.0
2525
github.com/jfrog/jfrog-cli-security v1.21.8

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -365,8 +365,8 @@ github.com/jfrog/jfrog-apps-config v1.0.1 h1:mtv6k7g8A8BVhlHGlSveapqf4mJfonwvXYL
365365
github.com/jfrog/jfrog-apps-config v1.0.1/go.mod h1:8AIIr1oY9JuH5dylz2S6f8Ym2MaadPLR6noCBO4C22w=
366366
github.com/jfrog/jfrog-cli-application v1.0.1 h1:PiiSVKFFs8VLAwjCe2JrIKlX7LmARFt+r8BLTupWIDc=
367367
github.com/jfrog/jfrog-cli-application v1.0.1/go.mod h1:gjV6Q2hhoMe3FF77GFiTyIRLSHokpDrkVj0GvYM+1Y4=
368-
github.com/jfrog/jfrog-cli-artifactory v0.7.3-0.20251015051724-72d111a3d107 h1:0VVFI1AHzMKyr/Nwxmu/Jhg3U1Rq725AQPKpSTtk7XU=
369-
github.com/jfrog/jfrog-cli-artifactory v0.7.3-0.20251015051724-72d111a3d107/go.mod h1:nT050Wb18tTlfcQHefyMENzFOz9Vdym6WP0Z3Nc2qHc=
368+
github.com/jfrog/jfrog-cli-artifactory v0.7.3-0.20251015052652-84ea3afaf439 h1:3B3JGujNYFpHQ69pjaPpRf0Ugny0UCU35whkcmGqaHc=
369+
github.com/jfrog/jfrog-cli-artifactory v0.7.3-0.20251015052652-84ea3afaf439/go.mod h1:nT050Wb18tTlfcQHefyMENzFOz9Vdym6WP0Z3Nc2qHc=
370370
github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20251015045218-1a38c9e47097 h1:+W6BPxJ0nPtlQ6l6nmypW1eEANoVPiN8HDR4kQJA8uI=
371371
github.com/jfrog/jfrog-cli-core/v2 v2.60.1-0.20251015045218-1a38c9e47097/go.mod h1:UOeOwEEmRIi57cRwghN5OBVoqkJieYQQfLpeqw8Yv38=
372372
github.com/jfrog/jfrog-cli-platform-services v1.10.0 h1:O+N/VAF+QjFvq9xkHpmzKLcdl9aJu3IP204Su0L14rw=

ide_test.go

Lines changed: 22 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ func TestVscodeSetupCommand(t *testing.T) {
4848
expectedServiceURL := serverDetails.ArtifactoryUrl + "api/aieditorextensions/" + repoName + "/_apis/public/gallery"
4949

5050
// Run the VSCode setup command
51-
runJfrogCli(t, "vscode-config", expectedServiceURL, "--product-json-path", productPath)
51+
runJfrogCli(t, "ide", "setup", "vscode", expectedServiceURL, "--product-json-path", productPath)
5252

5353
// Verify the configuration was applied
5454
modifiedData, err := os.ReadFile(productPath)
@@ -126,7 +126,7 @@ func TestVscodeAutoDetection(t *testing.T) {
126126
serviceURL := serverDetails.ArtifactoryUrl + "api/aieditorextensions/" + repoName + "/_apis/public/gallery"
127127

128128
// Test with an explicit path (simulating successful auto-detection)
129-
runJfrogCli(t, "vscode-config", serviceURL, "--product-json-path", productPath)
129+
runJfrogCli(t, "ide", "setup", "vscode", serviceURL, "--product-json-path", productPath)
130130

131131
// Verify configuration was applied
132132
modifiedData, err := os.ReadFile(productPath)
@@ -172,10 +172,10 @@ func TestVscodeInvalidRepository(t *testing.T) {
172172
if serverDetails != nil {
173173
var err error
174174
if serverDetails.AccessToken != "" {
175-
err = execJfrogCli("vscode-config", "--repo-key", "non-existent-repo", "--product-json-path", productPath,
175+
err = execJfrogCli("ide", "setup", "vscode", "--repo-key", "non-existent-repo", "--product-json-path", productPath,
176176
"--url", serverDetails.ArtifactoryUrl, "--access-token", serverDetails.AccessToken)
177177
} else {
178-
err = execJfrogCli("vscode-config", "--repo-key", "non-existent-repo", "--product-json-path", productPath,
178+
err = execJfrogCli("ide", "setup", "vscode", "--repo-key", "non-existent-repo", "--product-json-path", productPath,
179179
"--url", serverDetails.ArtifactoryUrl, "--user", serverDetails.User, "--password", serverDetails.Password)
180180
}
181181
assert.Error(t, err, "Command should fail with invalid repository")
@@ -223,7 +223,7 @@ func TestVscodePermissionHandling(t *testing.T) {
223223
serviceURL := serverDetails.ArtifactoryUrl + "api/aieditorextensions/" + repoName + "/_apis/public/gallery"
224224

225225
// Command should fail due to permission issues
226-
err = execJfrogCli("vscode-config", serviceURL, "--product-json-path", productPath)
226+
err = execJfrogCli("ide", "setup", "vscode", serviceURL, "--product-json-path", productPath)
227227
assert.Error(t, err, "Command should fail due to permission issues")
228228

229229
// Restore permissions for cleanup
@@ -272,7 +272,7 @@ ide.system.path=${user.home}/.local/share/JetBrains/IntelliJIdea2023.3
272272
require.NoError(t, err)
273273

274274
// Test JetBrains setup command
275-
expectedRepositoryURL := serverDetails.ArtifactoryUrl + "api/jetbrainsplugins/" + repoName
275+
expectedRepositoryURL := serverDetails.ArtifactoryUrl + "api/aieditorextensions/" + repoName
276276

277277
// Set environment variable to make the mock IDE detectable (OS-specific)
278278
var envVar, envValue string
@@ -307,7 +307,7 @@ ide.system.path=${user.home}/.local/share/JetBrains/IntelliJIdea2023.3
307307
}
308308

309309
// Run the JetBrains setup command
310-
runJfrogCli(t, "jetbrains-config", expectedRepositoryURL)
310+
runJfrogCli(t, "ide", "setup", "jetbrains", expectedRepositoryURL)
311311

312312
// Verify the configuration was applied
313313
modifiedProperties, err := os.ReadFile(propertiesPath)
@@ -411,10 +411,10 @@ func TestJetbrainsAutoDetection(t *testing.T) {
411411
}
412412

413413
// Test JetBrains auto-detection command
414-
repositoryURL := serverDetails.ArtifactoryUrl + "api/jetbrainsplugins/" + repoName
414+
repositoryURL := serverDetails.ArtifactoryUrl + "api/aieditorextensions/" + repoName
415415

416416
// Note: This will work if the auto-detection logic finds our mock IDEs
417-
runJfrogCli(t, "jetbrains-config", repositoryURL)
417+
runJfrogCli(t, "ide", "setup", "jetbrains", repositoryURL)
418418

419419
// Verify configuration was applied to detected IDEs
420420
for _, ide := range ides {
@@ -472,10 +472,10 @@ ide.config.path=${user.home}/.config/JetBrains/IntelliJIdea2023.3
472472
if serverDetails != nil {
473473
var err error
474474
if serverDetails.AccessToken != "" {
475-
err = execJfrogCli("jetbrains-config", "--repo-key", "non-existent-repo",
475+
err = execJfrogCli("ide", "setup", "jetbrains", "--repo-key", "non-existent-repo",
476476
"--url", serverDetails.ArtifactoryUrl, "--access-token", serverDetails.AccessToken)
477477
} else {
478-
err = execJfrogCli("jetbrains-config", "--repo-key", "non-existent-repo",
478+
err = execJfrogCli("ide", "setup", "jetbrains", "--repo-key", "non-existent-repo",
479479
"--url", serverDetails.ArtifactoryUrl, "--user", serverDetails.User, "--password", serverDetails.Password)
480480
}
481481
assert.Error(t, err, "Command should fail with invalid repository")
@@ -536,10 +536,10 @@ ide.config.path=${user.home}/.config/JetBrains/IntelliJIdea2023.3
536536
t.Fatalf("Failed to set XDG_CONFIG_HOME: %v", err)
537537
}
538538

539-
repositoryURL := serverDetails.ArtifactoryUrl + "api/jetbrainsplugins/" + repoName
539+
repositoryURL := serverDetails.ArtifactoryUrl + "api/aieditorextensions/" + repoName
540540

541541
// Command should fail due to permission issues
542-
err = execJfrogCli("jetbrains-config", repositoryURL)
542+
err = execJfrogCli("ide", "setup", "jetbrains", repositoryURL)
543543
assert.Error(t, err, "Command should fail due to permission issues")
544544

545545
// Restore permissions for cleanup
@@ -647,7 +647,7 @@ func BenchmarkVscodeSetup(b *testing.B) {
647647

648648
// Run the setup command
649649
jfrogCli := coreTests.NewJfrogCli(execMain, "jfrog", "")
650-
err = jfrogCli.Exec("vscode-config", serviceURL, "--product-json-path", productPath)
650+
err = jfrogCli.Exec("ide", "setup", "vscode", serviceURL, "--product-json-path", productPath)
651651
if err != nil {
652652
b.Fatal(err)
653653
}
@@ -705,7 +705,7 @@ ide.config.path=${user.home}/.config/JetBrains/IntelliJIdea2023.3
705705
t.Fatalf("Failed to set XDG_CONFIG_HOME: %v", err)
706706
}
707707

708-
repositoryURL := serverDetails.ArtifactoryUrl + "api/jetbrainsplugins/" + repoName
708+
repositoryURL := serverDetails.ArtifactoryUrl + "api/aieditorextensions/" + repoName
709709

710710
b.ResetTimer()
711711
for i := 0; i < b.N; i++ {
@@ -717,7 +717,7 @@ ide.config.path=${user.home}/.config/JetBrains/IntelliJIdea2023.3
717717

718718
// Run the setup command
719719
jfrogCli := coreTests.NewJfrogCli(execMain, "jfrog", "")
720-
err = jfrogCli.Exec("jetbrains-config", repositoryURL)
720+
err = jfrogCli.Exec("ide", "setup", "jetbrains", repositoryURL)
721721
if err != nil {
722722
b.Fatal(err)
723723
}
@@ -729,16 +729,12 @@ func TestIDECommandsRegistration(t *testing.T) {
729729
// This test verifies that our IDE commands are properly registered in the CLI
730730
// without requiring a running Artifactory server
731731

732-
// Test that VSCode command is available
732+
// Test that IDE setup command is available
733733
jfrogCli := coreTests.NewJfrogCli(execMain, "jfrog", "")
734-
err := jfrogCli.Exec("vscode-config", "--help")
735-
assert.NoError(t, err, "VSCode config command should be available")
734+
err := jfrogCli.Exec("ide", "setup", "--help")
735+
assert.NoError(t, err, "IDE setup command should be available")
736736

737-
// Test that JetBrains command is available
738-
err = jfrogCli.Exec("jetbrains-config", "--help")
739-
assert.NoError(t, err, "JetBrains config command should be available")
740-
741-
// Test that JetBrains alias is available
742-
err = jfrogCli.Exec("jb", "--help")
743-
assert.NoError(t, err, "JetBrains alias 'jb' should be available")
737+
// Test that IDE command is available with alias
738+
err = jfrogCli.Exec("ide", "s", "--help")
739+
assert.NoError(t, err, "IDE setup alias 's' should be available")
744740
}

0 commit comments

Comments
 (0)