tortank 0.30.7

Turtle/N3 parser
Documentation
use serial_test::serial;
use test_case::test_case;

use crate::{tests::cmp_input_file, turtle::turtle_doc::reset_fake_uuid_gen};

const INPUT_DIR: &str = "examples/turtle_doc";

#[test_case("0001", None          , false ; "EQ: complex document with blank nodes, nested objects, etc")]
#[test_case("0002", None          , false ; "EQ: another complex document")]
#[test_case("0003", None          , false ; "EQ: could not parse completely")]
#[test_case("0004", Some("0004")  , false ; "DIFF: diff is buggy")]
#[test_case("0005", Some("0005")  , false ; "DIFF: simple diff")]
#[test_case("0006", None          , false ; "EQ: complex string with spaces")]
#[test_case("0007", None          , false ; "EQ: complex string with spaces but more complex")]
#[test_case("0008", None          , false ; "EQ: simple doc with comments etc")]
#[test_case("0009", None          , false ; "EQ: test simple blank nodes (unlabeled)")]
#[test_case("0010", None          , false ; "EQ: test simple xsd:time")]
#[test_case("0011", None          , false ; "EQ: test simple parsing")]
#[test_case("0012", None          , false ; "EQ: test simple parsing multi comments")]
#[test_case("0013", None          , false ; "EQ: test labeled bnode error")]
#[test_case("0014", None          , false ; "EQ: a bit of everything (list, bnode, nested unlabeled bnode etc)")]
#[test_case("0015", None          , false ; "EQ: test simple collections")]
#[test_case("0016", None          , false ; "EQ: test date 2000-01-12T12:13:14Z")]
#[test_case("0017", None          , false ; "EQ: test date 2002-10-10+13:00")]
#[test_case("0018", None          , false ; "EQ: test date 2002-10-10T00:00:00+13")]
#[test_case("0019", None          , false ; "EQ: test date 2002-10-09T11:00:00Z")]
#[test_case("0020", None          , false ; "EQ: test date 2002-10-10T00:00:00+05:00")]
#[test_case("0021", None          , false ; "EQ: test date 2002-10-09T19:00:00Z")]
#[test_case("0022", None          , false ; "EQ: test date 2002-09-29")]
#[test_case("0023", None          , false ; "EQ: test date 20-09-2021")]
#[test_case("0024", None          , false ; "EQ: test date 09/20/2021")]
#[test_case("0025", None          , false ; "EQ: test date 20/09/2012")]
#[test_case("0026", None          , false ; "EQ: test date 2023-08-30T10:31:00.080Z")]
#[test_case("0027", None          , true  ; "JSON: test simple json result with bnode")]
#[test_case("0028", None          , false  ; "EQ: The following Turtle document contains examples of all the different ways of writing IRIs in Turtle.")]
#[test_case("0029", None          , false  ; "EQ: Simple base example")]
#[test_case("0030", None          , false  ; "EQ: empty STRING_LITERAL_LONG_QUOTE")]
#[test_case("0031", None          , false  ; "EQ: alt quotes")]
#[test_case("0032", None          , false ; "EQ: test dateTime 2025-04-15T12:00:00Z")]
#[serial]
fn test_turtle_doc(test_name: &str, diff_file: Option<&str>, output_json: bool) {
    reset_fake_uuid_gen();
    cmp_input_file(test_name, diff_file, output_json, INPUT_DIR, None);
}