mirror of
https://github.com/pnpm/pnpm.git
synced 2026-07-21 21:22:26 -04:00
* test: fix snapshot * test: filter out index files temporarily * chore: install registry-mock * chore(just): add pnpm to test * feat: create registry-mock crate * feat(registry-mock): expose get_or_init instead * refactor: local static * feat(testing-utils): add_mocked_registry * refactor: rename new to init * fix: enable_all * refactor: use * feat: add ending / * fix: must be "localhost" * feat(registry-mock): use portpicker * feat(registry-mock): share a single instance * feat(testing-utils): stop skipping index files * test(cli/install): use registry-mock * fix: forgot to save * fix: forgot increment * fix: used to wrong syntax * feat(registry-mock): use advisory-lock * fix: save anchor before early exit * fix: drop before delete * tmp: stored * refactor: remove unused import * fix: truncate the file * feat: use try_lock * feat(registry-mock): separate lock from anchor * refactor: use RAII pattern * fix(registry-mock): user_count * refactor: rename user_count to ref_count * fix: kill groups * fix(registry-mock): ref_count * chore(git): revert broken fix This reverts commit 8c0ba7bafd7670dd6580a142ccd7dea5809ed782. * fix(registry-mock): use sysinfo to kill * fix(registry-mock): kill algorithm * feat(registry-mock): recurse regardless * feat(registry-mock): use reverse recursion instead * refactor: reduce complexity * refactor: remove unnecessary mod declarations * refactor: marks some struct as must_use * test(cli/add): use registry-mock * test(pnpm-compatibility): use registry-mock * refactor: remove unused items * docs: correction * chore(license): allow MPL-2.0 * chore(license): allow Unlicense * fix(registry-mock): failure on few threads * chore: move pnpm install to just * ci: cache pnpm * fix(test): kill leftovers * fix(test): allow delete to fail * fix(ci): Install just * fix(test): don't kill leftovers This reverts commit ef78d8c54cee691d93fa8e5c169141a0098047f2. * refactor: move some types to their own mods * refactor: move port_to_url * refactor: make listen lazy * refactor: rename `listen` to `url` * refactor: use qualified path * refactor: store port as u16 * feat(registry-mock): PreparedRegistryInfo * refactor: remove unnecessary async * refactor: move init code * refactor: define lib * feat(registry-mock): bin * refactor: call just test * ci: prepare a server * feat(registry-mock): unique prepared * docs(registry-mock): cli * feat(registry-mock/cli): locations of log files * docs(mocked-registry): important items * docs(registry-mock): ignore bin * style: taplo fmt * docs(readme): instruction to run test * refactor: move registry-mock to tasks * ci(codecov): fix * feat(registry-mock): bump max_retries
50 lines
1.5 KiB
Rust
50 lines
1.5 KiB
Rust
pub mod _utils;
|
|
pub use _utils::*;
|
|
|
|
use assert_cmd::prelude::*;
|
|
use command_extra::CommandExtra;
|
|
use pacquet_testing_utils::{bin::CommandTempCwd, fs::get_filenames_in_folder};
|
|
use pretty_assertions::assert_eq;
|
|
use std::fs;
|
|
|
|
#[test]
|
|
fn should_create_package_json() {
|
|
let CommandTempCwd { pacquet, root, workspace, .. } = CommandTempCwd::init();
|
|
pacquet.with_arg("init").assert().success();
|
|
|
|
let manifest_path = workspace.join("package.json");
|
|
dbg!(&manifest_path);
|
|
|
|
eprintln!("Content of package.json");
|
|
let package_json_content = fs::read_to_string(&manifest_path).expect("read from package.json");
|
|
insta::assert_snapshot!(package_json_content);
|
|
|
|
eprintln!("Created files");
|
|
assert_eq!(get_filenames_in_folder(&workspace), ["package.json"]);
|
|
|
|
drop(root); // cleanup
|
|
}
|
|
|
|
#[test]
|
|
fn should_throw_on_existing_file() {
|
|
let CommandTempCwd { pacquet, root, workspace, .. } = CommandTempCwd::init();
|
|
|
|
let manifest_path = workspace.join("package.json");
|
|
dbg!(&manifest_path);
|
|
|
|
eprintln!("Creating package.json...");
|
|
fs::write(&manifest_path, "{}").expect("write to package.json");
|
|
|
|
eprintln!("Executing pacquet init...");
|
|
let output = pacquet.with_arg("init").output().expect("execute pacquet init");
|
|
dbg!(&output);
|
|
|
|
eprintln!("Exit status code");
|
|
assert!(!output.status.success());
|
|
|
|
eprintln!("Stderr");
|
|
insta::assert_snapshot!(String::from_utf8_lossy(&output.stderr).trim_end());
|
|
|
|
drop(root); // cleanup
|
|
}
|