/* IMPORTANT
 * This snapshot file is auto-generated, but designed for humans.
 * It should be checked into source control and tracked carefully.
 * Re-generate by setting TAP_SNAPSHOT=1 and running tests.
 * Make sure to inspect the output below.  Do not ignore changes!
 */
'use strict'
exports[`test/lib/utils/reify-output.js TAP added packages should be looked up within returned tree has added pkg in inventory > must match snapshot 1`] = `

added 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP added packages should be looked up within returned tree linked store package counted though absent from actualTree > must match snapshot 1`] = `

added 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP added packages should be looked up within returned tree missing added pkg in inventory > must match snapshot 1`] = `

up to date in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":0,"audited":0,"json":false} 1`] = `

up to date in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":0,"audited":0,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 0,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [],
  "removed": 0
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":0,"audited":1,"json":false} 1`] = `

up to date, audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":0,"audited":1,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 1,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":0,"audited":2,"json":false} 1`] = `

up to date, audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":0,"audited":2,"json":false} 2`] = `

up to date, audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":0,"audited":2,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 2,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":0,"audited":2,"json":true} 2`] = `
{
  "add": [],
  "added": 0,
  "audited": 2,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {},
    "metadata": {
      "vulnerabilities": {
        "total": 0
      }
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":1,"audited":0,"json":false} 1`] = `

changed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":1,"audited":0,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [],
  "removed": 0
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":1,"audited":1,"json":false} 1`] = `

changed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":1,"audited":1,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":1,"audited":2,"json":false} 1`] = `

changed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":1,"audited":2,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":2,"audited":0,"json":false} 1`] = `

changed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":2,"audited":0,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [],
  "removed": 0
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":2,"audited":1,"json":false} 1`] = `

changed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":2,"audited":1,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":2,"audited":2,"json":false} 1`] = `

changed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":0,"changed":2,"audited":2,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":0,"audited":0,"json":false} 1`] = `

removed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":0,"audited":0,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 0,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":0,"audited":1,"json":false} 1`] = `

removed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":0,"audited":1,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 1,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":0,"audited":2,"json":false} 1`] = `

removed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":0,"audited":2,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 2,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":1,"audited":0,"json":false} 1`] = `

removed 1 package, and changed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":1,"audited":0,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":1,"audited":1,"json":false} 1`] = `

removed 1 package, changed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":1,"audited":1,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":1,"audited":2,"json":false} 1`] = `

removed 1 package, changed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":1,"audited":2,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":2,"audited":0,"json":false} 1`] = `

removed 1 package, and changed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":2,"audited":0,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":2,"audited":1,"json":false} 1`] = `

removed 1 package, changed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":2,"audited":1,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":2,"audited":2,"json":false} 1`] = `

removed 1 package, changed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":1,"changed":2,"audited":2,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":0,"audited":0,"json":false} 1`] = `

removed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":0,"audited":0,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 0,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":0,"audited":1,"json":false} 1`] = `

removed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":0,"audited":1,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 1,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":0,"audited":2,"json":false} 1`] = `

removed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":0,"audited":2,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 2,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":1,"audited":0,"json":false} 1`] = `

removed 2 packages, and changed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":1,"audited":0,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":1,"audited":1,"json":false} 1`] = `

removed 2 packages, changed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":1,"audited":1,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":1,"audited":2,"json":false} 1`] = `

removed 2 packages, changed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":1,"audited":2,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":2,"audited":0,"json":false} 1`] = `

removed 2 packages, and changed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":2,"audited":0,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":2,"audited":1,"json":false} 1`] = `

removed 2 packages, changed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":2,"audited":1,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":2,"audited":2,"json":false} 1`] = `

removed 2 packages, changed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":0,"removed":2,"changed":2,"audited":2,"json":true} 1`] = `
{
  "add": [],
  "added": 0,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":0,"audited":0,"json":false} 1`] = `

added 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":0,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 0,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [],
  "removed": 0
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":0,"audited":1,"json":false} 1`] = `

added 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":0,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 1,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":0,"audited":2,"json":false} 1`] = `

added 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":0,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 2,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":1,"audited":0,"json":false} 1`] = `

added 1 package, and changed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":1,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [],
  "removed": 0
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":1,"audited":1,"json":false} 1`] = `

added 1 package, changed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":1,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":1,"audited":2,"json":false} 1`] = `

added 1 package, changed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":1,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":2,"audited":0,"json":false} 1`] = `

added 1 package, and changed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":2,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [],
  "removed": 0
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":2,"audited":1,"json":false} 1`] = `

added 1 package, changed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":2,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":2,"audited":2,"json":false} 1`] = `

added 1 package, changed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":0,"changed":2,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":0,"audited":0,"json":false} 1`] = `

added 1 package, and removed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":0,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 0,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":0,"audited":1,"json":false} 1`] = `

added 1 package, removed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":0,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 1,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":0,"audited":2,"json":false} 1`] = `

added 1 package, removed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":0,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 2,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":1,"audited":0,"json":false} 1`] = `

added 1 package, removed 1 package, and changed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":1,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":1,"audited":1,"json":false} 1`] = `

added 1 package, removed 1 package, changed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":1,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":1,"audited":2,"json":false} 1`] = `

added 1 package, removed 1 package, changed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":1,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":2,"audited":0,"json":false} 1`] = `

added 1 package, removed 1 package, and changed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":2,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":2,"audited":1,"json":false} 1`] = `

added 1 package, removed 1 package, changed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":2,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":2,"audited":2,"json":false} 1`] = `

added 1 package, removed 1 package, changed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":1,"changed":2,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":0,"audited":0,"json":false} 1`] = `

added 1 package, and removed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":0,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 0,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":0,"audited":1,"json":false} 1`] = `

added 1 package, removed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":0,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 1,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":0,"audited":2,"json":false} 1`] = `

added 1 package, removed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":0,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 2,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":1,"audited":0,"json":false} 1`] = `

added 1 package, removed 2 packages, and changed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":1,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":1,"audited":1,"json":false} 1`] = `

added 1 package, removed 2 packages, changed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":1,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":1,"audited":2,"json":false} 1`] = `

added 1 package, removed 2 packages, changed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":1,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":2,"audited":0,"json":false} 1`] = `

added 1 package, removed 2 packages, and changed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":2,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":2,"audited":1,"json":false} 1`] = `

added 1 package, removed 2 packages, changed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":2,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":2,"audited":2,"json":false} 1`] = `

added 1 package, removed 2 packages, changed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":1,"removed":2,"changed":2,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 1,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":0,"audited":0,"json":false} 1`] = `

added 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":0,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 0,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [],
  "removed": 0
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":0,"audited":1,"json":false} 1`] = `

added 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":0,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 1,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":0,"audited":2,"json":false} 1`] = `

added 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":0,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 2,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":1,"audited":0,"json":false} 1`] = `

added 2 packages, and changed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":1,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [],
  "removed": 0
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":1,"audited":1,"json":false} 1`] = `

added 2 packages, changed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":1,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":1,"audited":2,"json":false} 1`] = `

added 2 packages, changed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":1,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":2,"audited":0,"json":false} 1`] = `

added 2 packages, and changed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":2,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [],
  "removed": 0
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":2,"audited":1,"json":false} 1`] = `

added 2 packages, changed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":2,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":2,"audited":2,"json":false} 1`] = `

added 2 packages, changed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":0,"changed":2,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [],
  "removed": 0,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":0,"audited":0,"json":false} 1`] = `

added 2 packages, and removed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":0,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 0,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":0,"audited":1,"json":false} 1`] = `

added 2 packages, removed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":0,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 1,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":0,"audited":2,"json":false} 1`] = `

added 2 packages, removed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":0,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 2,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":1,"audited":0,"json":false} 1`] = `

added 2 packages, removed 1 package, and changed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":1,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":1,"audited":1,"json":false} 1`] = `

added 2 packages, removed 1 package, changed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":1,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":1,"audited":2,"json":false} 1`] = `

added 2 packages, removed 1 package, changed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":1,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":2,"audited":0,"json":false} 1`] = `

added 2 packages, removed 1 package, and changed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":2,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":2,"audited":1,"json":false} 1`] = `

added 2 packages, removed 1 package, changed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":2,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":2,"audited":2,"json":false} 1`] = `

added 2 packages, removed 1 package, changed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":1,"changed":2,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 1,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":0,"audited":0,"json":false} 1`] = `

added 2 packages, and removed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":0,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 0,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":0,"audited":1,"json":false} 1`] = `

added 2 packages, removed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":0,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 1,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":0,"audited":2,"json":false} 1`] = `

added 2 packages, removed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":0,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 2,
  "change": [],
  "changed": 0,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":1,"audited":0,"json":false} 1`] = `

added 2 packages, removed 2 packages, and changed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":1,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":1,"audited":1,"json":false} 1`] = `

added 2 packages, removed 2 packages, changed 1 package, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":1,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":1,"audited":2,"json":false} 1`] = `

added 2 packages, removed 2 packages, changed 1 package, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":1,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 1,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":2,"audited":0,"json":false} 1`] = `

added 2 packages, removed 2 packages, and changed 2 packages in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":2,"audited":0,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 0,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":2,"audited":1,"json":false} 1`] = `

added 2 packages, removed 2 packages, changed 2 packages, and audited 1 package in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":2,"audited":1,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 1,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":2,"audited":2,"json":false} 1`] = `

added 2 packages, removed 2 packages, changed 2 packages, and audited 2 packages in {TIME}

found 0 vulnerabilities
`

