just/tests
2024-05-17 23:12:38 +00:00
..
completions
allow_duplicate_recipes.rs Stabilize fallback (#1471) 2023-01-04 06:31:56 +00:00
allow_duplicate_variables.rs Add 'allow-duplicate-variables' setting (#1922) 2024-05-15 01:39:42 +00:00
assert_stdout.rs
assert_success.rs
assertions.rs Add assert expression (#1845) 2024-05-15 01:55:32 +00:00
assignment.rs Improve error message if if is missing the else (#1252) 2022-06-30 10:34:11 +00:00
attributes.rs
backticks.rs
byte_order_mark.rs
changelog.rs
choose.rs
command.rs Update clap to version 4 (#1924) 2024-05-14 20:29:40 -07:00
completions.rs
conditional.rs
confirm.rs
delimiters.rs Use box-drawing characters in error messages (#1798) 2023-12-29 21:25:30 +00:00
directories.rs
dotenv.rs Make dotenv-path relative to working directory (#2040) 2024-05-15 04:31:58 +00:00
edit.rs
equals.rs
error_messages.rs
evaluate.rs
examples.rs
export.rs
fallback.rs
fmt.rs Update clap to version 4 (#1924) 2024-05-14 20:29:40 -07:00
functions.rs Add append() function (#2046) 2024-05-17 23:12:38 +00:00
ignore_comments.rs Fix function name typo (#1953) 2024-03-11 04:30:53 +00:00
imports.rs Add 'allow-duplicate-variables' setting (#1922) 2024-05-15 01:39:42 +00:00
init.rs
interrupts.rs
invocation_directory.rs
json.rs Add assert expression (#1845) 2024-05-15 01:55:32 +00:00
lib.rs Add --man subcommand (#2041) 2024-05-15 07:28:50 +00:00
line_prefixes.rs Do use super::*; instead of use crate::common::*; (#1239) 2022-06-19 04:56:31 +00:00
man.rs Add --man subcommand (#2041) 2024-05-15 07:28:50 +00:00
misc.rs Increase --list maximum alignable width from 30 to 50 (#2039) 2024-05-15 02:37:00 +00:00
modules.rs Add 'allow-duplicate-variables' setting (#1922) 2024-05-15 01:39:42 +00:00
multibyte_char.rs
newline_escape.rs
no_aliases.rs
no_cd.rs
no_dependencies.rs Add --no-deps to skip running recipe dependencies (#1819) 2024-01-09 08:40:08 +00:00
no_exit_message.rs
os_attributes.rs
parser.rs
positional_arguments.rs Pass evaluated arguments as positional arguments (#810) 2021-05-02 10:25:43 +00:00
private.rs Stabilize fallback (#1471) 2023-01-04 06:31:56 +00:00
quiet.rs Add set quiet and [no-quiet] (#1704) 2024-01-12 20:38:23 +00:00
quote.rs Stabilize fallback (#1471) 2023-01-04 06:31:56 +00:00
readme.rs Cleanup (#2026) 2024-05-14 20:07:41 -07:00
recursion_limit.rs Use box-drawing characters in error messages (#1798) 2023-12-29 21:25:30 +00:00
regexes.rs
run.rs
search_arguments.rs
search.rs
shadowing_parameters.rs
shebang.rs Use --command-color when printing shebang recipe commands (#1911) 2024-05-15 00:53:59 +00:00
shell.rs
show.rs
slash_operator.rs
string.rs
subsequents.rs
summary.rs
tempdir.rs
test.rs Make dotenv-path relative to working directory (#2040) 2024-05-15 04:31:58 +00:00
undefined_variables.rs Use box-drawing characters in error messages (#1798) 2023-12-29 21:25:30 +00:00
unstable.rs
windows_shell.rs
working_directory.rs

use super::*;

#[test]
fn readme() {
  let mut justfiles = Vec::new();
  let mut current = None;

  for line in fs::read_to_string("README.md").unwrap().lines() {
    if let Some(mut justfile) = current {
      if line == "```" {
        justfiles.push(justfile);
        current = None;
      } else {
        justfile += line;
        justfile += "\n";
        current = Some(justfile);
      }
    } else if line == "```just" {
      current = Some(String::new());
    }
  }

  for justfile in justfiles {
    let tmp = tempdir();

    let path = tmp.path().join("justfile");

    fs::write(path, justfile).unwrap();

    let output = Command::new(executable_path("just"))
      .current_dir(tmp.path())
      .arg("--dump")
      .output()
      .unwrap();

    assert_success(&output);
  }
}