use valve_keyvalue::parse::{parse_string, TrackedChars};
use valve_keyvalue::error::Error;
#[test]
fn parse_string_1() {
assert_eq!(parse_string(&mut TrackedChars::new("abc "), false), Ok("abc".to_string()))
}
#[test]
fn parse_string_2() {
assert_eq!(parse_string(&mut TrackedChars::new("abc"), false), Ok("abc".to_string()))
}
#[test]
fn parse_string_3() {
assert_eq!(parse_string(&mut TrackedChars::new("\"abc another thing\""), false), Ok("abc another thing".to_string()))
}
#[test]
fn parse_string_4() {
assert_eq!(parse_string(&mut TrackedChars::new("\"abc another thing with \\\"quotes\\\"\""), true), Ok("abc another thing with \"quotes\"".to_string()))
}
#[test]
fn parse_string_5() {
assert_eq!(parse_string(&mut TrackedChars::new("\"abc another thing with \\\"quotes\\\"\""), false), Ok("abc another thing with \\".to_string()))
}
#[test]
fn parse_string_6() {
assert_eq!(parse_string(&mut TrackedChars::new("\"abc another thing\" with stuff after"), false), Ok("abc another thing".to_string()))
}
#[test]
fn parse_string_7() {
assert_eq!(parse_string(&mut TrackedChars::new("\"abc another thing but with \\ttabs\\t\""), true), Ok("abc another thing but with \ttabs\t".to_string()))
}
#[test]
fn parse_string_8() {
assert_eq!(parse_string(&mut TrackedChars::new("\"abc another thing but with \\ttabs\\t\""), false), Ok("abc another thing but with \\ttabs\\t".to_string()))
}
#[test]
fn parse_string_9() {
assert_eq!(parse_string(&mut TrackedChars::new(" "), false), Ok("".to_string()))
}
#[test]
fn parse_string_10() {
assert_eq!(parse_string(&mut TrackedChars::new(" a "), false), Ok("".to_string()))
}
#[test]
fn parse_string_11() {
assert_eq!(parse_string(&mut TrackedChars::new(" a"), false), Ok("".to_string()))
}
#[test]
fn parse_string_12() {
assert_eq!(parse_string(&mut TrackedChars::new("\t"), false), Ok("".to_string()))
}
#[test]
fn parse_string_13() {
assert_eq!(parse_string(&mut TrackedChars::new("\n"), false), Ok("".to_string()))
}
#[test]
fn parse_string_14() {
assert_eq!(parse_string(&mut TrackedChars::new("\r"), false), Ok("".to_string()))
}
#[test]
fn parse_string_15() {
assert_eq!(parse_string(&mut TrackedChars::new("a\"b "), false), Ok("a".to_string()))
}
#[test]
fn parse_string_16() {
assert_eq!(parse_string(&mut TrackedChars::new("a\\b "), false), Ok("a\\b".to_string()))
}
#[test]
fn parse_string_17() {
assert_eq!(parse_string(&mut TrackedChars::new("a\\\"b "), false), Ok("a\\".to_string()))
}
#[test]
fn parse_string_18() {
assert_eq!(parse_string(&mut TrackedChars::new("a\\ "), false), Ok("a\\".to_string()))
}
#[test]
fn parse_string_19() {
assert_eq!(parse_string(&mut TrackedChars::new("\\ "), false), Ok("\\".to_string()))
}
#[test]
fn parse_string_20() {
assert_eq!(parse_string(&mut TrackedChars::new("\\"), false), Ok("\\".to_string()))
}
#[test]
fn parse_string_21() {
assert_eq!(parse_string(&mut TrackedChars::new("a\tb "), false), Ok("a".to_string()))
}
#[test]
fn parse_string_22() {
assert_eq!(parse_string(&mut TrackedChars::new("a\nb "), false), Ok("a".to_string()))
}
#[test]
fn parse_string_23() {
assert_eq!(parse_string(&mut TrackedChars::new("a b"), false), Ok("a".to_string()))
}
#[test]
fn parse_string_24() {
assert_eq!(parse_string(&mut TrackedChars::new("\"\""), false), Ok("".to_string()))
}
#[test]
fn parse_string_25() {
assert_eq!(parse_string(&mut TrackedChars::new("\"\""), true), Ok("".to_string()))
}
#[test]
fn parse_string_26() {
assert_eq!(parse_string(&mut TrackedChars::new("\" \""), false), Ok(" ".to_string()))
}
#[test]
fn parse_string_27() {
assert_eq!(parse_string(&mut TrackedChars::new("\"\t\""), false), Ok("\t".to_string()))
}
#[test]
fn parse_string_28() {
assert_eq!(parse_string(&mut TrackedChars::new("\"\n\""), false), Ok("\n".to_string()))
}
#[test]
fn parse_string_29() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\\""), false), Ok("a\\".to_string()))
}
#[test]
fn parse_string_30() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\\""), true), Err(Error::UnexpectedEndOfFile))
}
#[test]
fn parse_string_31() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\b\""), true), Ok("ab".to_string()))
}
#[test]
fn parse_string_32() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\b\""), false), Ok("a\\b".to_string()))
}
#[test]
fn parse_string_33() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\\\b\""), true), Ok("a\\b".to_string()))
}
#[test]
fn parse_string_34() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\\\b\""), false), Ok("a\\\\b".to_string()))
}
#[test]
fn parse_string_35() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\\"b\""), true), Ok("a\"b".to_string()))
}
#[test]
fn parse_string_36() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\\"b\""), false), Ok("a\\".to_string()))
}
#[test]
fn parse_string_37() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\\"b\\\"c\""), true), Ok("a\"b\"c".to_string()))
}
#[test]
fn parse_string_38() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\\"b\\\"c\""), false), Ok("a\\".to_string()))
}
#[test]
fn parse_string_39() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\tb\""), true), Ok("a\tb".to_string()))
}
#[test]
fn parse_string_40() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\tb\""), false), Ok("a\\tb".to_string()))
}
#[test]
fn parse_string_41() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\nb\""), true), Ok("a\nb".to_string()))
}
#[test]
fn parse_string_42() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\nb\""), false), Ok("a\\nb".to_string()))
}
#[test]
fn parse_string_43() {
assert_eq!(parse_string(&mut TrackedChars::new("\"\\t\\n\\\"\\\\\""), true), Ok("\t\n\"\\".to_string()))
}
#[test]
fn parse_string_44() {
assert_eq!(parse_string(&mut TrackedChars::new("\"\\t\\n\\\"\\\\\""), false), Ok("\\t\\n\\".to_string()))
}
#[test]
fn parse_string_45() {
assert_eq!(parse_string(&mut TrackedChars::new("\"\\\\\\\\\""), true), Ok("\\\\".to_string()))
}
#[test]
fn parse_string_46() {
assert_eq!(parse_string(&mut TrackedChars::new("\"\\\\\\\\\""), false), Ok("\\\\\\\\".to_string()))
}
#[test]
fn parse_string_47() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\"), true), Err(Error::UnexpectedEndOfFile))
}
#[test]
fn parse_string_48() {
assert_eq!(parse_string(&mut TrackedChars::new("\"a\\"), false), Err(Error::UnexpectedEndOfFile))
}
#[test]
fn parse_string_49() {
assert_eq!(parse_string(&mut TrackedChars::new("a\\\"b "), false), Ok("a\\".to_string()))
}
#[test]
fn parse_string_50() {
assert_eq!(parse_string(&mut TrackedChars::new("\"line1\r\nline2\""), false), Ok("line1\r\nline2".to_string()))
}
#[test]
fn parse_string_51() {
assert_eq!(parse_string(&mut TrackedChars::new("\"\\tstart\""), true), Ok("\tstart".to_string()))
}
#[test]
fn parse_string_52() {
assert_eq!(parse_string(&mut TrackedChars::new("a\"b"), false), Ok("a".to_string()))
}
#[test]
fn parse_string_53() {
assert_eq!(parse_string(&mut TrackedChars::new("\" "), false), Err(Error::UnexpectedEndOfFile))
}
#[test]
fn parse_string_54() {
assert_eq!(parse_string(&mut TrackedChars::new("\""), false), Err(Error::UnexpectedEndOfFile))
}
#[test]
fn parse_string_55() {
assert_eq!(parse_string(&mut TrackedChars::new("\"text\\\"\""), true), Ok("text\"".to_string()))
}
#[test]
fn parse_string_56() {
assert_eq!(parse_string(&mut TrackedChars::new("\"text\\\"\""), false), Ok("text\\".to_string()))
}
#[test]
fn parse_string_57() {
assert_eq!(parse_string(&mut TrackedChars::new("\" \t \n \""), false), Ok(" \t \n ".to_string()))
}
#[test]
fn parse_string_58() {
assert_eq!(parse_string(&mut TrackedChars::new("abc\r"), false), Ok("abc".to_string()))
}