exports[`test/lib/utils/reify-output.js TAP packages changed message  > {"added":2,"removed":2,"changed":2,"audited":2,"json":true} 1`] = `
{
  "add": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "added": 2,
  "audited": 2,
  "change": [
    {
      "from": {
        "name": "@npmcli/pkg1",
        "version": "1.0.1",
        "path": "test/a/1"
      },
      "to": {
        "name": "@npmcli/pkg1",
        "version": "1.1.1",
        "path": "test/i/1"
      }
    },
    {
      "from": {
        "name": "@npmcli/pkg0",
        "version": "1.0.0",
        "path": "test/a/0"
      },
      "to": {
        "name": "@npmcli/pkg0",
        "version": "1.1.0",
        "path": "test/i/0"
      }
    }
  ],
  "changed": 2,
  "funding": 0,
  "remove": [
    {
      "name": "@npmcli/pkg1",
      "version": "1.0.1",
      "path": "test/1"
    },
    {
      "name": "@npmcli/pkg0",
      "version": "1.0.0",
      "path": "test/0"
    }
  ],
  "removed": 2,
  "audit": {
    "vulnerabilities": {
      "total": 0
    }
  }
}
`

exports[`test/lib/utils/reify-output.js TAP prints dedupe difference on dry-run > diff table 1`] = `
change bar 1.0.0 => 2.1.0
remove bar 1.0.0
add foo 1.0.0

removed 1 package, and changed 1 package in {TIME}
`

exports[`test/lib/utils/reify-output.js TAP prints dedupe difference on long > diff table 1`] = `
change bar 1.0.0 => 2.1.0
remove bar 1.0.0
add foo 1.0.0

removed 1 package, and changed 1 package in {TIME}
`
