move .pl files from tests-pl next to the .toml of the test that uses them

This commit is contained in:
Skgland
2023-12-04 22:16:04 +01:00
committed by Bennet Bleßmann
parent 1c52de9ab1
commit fcf2e2db05
14 changed files with 16 additions and 44 deletions

View File

@@ -1,3 +1,3 @@
# issue 820
args = ["-f", "--no-add-history", "-g", "test,halt", "tests-pl/issue820-goals.pl"]
args = ["-f", "--no-add-history", "-g", "test,halt", "tests/scryer/cli/issues/issue820-goals.pl"]
binary = true

View File

@@ -1,3 +1,3 @@
['tests-pl/issue852-throw_e.pl'].
['tests-pl/issue852-throw_e.pl'].
['tests/scryer/cli/issues/issue852-throw_e.pl'].
['tests/scryer/cli/issues/issue852-throw_e.pl'].
halt.

View File

@@ -0,0 +1,3 @@
test :- write(world), nl.
:- initialization(write(hello)).

View File

@@ -0,0 +1 @@
:- op(900, fy, [$,@]).

View File

@@ -0,0 +1,3 @@
:- set_prolog_flag(occurs_check, true).
f(X, g(X)).

View File

@@ -0,0 +1 @@
:- initialization(throw(e)).

View File

@@ -1,3 +1,3 @@
# issue 820
args = ["-f", "--no-add-history", "-g", "test", "-g", "halt", "tests-pl/issue820-goals.pl"]
args = ["-f", "--no-add-history", "-g", "test", "-g", "halt", "tests/scryer/cli/issues/issue820-goals.pl"]
binary = true

View File

@@ -1,3 +1,3 @@
# issue 841
args = ["-f", "--no-add-history", "tests-pl/issue841-occurs-check.pl"]
args = ["-f", "--no-add-history", "tests/scryer/cli/issues/issue841-occurs-check.pl"]
binary = true

View File

@@ -1,3 +1,3 @@
# issue 839
args = ["-f", "--no-add-history", "tests-pl/issue839-op3.pl", "-g", "halt"]
args = ["-f", "--no-add-history", "tests/scryer/cli/issues/issue839-op3.pl", "-g", "halt"]
binary = true

View File

@@ -1,2 +1,2 @@
['tests-pl/issue812-singleton-warning.pl'].
['tests/scryer/cli/issues/issue812-singleton-warning.pl'].
halt.

View File

@@ -1,5 +1,3 @@
use assert_cmd::Command;
use std::ffi::OsStr;
pub(crate) trait Expectable {
#[track_caller]
@@ -34,30 +32,3 @@ pub(crate) fn load_module_test<T: Expectable>(file: &str, expected: T) {
let mut wam = Machine::with_test_streams();
expected.assert_eq(wam.test_load_file(file).as_slice());
}
pub const SCRYER_PROLOG: &str = "scryer-prolog";
/// Test whether scryer-prolog
/// produces the expected output when called with the supplied
/// arguments and fed the supplied input
pub fn run_top_level_test_with_args<
A: IntoIterator<Item = AS>,
S: Into<Vec<u8>>,
O: assert_cmd::assert::IntoOutputPredicate<P>,
AS: AsRef<OsStr>,
P: predicates_core::Predicate<[u8]>,
>(
args: A,
stdin: S,
expected_stdout: O,
) {
Command::cargo_bin(SCRYER_PROLOG)
.unwrap()
.arg("-f")
.arg("--no-add-history")
.args(args)
.write_stdin(stdin)
.assert()
.stdout(expected_stdout.into_output())
.success();
}

View File

@@ -2,10 +2,15 @@ mod helper;
mod issues;
mod src_tests;
/// to generate new reference output files into dump/ run `TRYCMD=dump cargo test -- cli_test`
/// check that the output is as expected, then move them next to the .toml file
/// To add new cli test copy an existing .toml file in `tests/scryer/cli/issues/` or `tests/scryer/cli/issues/src_tests/`,
/// adjust as necessary the `-f` and `--no-add-history` args should be kept but additional args may be added.
/// For input on stdin add a .stdin file with the same filename.
/// Then to generate new reference output files into dump/ run `TRYCMD=dump cargo test -- cli_test`
/// check that the output in the .stdout and .stderr file is as expected, then move them next to the .toml file.
///
/// to re-generate reference output files run `TRYCMD=overwrite cargo test -- cli_test`
/// If a test does not have a .stderr or .stdout the corresponding output is ignored i.e. any and no output is accepted
///
/// to re-generate all reference output files run `TRYCMD=overwrite cargo test -- cli_test`
/// then check that the changes are as expected e.g. by looking at the `git diff`
#[test]
fn cli_tests() {

View File

@@ -1,4 +1,4 @@
use crate::helper::{load_module_test, run_top_level_test_with_args};
use crate::helper::load_module_test;
use serial_test::serial;
#[serial]