Introduce package manager interaction abstraction

This commit is contained in:
abhisek
2025-05-14 13:18:56 +05:30
parent dfad44a4e6
commit 9aa2d97cd5
3 changed files with 54 additions and 2 deletions
+11
View File
@@ -20,6 +20,17 @@ func TestNpmParseCommand(t *testing.T) {
assert.NoError(t, err)
assert.Equal(t, 1, len(parsedCommand.InstallTargets))
assert.Equal(t, "@types/node", parsedCommand.InstallTargets[0].PackageVersion.Package.Name)
assert.Empty(t, parsedCommand.InstallTargets[0].PackageVersion.Version)
},
},
{
name: "install a single package with specific version",
command: "npm install @types/node@1.2.3",
assert: func(t *testing.T, parsedCommand *ParsedCommand, err error) {
assert.NoError(t, err)
assert.Equal(t, 1, len(parsedCommand.InstallTargets))
assert.Equal(t, "@types/node", parsedCommand.InstallTargets[0].PackageVersion.Package.Name)
assert.Equal(t, "1.2.3", parsedCommand.InstallTargets[0].PackageVersion.Version)
},
},
{