(
config: BaseConfig,
chdir: Path,
pkg_lock_content: str,
pkg_lock_expected: str,
pkg_shrinkwrap_content: str,
pkg_shrinkwrap_expected: str,
)
| 95 | [(NPM_LOCKFILE_JSON, NPM_LOCKFILE_EXPECTED), (None, None)], |
| 96 | ) |
| 97 | def test_npm_provider( |
| 98 | config: BaseConfig, |
| 99 | chdir: Path, |
| 100 | pkg_lock_content: str, |
| 101 | pkg_lock_expected: str, |
| 102 | pkg_shrinkwrap_content: str, |
| 103 | pkg_shrinkwrap_expected: str, |
| 104 | ): |
| 105 | pkg = chdir / NpmProvider.package_filename |
| 106 | pkg.write_text(dedent(NPM_PACKAGE_JSON)) |
| 107 | if pkg_lock_content: |
| 108 | pkg_lock = chdir / NpmProvider.lock_filename |
| 109 | pkg_lock.write_text(dedent(pkg_lock_content)) |
| 110 | if pkg_shrinkwrap_content: |
| 111 | pkg_shrinkwrap = chdir / NpmProvider.shrinkwrap_filename |
| 112 | pkg_shrinkwrap.write_text(dedent(pkg_shrinkwrap_content)) |
| 113 | config.settings["version_provider"] = "npm" |
| 114 | |
| 115 | provider = get_provider(config) |
| 116 | assert isinstance(provider, NpmProvider) |
| 117 | assert provider.get_version() == "0.1.0" |
| 118 | |
| 119 | provider.set_version("42.1") |
| 120 | assert pkg.read_text() == dedent(NPM_PACKAGE_EXPECTED) |
| 121 | if pkg_lock_content: |
| 122 | assert pkg_lock.read_text() == dedent(pkg_lock_expected) |
| 123 | if pkg_shrinkwrap_content: |
| 124 | assert pkg_shrinkwrap.read_text() == dedent(pkg_shrinkwrap_expected) |
| 125 | |
| 126 | |
| 127 | def test_npm_provider_respects_configured_encoding_for_all_files( |
nothing calls this directly
no test coverage detected
searching dependent graphs…