mirror of
https://github.com/safedep/pmg.git
synced 2026-08-03 07:24:09 +02:00
fix: npm resolver bug
This commit is contained in:
@@ -82,7 +82,7 @@ func (r *dependencyResolver) resolvePackageDependenciesRecursive(
|
|||||||
|
|
||||||
// Skip if already visited
|
// Skip if already visited
|
||||||
packageKey := r.packageKey(packageVersion)
|
packageKey := r.packageKey(packageVersion)
|
||||||
if visitedPackages[packageKey] {
|
if _, ok := visitedPackages[packageKey]; ok {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -77,6 +77,24 @@ func TestNpmDependencyResolver_ResolveDependencies(t *testing.T) {
|
|||||||
require.Equal(t, "1.1.0", dependencies[0].Version)
|
require.Equal(t, "1.1.0", dependencies[0].Version)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "should resolve dependencies for a package up to a given depth",
|
||||||
|
pkg: &packagev1.PackageVersion{
|
||||||
|
Package: &packagev1.Package{
|
||||||
|
Name: "react",
|
||||||
|
Ecosystem: packagev1.Ecosystem_ECOSYSTEM_NPM,
|
||||||
|
},
|
||||||
|
Version: "18.2.0",
|
||||||
|
},
|
||||||
|
includeTransitiveDependencies: true,
|
||||||
|
transitiveDepth: 2,
|
||||||
|
assertFn: func(t *testing.T, dependencies []*packagev1.PackageVersion, err error) {
|
||||||
|
require.NoError(t, err)
|
||||||
|
require.Equal(t, 2, len(dependencies))
|
||||||
|
require.Equal(t, "loose-envify", dependencies[0].Package.Name)
|
||||||
|
require.Equal(t, "react-dom", dependencies[1].Package.Name)
|
||||||
|
},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "should resolve all dependencies for a package when transitive dependencies are included",
|
name: "should resolve all dependencies for a package when transitive dependencies are included",
|
||||||
pkg: &packagev1.PackageVersion{
|
pkg: &packagev1.PackageVersion{
|
||||||
|
|||||||
Reference in New Issue
Block a user