summaryrefslogtreecommitdiff
path: root/tests/integration/publish_tests.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/integration/publish_tests.rs')
-rw-r--r--tests/integration/publish_tests.rs296
1 files changed, 27 insertions, 269 deletions
diff --git a/tests/integration/publish_tests.rs b/tests/integration/publish_tests.rs
index a033f5d07..26acbd244 100644
--- a/tests/integration/publish_tests.rs
+++ b/tests/integration/publish_tests.rs
@@ -5,81 +5,11 @@ use std::process::Command;
use deno_core::serde_json::json;
use test_util::assert_contains;
use test_util::assert_not_contains;
-use test_util::env_vars_for_jsr_npm_tests;
use test_util::env_vars_for_jsr_provenance_tests;
use test_util::env_vars_for_jsr_tests;
use test_util::env_vars_for_jsr_tests_with_git_check;
-use test_util::env_vars_for_npm_tests;
-use test_util::itest;
use test_util::TestContextBuilder;
-itest!(no_token {
- args: "publish",
- cwd: Some("publish/missing_deno_json"),
- output: "publish/no_token.out",
- envs: env_vars_for_jsr_tests(),
- exit_code: 1,
-});
-
-itest!(missing_deno_json {
- args: "publish --token 'sadfasdf'",
- output: "publish/missing_deno_json.out",
- cwd: Some("publish/missing_deno_json"),
- envs: env_vars_for_jsr_tests(),
- exit_code: 1,
-});
-
-itest!(has_slow_types {
- args: "publish --token 'sadfasdf'",
- output: "publish/has_slow_types.out",
- cwd: Some("publish/has_slow_types"),
- envs: env_vars_for_jsr_tests(),
- exit_code: 1,
-});
-
-itest!(allow_slow_types {
- args: "publish --allow-slow-types --token 'sadfasdf'",
- output: "publish/allow_slow_types.out",
- cwd: Some("publish/has_slow_types"),
- envs: env_vars_for_jsr_tests(),
- http_server: true,
- exit_code: 0,
-});
-
-itest!(invalid_path {
- args: "publish --token 'sadfasdf'",
- output: "publish/invalid_path.out",
- cwd: Some("publish/invalid_path"),
- envs: env_vars_for_jsr_tests(),
- exit_code: 1,
-});
-
-itest!(symlink {
- args: "publish --token 'sadfasdf' --dry-run",
- output: "publish/symlink.out",
- cwd: Some("publish/symlink"),
- envs: env_vars_for_jsr_tests(),
- exit_code: 0,
-});
-
-itest!(invalid_import {
- args: "publish --token 'sadfasdf' --dry-run",
- output: "publish/invalid_import.out",
- cwd: Some("publish/invalid_import"),
- envs: env_vars_for_jsr_npm_tests(),
- exit_code: 1,
- http_server: true,
-});
-
-itest!(invalid_import_esm_sh_suggestion {
- args: "publish --token 'sadfasdf' --dry-run",
- output: "publish/invalid_import_esm_sh_suggestion.out",
- cwd: Some("publish/invalid_import_esm_sh_suggestion"),
- envs: env_vars_for_jsr_npm_tests(),
- exit_code: 1,
- http_server: true,
-});
-
#[test]
fn publish_non_exported_files_using_import_map() {
let context = publish_context_builder().build();
@@ -139,191 +69,19 @@ fn publish_warning_not_in_graph() {
);
}
-itest!(javascript_missing_decl_file {
- args: "publish --token 'sadfasdf'",
- output: "publish/javascript_missing_decl_file.out",
- cwd: Some("publish/javascript_missing_decl_file"),
- envs: env_vars_for_jsr_tests(),
- exit_code: 0,
- http_server: true,
-});
-
-itest!(unanalyzable_dynamic_import {
- args: "publish --token 'sadfasdf'",
- output: "publish/unanalyzable_dynamic_import.out",
- cwd: Some("publish/unanalyzable_dynamic_import"),
- envs: env_vars_for_jsr_tests(),
- exit_code: 0,
- http_server: true,
-});
-
-itest!(javascript_decl_file {
- args: "publish --token 'sadfasdf'",
- output: "publish/javascript_decl_file.out",
- cwd: Some("publish/javascript_decl_file"),
- envs: env_vars_for_jsr_tests(),
- http_server: true,
- exit_code: 0,
-});
-
-itest!(package_json {
- args: "publish --token 'sadfasdf'",
- output: "publish/package_json.out",
- cwd: Some("publish/package_json"),
- envs: env_vars_for_jsr_npm_tests(),
- http_server: true,
-});
-
-itest!(successful {
- args: "publish --token 'sadfasdf'",
- output: "publish/successful.out",
- cwd: Some("publish/successful"),
- envs: env_vars_for_jsr_tests(),
- http_server: true,
-});
-
-itest!(provenance {
- args: "publish",
- output: "publish/successful_provenance.out",
- cwd: Some("publish/successful"),
- envs: env_vars_for_jsr_provenance_tests(),
- http_server: true,
-});
-
-itest!(no_check {
- args: "publish --token 'sadfasdf' --no-check",
- // still type checks the slow types output though
- output: "publish/successful_no_check.out",
- cwd: Some("publish/successful"),
- envs: env_vars_for_jsr_tests(),
- http_server: true,
-});
-
-itest!(node_specifier {
- args: "publish --token 'sadfasdf'",
- output: "publish/node_specifier.out",
- cwd: Some("publish/node_specifier"),
- envs: env_vars_for_jsr_tests()
- .into_iter()
- .chain(env_vars_for_npm_tests().into_iter())
- .collect(),
- http_server: true,
-});
-
-itest!(config_file_jsonc {
- args: "publish --token 'sadfasdf'",
- output: "publish/deno_jsonc.out",
- cwd: Some("publish/deno_jsonc"),
- envs: env_vars_for_jsr_tests(),
- http_server: true,
-});
-
-itest!(workspace_all {
- args: "publish --token 'sadfasdf'",
- output: "publish/workspace.out",
- cwd: Some("publish/workspace"),
- envs: env_vars_for_jsr_tests(),
- http_server: true,
-});
-
-itest!(workspace_individual {
- args: "publish --token 'sadfasdf'",
- output: "publish/workspace_individual.out",
- cwd: Some("publish/workspace/bar"),
- envs: env_vars_for_jsr_tests(),
- http_server: true,
-});
-
-itest!(dry_run {
- args: "publish --token 'sadfasdf' --dry-run",
- cwd: Some("publish/successful"),
- output: "publish/dry_run.out",
- envs: env_vars_for_jsr_tests(),
- http_server: true,
-});
-
-itest!(config_flag {
- args: "publish --token 'sadfasdf' --config=successful/deno.json",
- output: "publish/successful.out",
- cwd: Some("publish"),
- envs: env_vars_for_jsr_tests(),
- http_server: true,
-});
-
-itest!(bare_node_builtins {
- args: "publish --token 'sadfasdf' --dry-run --unstable-bare-node-builtins",
- output: "publish/bare_node_builtins.out",
- cwd: Some("publish/bare_node_builtins"),
- envs: env_vars_for_jsr_npm_tests(),
- http_server: true,
-});
-
-itest!(bare_node_builtins_warning_no_warnings {
- args: "publish --token 'sadfasdf' --dry-run --unstable-bare-node-builtins",
- output: "publish/bare_node_builtins_no_warnings.out",
- cwd: Some("publish/bare_node_builtins"),
- envs: env_vars_for_jsr_npm_tests()
- .into_iter()
- .chain(
- vec![(
- "DENO_DISABLE_PEDANTIC_NODE_WARNINGS".to_string(),
- "1".to_string()
- )]
- .into_iter()
- )
- .collect(),
- http_server: true,
-});
-
-itest!(sloppy_imports {
- args: "publish --token 'sadfasdf' --dry-run --unstable-sloppy-imports",
- output: "publish/sloppy_imports.out",
- cwd: Some("publish/sloppy_imports"),
- envs: env_vars_for_jsr_tests(),
- http_server: true,
-});
-
-itest!(sloppy_imports_not_enabled {
- args: "publish --token 'sadfasdf' --dry-run",
- output: "publish/sloppy_imports_not_enabled.out",
- cwd: Some("publish/sloppy_imports"),
- envs: env_vars_for_jsr_tests(),
- http_server: true,
- exit_code: 1,
-});
-
-itest!(sloppy_imports_no_warnings {
- args: "publish --token 'sadfasdf' --dry-run --unstable-sloppy-imports",
- output: "publish/sloppy_imports_no_warnings.out",
- cwd: Some("publish/sloppy_imports"),
- envs: env_vars_for_jsr_tests()
- .into_iter()
- .chain(
- vec![(
- "DENO_DISABLE_PEDANTIC_NODE_WARNINGS".to_string(),
- "1".to_string()
- )]
- .into_iter()
- )
- .collect(),
- http_server: true,
-});
-
-itest!(jsr_jsonc {
- args: "publish --token 'sadfasdf'",
- cwd: Some("publish/jsr_jsonc"),
- output: "publish/jsr_jsonc/mod.out",
- envs: env_vars_for_jsr_tests(),
- http_server: true,
-});
-
-itest!(unsupported_jsx_tsx {
- args: "publish --token 'sadfasdf'",
- cwd: Some("publish/unsupported_jsx_tsx"),
- output: "publish/unsupported_jsx_tsx/mod.out",
- envs: env_vars_for_jsr_npm_tests(),
- http_server: true,
-});
+#[test]
+fn provenance() {
+ TestContextBuilder::new()
+ .use_http_server()
+ .envs(env_vars_for_jsr_provenance_tests())
+ .cwd("publish/successful")
+ .build()
+ .new_command()
+ .args("publish")
+ .run()
+ .assert_exit_code(0)
+ .assert_matches_file("publish/successful_provenance.out");
+}
#[test]
fn ignores_gitignore() {
@@ -629,20 +387,6 @@ fn not_includes_vendor_dir_only_when_vendor_true() {
}
}
-fn publish_context_builder() -> TestContextBuilder {
- TestContextBuilder::new()
- .use_http_server()
- .envs(env_vars_for_jsr_tests())
- .use_temp_cwd()
-}
-
-fn publish_context_builder_with_git_checks() -> TestContextBuilder {
- TestContextBuilder::new()
- .use_http_server()
- .envs(env_vars_for_jsr_tests_with_git_check())
- .use_temp_cwd()
-}
-
#[test]
fn allow_dirty() {
let context = publish_context_builder_with_git_checks().build();
@@ -739,3 +483,17 @@ fn allow_dirty_dry_run() {
let output = output.combined_output();
assert_contains!(output, "Aborting due to uncommitted changes. Check in source code or run with --allow-dirty");
}
+
+fn publish_context_builder() -> TestContextBuilder {
+ TestContextBuilder::new()
+ .use_http_server()
+ .envs(env_vars_for_jsr_tests())
+ .use_temp_cwd()
+}
+
+fn publish_context_builder_with_git_checks() -> TestContextBuilder {
+ TestContextBuilder::new()
+ .use_http_server()
+ .envs(env_vars_for_jsr_tests_with_git_check())
+ .use_temp_cwd()
+}