diff --git a/README.md b/README.md index 82ccc56..8738783 100644 --- a/README.md +++ b/README.md @@ -21,14 +21,14 @@ For more information about TOML, visit the official website at [https://toml.io/ CsToml has the following features. -- It complies with [TOML v1.0.0](https://toml.io/en/v1.0.0). +- It complies with [TOML v1.0.0](https://toml.io/en/v1.0.0) by default. +- [TOML v1.1.0](https://toml.io/en/v1.1.0) is also supported as an optional feature. - .NET 8, .NET 9, .NET 10 are supported. - Parsing is performed using byte sequences instead of `string`. - Byte sequences are processed directly by the API defined in `System.Buffers`(`IBufferWriter`,`ReadOnlySequence`), resulting in small memory allocation and fast performance. - Buffers are rented from the pool(`ArrayPool`), reducing the allocation. - Core APIs are compatible with Native AOT. -- It supports new features planned for the upcoming TOML v1.1.0 as optional support. -- CsToml deserializer has been tested using [the standard TOML v1.0.0 test cases](https://github.com/toml-lang/toml-test/tree/master/tests) and all have passed. +- Deserialization has been tested using [the standard TOML v1.0.0 test cases and v1.1.0 test cases](https://github.com/toml-lang/toml-test/tree/master/tests) and all have passed. - The serialization interface and implementation are influenced by [MemoryPack](https://github.com/Cysharp/MemoryPack) and [VYaml](https://github.com/hadashiA/VYaml). Table of Contents @@ -43,7 +43,8 @@ Table of Contents * [Serialize API](#serialize-api) * [Other Deserialize/Serialize APIs](#other-deserializeserialize-apis) * [TomlDocument class](#tomldocument-class) -* [Pre-release version features overview](#pre-release-version-features-overview) +* [TOML v1.1.0 features overview](#toml-v110-features-overview) +* [Unofficial extension features overview](#unofficial-extension-features-overview) * [Extensions (CsToml.Extensions)](#extensions-cstomlextensions) * [Microsoft.Extensions.Configuration extensions (CsToml.Extensions.Configuration)](#microsoftextensionsconfiguration-extensions-cstomlextensionsconfiguration) * [UnitTest](#unittest) @@ -1518,21 +1519,23 @@ var document = CsTomlSerializer.Deserialize(tomlText); var dict = document.ToDictionary(); ``` -Pre-release version features overview +TOML v1.1.0 features overview --- -You can use the upcoming features planned for TOML v1.1.0, which has not been officially released yet. -Each feature can be enabled individually from CsTomlSerializerOptions.Spec. - -> [!WARNING] -> As these are features from an unreleased version, they may be subject to specification changes or deprecation in the future. +Each feature in TOML v1.1.0 can be enabled individually or by using `TomlSpec.Version110` from `CsTomlSerializerOptions.Spec`. ```csharp +// using TomlSpec.Version110 +var v110Options = CsTomlSerializerOptions.Default with +{ + Spec = TomlSpec.Version110 +}; + +// Or enable features individually var v110Options = CsTomlSerializerOptions.Default with { Spec = new () { - AllowUnicodeInBareKeys = true, AllowNewlinesInInlineTables = true, AllowTrailingCommaInInlineTables = true, AllowSecondsOmissionInTime = true, @@ -1540,20 +1543,8 @@ var v110Options = CsTomlSerializerOptions.Default with SupportsEscapeSequenceX = true, } }; -var document = CsTomlSerializer.Deserialize(tomlText, v110Options); -``` - -### AllowUnicodeInBareKeys -This feature enables the use of Unicode characters (non-ASCII) in unquoted (bare) keys. This allows you to use characters from non-English scripts directly in key names without requiring quotation marks. -For example: - -```toml -€ = 'Euro' -😂 = ""rofl"" -a‍b = ""zwj"" -ÅÅ = ""U+00C5 U+0041 U+030A"" -あイ宇絵ォ = ""Japanese"" +var document = CsTomlSerializer.Deserialize(tomlText, v110Options); ``` ### AllowNewlinesInInlineTables @@ -1606,6 +1597,25 @@ For example: name = "this is \x43\x73\x54\x6f\x6d\x6c" ``` +Unofficial extension features overview +--- + +This is an *unofficial extension* to the TOML specification and may not be supported by all TOML parsers. +Each feature can be enabled individually via `CsTomlSerializerOptions.Spec`. + +### AllowUnicodeInBareKeys + +This feature enables the use of Unicode characters (non-ASCII) in unquoted (bare) keys. This allows you to use characters from non-English scripts directly in key names without requiring quotation marks. +For example: + +```toml +€ = 'Euro' +😂 = ""rofl"" +a‍b = ""zwj"" +ÅÅ = ""U+00C5 U+0041 U+030A"" +あイ宇絵ォ = ""Japanese"" +``` + Extensions (`CsToml.Extensions`) --- @@ -1666,6 +1676,7 @@ UnitTest --- Please note that we are using the TOML files located in the ['tests/' directory of the ‘toml-test repository (MIT License)’](https://github.com/toml-lang/toml-test/tree/master/tests) for some of our unit tests. +The location is [here](https://github.com/prozolic/CsToml/tree/main/tests/CsToml.Tests/toml-test). License --- diff --git a/src/CsToml/CsTomlReader.cs b/src/CsToml/CsTomlReader.cs index b2f1ad6..3ac4c02 100644 --- a/src/CsToml/CsTomlReader.cs +++ b/src/CsToml/CsTomlReader.cs @@ -180,6 +180,10 @@ private void ReadKeyToNotAllowUnicodeInBareKeys(ref ExtendableArray()); continue; + case TomlCodes.Symbol.NUMBERSIGN: + SkipOneLine(); + SkipWhiteSpace(); + continue; default: ExceptionHelper.ThrowKeyContainsInvalid(c); break; @@ -244,6 +248,7 @@ public void ReadTableHeaderToAllowUnicodeInBareKeys(ref ExtendableArray()); continue; case TomlCodes.Symbol.RIGHTSQUAREBRACKET: + if (dot) ExceptionHelper.ThrowKeyisNotSpecifiedAfterDot(); closingRightRightSquareBracket = true; Advance(1); goto BREAK; // ] @@ -304,6 +309,7 @@ public void ReadTableHeaderToNotAllowUnicodeInBareKeys(ref ExtendableArray()); continue; case TomlCodes.Symbol.RIGHTSQUAREBRACKET: + if (dot) ExceptionHelper.ThrowKeyisNotSpecifiedAfterDot(); closingRightRightSquareBracket = true; Advance(1); goto BREAK; // ] @@ -1410,6 +1416,11 @@ private TomlInlineTable ReadInlineTable() if (spec.AllowNewlinesInInlineTables) // TOML v1.1.0 { SkipWhiteSpaceAndNewLine(); + while (TryPeek(out var commentCh) && commentCh == TomlCodes.Symbol.NUMBERSIGN) + { + SkipOneLine(); + SkipWhiteSpaceAndNewLine(); + } } else { @@ -1433,6 +1444,11 @@ private TomlInlineTable ReadInlineTable() if (spec.AllowNewlinesInInlineTables) // TOML v1.1.0 { SkipWhiteSpaceAndNewLine(); + while (TryPeek(out var commentCh) && commentCh == TomlCodes.Symbol.NUMBERSIGN) + { + SkipOneLine(); + SkipWhiteSpaceAndNewLine(); + } if (TryPeek(out var ch2) && TomlCodes.IsRightBraces(ch2)) { Advance(1); @@ -2434,11 +2450,15 @@ private TomlLocalDateTime ReadLocalDateTime(ReadOnlySpan bytes) if (bytes.Length > TomlCodes.DateTime.LocalDateTimeFormatLength) { if (!TomlCodes.IsDot(Unsafe.Add(ref refBytes, 19))) ExceptionHelper.ThrowIncorrectTomlLocalDateTimeFormat(); + + var dot = true; var index = 20; while (index < bytes.Length) { if (!TomlCodes.IsNumber(Unsafe.Add(ref refBytes, index++))) ExceptionHelper.ThrowIncorrectTomlLocalDateTimeFormat(); + dot = false; } + if (dot) ExceptionHelper.ThrowIncorrectTomlLocalDateTimeFormat(); } return TomlLocalDateTime.Parse(bytes); @@ -2520,10 +2540,13 @@ private TomlLocalTime ReadLocalTime(ReadOnlySpan bytes) { if (!TomlCodes.IsDot(Unsafe.Add(ref refBytes, 5))) ExceptionHelper.ThrowIncorrectTomlLocalTimeFormat(); var index = 6; + var dot = true; while (index < bytes.Length) { if (!TomlCodes.IsNumber(Unsafe.Add(ref refBytes, index++))) ExceptionHelper.ThrowIncorrectTomlLocalTimeFormat(); + dot = false; } + if (dot) ExceptionHelper.ThrowIncorrectTomlLocalTimeFormat(); } return TomlLocalTime.ParseToOmitSeconds(bytes); @@ -2559,12 +2582,15 @@ private TomlLocalTime ReadLocalTime(ReadOnlySpan bytes) { if (!TomlCodes.IsDot(Unsafe.Add(ref refBytes, 8))) ExceptionHelper.ThrowIncorrectTomlLocalTimeFormat(); var index = 9; + var dot = true; while (index < bytes.Length) { if (!TomlCodes.IsNumber(Unsafe.Add(ref refBytes, index++))) ExceptionHelper.ThrowIncorrectTomlLocalTimeFormat(); + dot = false; } - } + if (dot) ExceptionHelper.ThrowIncorrectTomlLocalTimeFormat(); + } return TomlLocalTime.Parse(bytes); } } @@ -2600,6 +2626,21 @@ private TomlOffsetDateTime ReadOffsetDateTime(ReadOnlySpan bytes) if (!TomlCodes.IsNumber(bytes[17])) ExceptionHelper.ThrowIncorrectTomlOffsetDateTimeFormat(); if (!TomlCodes.IsNumber(bytes[18])) ExceptionHelper.ThrowIncorrectTomlOffsetDateTimeFormat(); + // YYYY-MM-DDTHH:MM:SS.ssssZ is valid, but YYYY-MM-DDTHH:MM:SS.Z is not. + if (TomlCodes.IsDot(bytes[19])) + { + var index = 20; + var dot = true; + while (index < bytes.Length - 1) + { + if (!TomlCodes.IsNumber(bytes[index++])) + ExceptionHelper.ThrowIncorrectTomlOffsetDateTimeFormat(); + + dot = false; + } + if (dot) ExceptionHelper.ThrowIncorrectTomlOffsetDateTimeFormat(); + } + return TomlOffsetDateTime.Parse(bytes); } diff --git a/src/CsToml/CsTomlSerializerOptions.cs b/src/CsToml/CsTomlSerializerOptions.cs index ce614be..39192a9 100644 --- a/src/CsToml/CsTomlSerializerOptions.cs +++ b/src/CsToml/CsTomlSerializerOptions.cs @@ -1,5 +1,4 @@ - -using CsToml.Formatter.Resolver; +using CsToml.Formatter.Resolver; namespace CsToml; @@ -34,7 +33,7 @@ public record CsTomlSerializerOptions(ITomlValueFormatterResolver Resolver) public SerializeOptions SerializeOptions { get; init; } = new(); - public TomlSpec Spec { get; init; } = new(); + public TomlSpec Spec { get; init; } = TomlSpec.Version100; } public record SerializeOptions @@ -48,19 +47,58 @@ public record SerializeOptions public record TomlSpec { - #region "TOML v1.1.0 Preview Feature" - - public bool AllowUnicodeInBareKeys { get; init; } - + /// + /// TOML v1.0.0 Specification + /// + public static readonly TomlSpec Version100 = new() {}; + + /// + /// TOML v1.1.0 Specification + /// + public static readonly TomlSpec Version110 = new() { + AllowNewlinesInInlineTables = true, + AllowTrailingCommaInInlineTables = true, + SupportsEscapeSequenceE = true, + AllowSecondsOmissionInTime = true, + SupportsEscapeSequenceX = true, + }; + + #region "TOML v1.1.0" + + /// + /// Gets a value indicating whether newlines are permitted within TOML inline tables. + /// public bool AllowNewlinesInInlineTables { get; init; } + /// + /// Gets a value indicating whether a trailing comma is permitted in TOML inline tables. + /// public bool AllowTrailingCommaInInlineTables { get; init; } + /// + /// Gets a value indicating whether the escape sequence 'E' is supported by the current implementation. + /// public bool SupportsEscapeSequenceE { get; init; } + /// + /// Gets a value indicating whether time values are allowed to omit seconds when formatted or parsed. + /// public bool AllowSecondsOmissionInTime { get; init; } + /// + /// Gets a value indicating whether escape sequence X is supported by the current implementation. + /// public bool SupportsEscapeSequenceX { get; init; } #endregion + + #region "TOML unofficial feature" + + /// + /// Gets a value indicating whether Unicode characters are allowed in bare keys. + /// This is an unofficial extension to the TOML specification and may not be supported by all TOML parsers. + /// + public bool AllowUnicodeInBareKeys { get; init; } + + #endregion } diff --git a/src/CsToml/Error/ExceptionHelper.cs b/src/CsToml/Error/ExceptionHelper.cs index 76e9266..95a823e 100644 --- a/src/CsToml/Error/ExceptionHelper.cs +++ b/src/CsToml/Error/ExceptionHelper.cs @@ -395,6 +395,13 @@ internal static void ThrowDotIsUsedAtTheEnd() internal static void ThrowKeysAreNotJoinedByDots() { ThrowException($@"Keys are not joined by dots."); + } + + [DoesNotReturn] + [MethodImpl(MethodImplOptions.AggressiveInlining)] + internal static void ThrowKeyisNotSpecifiedAfterDot() + { + ThrowException($@"Key is not specified after dot."); } [DoesNotReturn] diff --git a/src/CsToml/TomlCodes.cs b/src/CsToml/TomlCodes.cs index 6b08312..ca80d2c 100644 --- a/src/CsToml/TomlCodes.cs +++ b/src/CsToml/TomlCodes.cs @@ -254,18 +254,10 @@ internal static bool IsLf(byte ch) internal static bool IsNewLine(byte rawByte) => IsCr(rawByte) || IsLf(rawByte); - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static bool IsKeySymbol(byte rawByte) - => IsUnderScore(rawByte) || IsDash(rawByte); - [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static bool IsUnderScore(byte rawByte) => rawByte == Symbol.UNDERSCORE; - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static bool IsDash(byte rawByte) - => rawByte == Symbol.DASH; - [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static bool IsDoubleQuoted(byte rawByte) => rawByte == Symbol.DOUBLEQUOTED; @@ -274,10 +266,6 @@ internal static bool IsDoubleQuoted(byte rawByte) internal static bool IsSingleQuoted(byte rawByte) => rawByte == Symbol.SINGLEQUOTED; - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static bool IsQuoted(byte rawByte) - => IsDoubleQuoted(rawByte) || IsSingleQuoted(rawByte); - [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static bool IsLeftSquareBrackets(byte rawByte) => rawByte == Symbol.LEFTSQUAREBRACKET; @@ -286,10 +274,6 @@ internal static bool IsLeftSquareBrackets(byte rawByte) internal static bool IsRightSquareBrackets(byte rawByte) => rawByte == Symbol.RIGHTSQUAREBRACKET; - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static bool IsLeftBraces(byte rawByte) - => rawByte == Symbol.LEFTBRACES; - [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static bool IsRightBraces(byte rawByte) => rawByte == Symbol.RIGHTBRACES; @@ -302,10 +286,6 @@ internal static bool IsTabOrWhiteSpace(byte rawByte) internal static bool IsWhiteSpace(byte rawByte) => rawByte == Symbol.SPACE; - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static bool IsEqual(byte rawByte) - => rawByte == Symbol.EQUAL; - [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static bool IsNumber(byte rawByte) { @@ -484,56 +464,6 @@ internal static bool IsAlphabet(byte rawByte) return alphabetTable[rawByte]; } - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static bool IsUpperAlphabet(byte rawByte) - { - ReadOnlySpan upperAlphabetTable = - [ - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x00 - 0x0f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x10 - 0x1f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x20 - 0x2f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x30 - 0x3f - false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, // 0x40 - 0x4f - true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, // 0x50 - 0x5f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x60 - 0x6f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x70 - 0x7f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x80 - 0x8f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x90 - 0x9f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xa0 - 0xaf - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xb0 - 0xbf - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xc0 - 0xcf - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xd0 - 0xdf - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xe0 - 0xef - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xf0 - 0xff - ]; - return upperAlphabetTable[rawByte]; - } - - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static bool IsLowerAlphabet(byte rawByte) - { - ReadOnlySpan lowerAlphabetTable = - [ - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x00 - 0x0f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x10 - 0x1f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x20 - 0x2f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x30 - 0x3f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x40 - 0x4f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x50 - 0x5f - false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, // 0x60 - 0x6f - true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, // 0x70 - 0x7f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x80 - 0x8f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0x90 - 0x9f - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xa0 - 0xaf - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xb0 - 0xbf - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xc0 - 0xcf - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xd0 - 0xdf - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xe0 - 0xef - false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, // 0xf0 - 0xff - ]; - return lowerAlphabetTable[rawByte]; - } - [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static bool IsPlusSign(byte rawByte) => rawByte == Symbol.PLUS; @@ -562,10 +492,6 @@ internal static bool IsColon(byte rawByte) internal static bool IsDot(byte rawByte) => rawByte == Symbol.DOT; - [MethodImpl(MethodImplOptions.AggressiveInlining)] - internal static bool IsExpSymbol(byte rawByte) - => rawByte == Alphabet.e || rawByte == Alphabet.E; - [MethodImpl(MethodImplOptions.AggressiveInlining)] internal static bool IsComma(byte rawByte) => rawByte == Symbol.COMMA; diff --git a/tests/CsToml.Extensions.Configuration.Tests/Options.cs b/tests/CsToml.Extensions.Configuration.Tests/Options.cs index 351306e..d93ca64 100644 --- a/tests/CsToml.Extensions.Configuration.Tests/Options.cs +++ b/tests/CsToml.Extensions.Configuration.Tests/Options.cs @@ -5,14 +5,6 @@ internal sealed class Options { public static readonly CsTomlSerializerOptions TomlSpecVersion110 = CsTomlSerializerOptions.Default with { - Spec = new TomlSpec() - { - AllowUnicodeInBareKeys = true, - AllowNewlinesInInlineTables = true, - AllowTrailingCommaInInlineTables = true, - SupportsEscapeSequenceE = true, - AllowSecondsOmissionInTime = true, - SupportsEscapeSequenceX = true, - } + Spec = TomlSpec.Version110 }; } \ No newline at end of file diff --git a/tests/CsToml.Tests/DefaultTest.cs b/tests/CsToml.Tests/DefaultTest.cs index 874fdc1..460bed0 100644 --- a/tests/CsToml.Tests/DefaultTest.cs +++ b/tests/CsToml.Tests/DefaultTest.cs @@ -1699,7 +1699,7 @@ public void DeserializeAndSerialize() }); ex.ParseExceptions!.Count.ShouldBe(8); - var document = CsTomlSerializer.Deserialize(toml, Options.TomlSpecVersion110); + var document = CsTomlSerializer.Deserialize(toml, Options.AllowUnicodeInBareKeys); using var serializeText = CsTomlSerializer.Serialize(document!); using var buffer = Utf8String.CreateWriter(out var writer); diff --git a/tests/CsToml.Tests/Options.cs b/tests/CsToml.Tests/Options.cs index 4d9dd61..e271349 100644 --- a/tests/CsToml.Tests/Options.cs +++ b/tests/CsToml.Tests/Options.cs @@ -5,14 +5,14 @@ internal sealed class Options { public static readonly CsTomlSerializerOptions TomlSpecVersion110 = CsTomlSerializerOptions.Default with { - Spec = new TomlSpec() + Spec = TomlSpec.Version110 + }; + + public static readonly CsTomlSerializerOptions AllowUnicodeInBareKeys = CsTomlSerializerOptions.Default with + { + Spec = new TomlSpec { AllowUnicodeInBareKeys = true, - AllowNewlinesInInlineTables = true, - AllowTrailingCommaInInlineTables = true, - SupportsEscapeSequenceE = true, - AllowSecondsOmissionInTime = true, - SupportsEscapeSequenceX = true, } }; } \ No newline at end of file diff --git a/tests/CsToml.Tests/toml-test/files-toml-1.0.0 b/tests/CsToml.Tests/toml-test/files-toml-1.0.0 index d9045e7..b49a7e5 100644 --- a/tests/CsToml.Tests/toml-test/files-toml-1.0.0 +++ b/tests/CsToml.Tests/toml-test/files-toml-1.0.0 @@ -1,26 +1,26 @@ -invalid/array/double-comma-1.toml -invalid/array/double-comma-2.toml +invalid/array/double-comma-01.toml +invalid/array/double-comma-02.toml invalid/array/extend-defined-aot.toml invalid/array/extending-table.toml -invalid/array/missing-separator-1.toml -invalid/array/missing-separator-2.toml -invalid/array/no-close-1.toml -invalid/array/no-close-2.toml -invalid/array/no-close-3.toml -invalid/array/no-close-4.toml -invalid/array/no-close-5.toml -invalid/array/no-close-6.toml -invalid/array/no-close-7.toml -invalid/array/no-close-8.toml -invalid/array/no-close-table-1.toml -invalid/array/no-close-table-2.toml -invalid/array/no-comma-1.toml -invalid/array/no-comma-2.toml -invalid/array/no-comma-3.toml -invalid/array/only-comma-1.toml -invalid/array/only-comma-2.toml -invalid/array/tables-1.toml -invalid/array/tables-2.toml +invalid/array/missing-separator-01.toml +invalid/array/missing-separator-02.toml +invalid/array/no-close-01.toml +invalid/array/no-close-02.toml +invalid/array/no-close-03.toml +invalid/array/no-close-04.toml +invalid/array/no-close-05.toml +invalid/array/no-close-06.toml +invalid/array/no-close-07.toml +invalid/array/no-close-08.toml +invalid/array/no-close-table-01.toml +invalid/array/no-close-table-02.toml +invalid/array/no-comma-01.toml +invalid/array/no-comma-02.toml +invalid/array/no-comma-03.toml +invalid/array/only-comma-01.toml +invalid/array/only-comma-02.toml +invalid/array/tables-01.toml +invalid/array/tables-02.toml invalid/array/text-after-array-entries.toml invalid/array/text-before-array-separator.toml invalid/array/text-in-array.toml @@ -49,12 +49,13 @@ invalid/control/comment-ff.toml invalid/control/comment-lf.toml invalid/control/comment-null.toml invalid/control/comment-us.toml -invalid/control/multi-cr.toml invalid/control/multi-del.toml invalid/control/multi-lf.toml invalid/control/multi-null.toml invalid/control/multi-us.toml -invalid/control/rawmulti-cd.toml +invalid/control/only-ff.toml +invalid/control/only-null.toml +invalid/control/only-vt.toml invalid/control/rawmulti-del.toml invalid/control/rawmulti-lf.toml invalid/control/rawmulti-null.toml @@ -70,6 +71,7 @@ invalid/control/string-del.toml invalid/control/string-lf.toml invalid/control/string-null.toml invalid/control/string-us.toml +invalid/datetime/day-zero.toml invalid/datetime/feb-29.toml invalid/datetime/feb-30.toml invalid/datetime/hour-over.toml @@ -78,82 +80,106 @@ invalid/datetime/mday-under.toml invalid/datetime/minute-over.toml invalid/datetime/month-over.toml invalid/datetime/month-under.toml +invalid/datetime/no-date-time-sep.toml invalid/datetime/no-leads.toml invalid/datetime/no-leads-month.toml invalid/datetime/no-leads-with-milli.toml invalid/datetime/no-secs.toml invalid/datetime/no-t.toml +invalid/datetime/no-year-month-sep.toml +invalid/datetime/offset-minus-minute-1digit.toml +invalid/datetime/offset-minus-no-hour-minute.toml +invalid/datetime/offset-minus-no-hour-minute-sep.toml +invalid/datetime/offset-minus-no-minute.toml invalid/datetime/offset-overflow-hour.toml invalid/datetime/offset-overflow-minute.toml +invalid/datetime/offset-plus-minute-1digit.toml +invalid/datetime/offset-plus-no-hour-minute.toml +invalid/datetime/offset-plus-no-hour-minute-sep.toml +invalid/datetime/offset-plus-no-minute.toml +invalid/datetime/only-T.toml +invalid/datetime/only-TZ.toml +invalid/datetime/only-Tdot.toml invalid/datetime/second-over.toml +invalid/datetime/second-trailing-dot.toml +invalid/datetime/second-trailing-dotz.toml invalid/datetime/time-no-leads.toml +invalid/datetime/trailing-x.toml invalid/datetime/y10k.toml invalid/encoding/bad-codepoint.toml invalid/encoding/bad-utf8-at-end.toml +invalid/encoding/bad-utf8-in-array.toml invalid/encoding/bad-utf8-in-comment.toml invalid/encoding/bad-utf8-in-multiline.toml invalid/encoding/bad-utf8-in-multiline-literal.toml invalid/encoding/bad-utf8-in-string.toml invalid/encoding/bad-utf8-in-string-literal.toml -invalid/encoding/bom-not-at-start-1.toml -invalid/encoding/bom-not-at-start-2.toml +invalid/encoding/bom-not-at-start-01.toml +invalid/encoding/bom-not-at-start-02.toml +invalid/encoding/ideographic-space.toml invalid/encoding/utf16-bom.toml invalid/encoding/utf16-comment.toml invalid/encoding/utf16-key.toml -invalid/float/double-point-1.toml -invalid/float/double-point-2.toml -invalid/float/exp-double-e-1.toml -invalid/float/exp-double-e-2.toml +invalid/float/double-dot-01.toml +invalid/float/double-dot-02.toml +invalid/float/exp-dot-01.toml +invalid/float/exp-dot-02.toml +invalid/float/exp-dot-03.toml +invalid/float/exp-double-e-01.toml +invalid/float/exp-double-e-02.toml invalid/float/exp-double-us.toml invalid/float/exp-leading-us.toml -invalid/float/exp-point-1.toml -invalid/float/exp-point-2.toml -invalid/float/exp-point-3.toml invalid/float/exp-trailing-us.toml -invalid/float/exp-trailing-us-1.toml -invalid/float/exp-trailing-us-2.toml +invalid/float/exp-trailing-us-01.toml +invalid/float/exp-trailing-us-02.toml invalid/float/inf-capital.toml -invalid/float/inf-incomplete-1.toml -invalid/float/inf-incomplete-2.toml -invalid/float/inf-incomplete-3.toml +invalid/float/inf-incomplete-01.toml +invalid/float/inf-incomplete-02.toml +invalid/float/inf-incomplete-03.toml invalid/float/inf_underscore.toml -invalid/float/leading-point.toml -invalid/float/leading-point-neg.toml -invalid/float/leading-point-plus.toml +invalid/float/leading-dot.toml +invalid/float/leading-dot-neg.toml +invalid/float/leading-dot-plus.toml invalid/float/leading-us.toml invalid/float/leading-zero.toml invalid/float/leading-zero-neg.toml invalid/float/leading-zero-plus.toml invalid/float/nan-capital.toml -invalid/float/nan-incomplete-1.toml -invalid/float/nan-incomplete-2.toml -invalid/float/nan-incomplete-3.toml +invalid/float/nan-incomplete-01.toml +invalid/float/nan-incomplete-02.toml +invalid/float/nan-incomplete-03.toml invalid/float/nan_underscore.toml -invalid/float/trailing-point.toml -invalid/float/trailing-point-min.toml -invalid/float/trailing-point-plus.toml +invalid/float/trailing-dot.toml +invalid/float/trailing-dot-01.toml +invalid/float/trailing-dot-02.toml +invalid/float/trailing-dot-min.toml +invalid/float/trailing-dot-plus.toml +invalid/float/trailing-exp.toml +invalid/float/trailing-exp-dot.toml +invalid/float/trailing-exp-minus.toml +invalid/float/trailing-exp-plus.toml invalid/float/trailing-us.toml -invalid/float/trailing-us-exp-1.toml -invalid/float/trailing-us-exp-2.toml -invalid/float/us-after-point.toml -invalid/float/us-before-point.toml +invalid/float/trailing-us-exp-01.toml +invalid/float/trailing-us-exp-02.toml +invalid/float/us-after-dot.toml +invalid/float/us-before-dot.toml invalid/inline-table/bad-key-syntax.toml invalid/inline-table/double-comma.toml -invalid/inline-table/duplicate-key-1.toml -invalid/inline-table/duplicate-key-2.toml -invalid/inline-table/duplicate-key-3.toml -invalid/inline-table/duplicate-key-4.toml -invalid/inline-table/empty-1.toml -invalid/inline-table/empty-2.toml -invalid/inline-table/empty-3.toml -invalid/inline-table/linebreak-1.toml -invalid/inline-table/linebreak-2.toml -invalid/inline-table/linebreak-3.toml -invalid/inline-table/linebreak-4.toml -invalid/inline-table/no-close-1.toml -invalid/inline-table/no-close-2.toml -invalid/inline-table/no-comma-1.toml -invalid/inline-table/no-comma-2.toml +invalid/inline-table/duplicate-key-01.toml +invalid/inline-table/duplicate-key-02.toml +invalid/inline-table/duplicate-key-03.toml +invalid/inline-table/duplicate-key-04.toml +invalid/inline-table/empty-01.toml +invalid/inline-table/empty-02.toml +invalid/inline-table/empty-03.toml +invalid/inline-table/linebreak-01.toml +invalid/inline-table/linebreak-02.toml +invalid/inline-table/linebreak-03.toml +invalid/inline-table/linebreak-04.toml +invalid/inline-table/no-close-01.toml +invalid/inline-table/no-close-02.toml +invalid/inline-table/no-comma-01.toml +invalid/inline-table/no-comma-02.toml invalid/inline-table/overwrite-01.toml invalid/inline-table/overwrite-02.toml invalid/inline-table/overwrite-03.toml @@ -175,20 +201,20 @@ invalid/integer/incomplete-bin.toml invalid/integer/incomplete-hex.toml invalid/integer/incomplete-oct.toml invalid/integer/invalid-bin.toml -invalid/integer/invalid-hex.toml -invalid/integer/invalid-hex-1.toml -invalid/integer/invalid-hex-2.toml +invalid/integer/invalid-hex-01.toml +invalid/integer/invalid-hex-02.toml +invalid/integer/invalid-hex-03.toml invalid/integer/invalid-oct.toml invalid/integer/leading-us.toml invalid/integer/leading-us-bin.toml invalid/integer/leading-us-hex.toml invalid/integer/leading-us-oct.toml -invalid/integer/leading-zero-1.toml -invalid/integer/leading-zero-2.toml -invalid/integer/leading-zero-3.toml -invalid/integer/leading-zero-sign-1.toml -invalid/integer/leading-zero-sign-2.toml -invalid/integer/leading-zero-sign-3.toml +invalid/integer/leading-zero-01.toml +invalid/integer/leading-zero-02.toml +invalid/integer/leading-zero-03.toml +invalid/integer/leading-zero-sign-01.toml +invalid/integer/leading-zero-sign-02.toml +invalid/integer/leading-zero-sign-03.toml invalid/integer/negative-bin.toml invalid/integer/negative-hex.toml invalid/integer/negative-oct.toml @@ -206,42 +232,65 @@ invalid/integer/us-after-oct.toml invalid/key/after-array.toml invalid/key/after-table.toml invalid/key/after-value.toml -invalid/key/bare-invalid-character.toml -invalid/key/dotted-redefine-table-1.toml -invalid/key/dotted-redefine-table-2.toml -invalid/key/duplicate-keys-1.toml -invalid/key/duplicate-keys-2.toml -invalid/key/duplicate-keys-3.toml -invalid/key/duplicate-keys-4.toml +invalid/key/bare-invalid-character-01.toml +invalid/key/bare-invalid-character-02.toml +invalid/key/dot.toml +invalid/key/dotdot.toml +invalid/key/dotted-redefine-table-01.toml +invalid/key/dotted-redefine-table-02.toml +invalid/key/duplicate-keys-01.toml +invalid/key/duplicate-keys-02.toml +invalid/key/duplicate-keys-03.toml +invalid/key/duplicate-keys-04.toml +invalid/key/duplicate-keys-05.toml +invalid/key/duplicate-keys-06.toml +invalid/key/duplicate-keys-07.toml +invalid/key/duplicate-keys-08.toml +invalid/key/duplicate-keys-09.toml invalid/key/empty.toml invalid/key/end-in-escape.toml invalid/key/escape.toml invalid/key/hash.toml -invalid/key/newline-1.toml -invalid/key/newline-2.toml -invalid/key/newline-3.toml -invalid/key/newline-4.toml -invalid/key/newline-5.toml -invalid/key/no-eol.toml +invalid/key/multiline-key-01.toml +invalid/key/multiline-key-02.toml +invalid/key/multiline-key-03.toml +invalid/key/multiline-key-04.toml +invalid/key/newline-01.toml +invalid/key/newline-02.toml +invalid/key/newline-03.toml +invalid/key/newline-04.toml +invalid/key/newline-05.toml +invalid/key/newline-06.toml +invalid/key/no-eol-01.toml +invalid/key/no-eol-02.toml +invalid/key/no-eol-03.toml +invalid/key/no-eol-04.toml +invalid/key/no-eol-05.toml +invalid/key/no-eol-06.toml +invalid/key/no-eol-07.toml +invalid/key/only-float.toml +invalid/key/only-int.toml +invalid/key/only-str.toml invalid/key/open-bracket.toml invalid/key/partial-quoted.toml -invalid/key/quoted-unclosed-1.toml -invalid/key/quoted-unclosed-2.toml +invalid/key/quoted-unclosed-01.toml +invalid/key/quoted-unclosed-02.toml invalid/key/single-open-bracket.toml invalid/key/space.toml invalid/key/special-character.toml invalid/key/start-bracket.toml invalid/key/start-dot.toml -invalid/key/two-equals-1.toml -invalid/key/two-equals-2.toml -invalid/key/two-equals-3.toml -invalid/key/without-value-1.toml -invalid/key/without-value-2.toml -invalid/key/without-value-3.toml -invalid/key/without-value-4.toml -invalid/key/without-value-5.toml -invalid/key/without-value-6.toml -invalid/key/without-value-7.toml +invalid/key/two-equals-01.toml +invalid/key/two-equals-02.toml +invalid/key/two-equals-03.toml +invalid/key/without-value-01.toml +invalid/key/without-value-02.toml +invalid/key/without-value-03.toml +invalid/key/without-value-04.toml +invalid/key/without-value-05.toml +invalid/key/without-value-06.toml +invalid/key/without-value-07.toml +invalid/local-date/day-1digit.toml invalid/local-date/feb-29.toml invalid/local-date/feb-30.toml invalid/local-date/mday-over.toml @@ -252,6 +301,7 @@ invalid/local-date/no-leads.toml invalid/local-date/no-leads-with-milli.toml invalid/local-date/trailing-t.toml invalid/local-date/y10k.toml +invalid/local-date/year-3digits.toml invalid/local-datetime/feb-29.toml invalid/local-datetime/feb-30.toml invalid/local-datetime/hour-over.toml @@ -271,102 +321,154 @@ invalid/local-time/hour-over.toml invalid/local-time/minute-over.toml invalid/local-time/no-secs.toml invalid/local-time/second-over.toml -invalid/local-time/time-no-leads.toml -invalid/local-time/time-no-leads-2.toml -invalid/spec/inline-table-2-0.toml -invalid/spec/inline-table-3-0.toml -invalid/spec/key-value-pair-1.toml -invalid/spec/keys-2.toml -invalid/spec/string-4-0.toml -invalid/spec/string-7-0.toml -invalid/spec/table-9-0.toml -invalid/spec/table-9-1.toml +invalid/local-time/time-no-leads-01.toml +invalid/local-time/time-no-leads-02.toml +invalid/local-time/trailing-dot.toml +invalid/local-time/trailing-dotdot.toml +invalid/spec-1.0.0/inline-table-2-0.toml +invalid/spec-1.0.0/inline-table-3-0.toml +invalid/spec-1.0.0/key-value-pair-1.toml +invalid/spec-1.0.0/keys-2.toml +invalid/spec-1.0.0/string-4-0.toml +invalid/spec-1.0.0/string-7-0.toml +invalid/spec-1.0.0/table-9-0.toml +invalid/spec-1.0.0/table-9-1.toml invalid/string/bad-byte-escape.toml invalid/string/bad-concat.toml -invalid/string/bad-escape-1.toml -invalid/string/bad-escape-2.toml -invalid/string/bad-escape-3.toml -invalid/string/bad-hex-esc-1.toml -invalid/string/bad-hex-esc-2.toml -invalid/string/bad-hex-esc-3.toml -invalid/string/bad-hex-esc-4.toml -invalid/string/bad-hex-esc-5.toml +invalid/string/bad-escape-01.toml +invalid/string/bad-escape-02.toml +invalid/string/bad-escape-03.toml +invalid/string/bad-escape-04.toml +invalid/string/bad-escape-05.toml +invalid/string/bad-hex-esc-01.toml +invalid/string/bad-hex-esc-02.toml +invalid/string/bad-hex-esc-03.toml +invalid/string/bad-hex-esc-04.toml +invalid/string/bad-hex-esc-05.toml invalid/string/bad-multiline.toml invalid/string/bad-slash-escape.toml -invalid/string/bad-uni-esc-1.toml -invalid/string/bad-uni-esc-2.toml -invalid/string/bad-uni-esc-3.toml -invalid/string/bad-uni-esc-4.toml -invalid/string/bad-uni-esc-5.toml -invalid/string/bad-uni-esc-6.toml -invalid/string/bad-uni-esc-7.toml +invalid/string/bad-uni-esc-01.toml +invalid/string/bad-uni-esc-02.toml +invalid/string/bad-uni-esc-03.toml +invalid/string/bad-uni-esc-04.toml +invalid/string/bad-uni-esc-05.toml +invalid/string/bad-uni-esc-06.toml +invalid/string/bad-uni-esc-07.toml +invalid/string/bad-uni-esc-ml-01.toml +invalid/string/bad-uni-esc-ml-02.toml +invalid/string/bad-uni-esc-ml-03.toml +invalid/string/bad-uni-esc-ml-04.toml +invalid/string/bad-uni-esc-ml-05.toml +invalid/string/bad-uni-esc-ml-06.toml +invalid/string/bad-uni-esc-ml-07.toml invalid/string/basic-byte-escapes.toml -invalid/string/basic-multiline-out-of-range-unicode-escape-1.toml -invalid/string/basic-multiline-out-of-range-unicode-escape-2.toml +invalid/string/basic-multiline-out-of-range-unicode-escape-01.toml +invalid/string/basic-multiline-out-of-range-unicode-escape-02.toml invalid/string/basic-multiline-quotes.toml invalid/string/basic-multiline-unknown-escape.toml -invalid/string/basic-out-of-range-unicode-escape-1.toml -invalid/string/basic-out-of-range-unicode-escape-2.toml +invalid/string/basic-out-of-range-unicode-escape-01.toml +invalid/string/basic-out-of-range-unicode-escape-02.toml invalid/string/basic-unknown-escape.toml -invalid/string/literal-multiline-quotes-1.toml -invalid/string/literal-multiline-quotes-2.toml +invalid/string/literal-multiline-quotes-01.toml +invalid/string/literal-multiline-quotes-02.toml invalid/string/missing-quotes.toml -invalid/string/multiline-bad-escape-1.toml -invalid/string/multiline-bad-escape-2.toml -invalid/string/multiline-bad-escape-3.toml -invalid/string/multiline-bad-escape-4.toml -invalid/string/multiline-escape-space-1.toml -invalid/string/multiline-escape-space-2.toml -invalid/string/multiline-lit-no-close-1.toml -invalid/string/multiline-lit-no-close-2.toml -invalid/string/multiline-lit-no-close-3.toml -invalid/string/multiline-lit-no-close-4.toml -invalid/string/multiline-no-close-1.toml -invalid/string/multiline-no-close-2.toml -invalid/string/multiline-no-close-3.toml -invalid/string/multiline-no-close-4.toml -invalid/string/multiline-no-close-5.toml -invalid/string/multiline-quotes-1.toml -invalid/string/no-close-1.toml -invalid/string/no-close-2.toml -invalid/string/no-close-3.toml -invalid/string/no-close-4.toml +invalid/string/missing-quotes-array.toml +invalid/string/missing-quotes-inline-table.toml +invalid/string/multiline-bad-escape-01.toml +invalid/string/multiline-bad-escape-02.toml +invalid/string/multiline-bad-escape-03.toml +invalid/string/multiline-bad-escape-04.toml +invalid/string/multiline-escape-space-01.toml +invalid/string/multiline-escape-space-02.toml +invalid/string/multiline-lit-no-close-01.toml +invalid/string/multiline-lit-no-close-02.toml +invalid/string/multiline-lit-no-close-03.toml +invalid/string/multiline-lit-no-close-04.toml +invalid/string/multiline-no-close-01.toml +invalid/string/multiline-no-close-02.toml +invalid/string/multiline-no-close-03.toml +invalid/string/multiline-no-close-04.toml +invalid/string/multiline-no-close-05.toml +invalid/string/multiline-quotes-01.toml +invalid/string/no-close-01.toml +invalid/string/no-close-02.toml +invalid/string/no-close-03.toml +invalid/string/no-close-04.toml +invalid/string/no-close-05.toml +invalid/string/no-close-06.toml +invalid/string/no-close-07.toml +invalid/string/no-close-08.toml +invalid/string/no-close-09.toml +invalid/string/no-close-10.toml +invalid/string/no-open-01.toml +invalid/string/no-open-02.toml +invalid/string/no-open-03.toml +invalid/string/no-open-04.toml +invalid/string/no-open-05.toml +invalid/string/no-open-06.toml +invalid/string/no-open-07.toml +invalid/string/no-open-08.toml invalid/string/text-after-string.toml invalid/string/wrong-close.toml -invalid/table/append-to-array-with-dotted-keys.toml -invalid/table/append-with-dotted-keys-1.toml -invalid/table/append-with-dotted-keys-2.toml +invalid/table/append-with-dotted-keys-01.toml +invalid/table/append-with-dotted-keys-02.toml +invalid/table/append-with-dotted-keys-03.toml +invalid/table/append-with-dotted-keys-04.toml +invalid/table/append-with-dotted-keys-05.toml +invalid/table/append-with-dotted-keys-06.toml +invalid/table/append-with-dotted-keys-07.toml invalid/table/array-empty.toml invalid/table/array-implicit.toml -invalid/table/array-no-close-1.toml -invalid/table/array-no-close-2.toml -invalid/table/duplicate.toml -invalid/table/duplicate-key-dotted-array.toml -invalid/table/duplicate-key-dotted-table.toml -invalid/table/duplicate-key-dotted-table2.toml -invalid/table/duplicate-key-table.toml -invalid/table/duplicate-table-array.toml -invalid/table/duplicate-table-array2.toml +invalid/table/array-no-close-01.toml +invalid/table/array-no-close-02.toml +invalid/table/array-no-close-03.toml +invalid/table/array-no-close-04.toml +invalid/table/bare-invalid-character-01.toml +invalid/table/bare-invalid-character-02.toml +invalid/table/dot.toml +invalid/table/dotdot.toml +invalid/table/duplicate-key-01.toml +invalid/table/duplicate-key-02.toml +invalid/table/duplicate-key-03.toml +invalid/table/duplicate-key-04.toml +invalid/table/duplicate-key-05.toml +invalid/table/duplicate-key-06.toml +invalid/table/duplicate-key-07.toml +invalid/table/duplicate-key-08.toml +invalid/table/duplicate-key-09.toml +invalid/table/duplicate-key-10.toml invalid/table/empty.toml invalid/table/empty-implicit-table.toml invalid/table/equals-sign.toml invalid/table/llbrace.toml +invalid/table/multiline-key-01.toml +invalid/table/multiline-key-02.toml invalid/table/nested-brackets-close.toml invalid/table/nested-brackets-open.toml -invalid/table/no-close-1.toml -invalid/table/no-close-2.toml -invalid/table/no-close-3.toml -invalid/table/no-close-4.toml -invalid/table/no-close-5.toml +invalid/table/newline-01.toml +invalid/table/newline-02.toml +invalid/table/newline-03.toml +invalid/table/newline-04.toml +invalid/table/newline-05.toml +invalid/table/no-close-01.toml +invalid/table/no-close-02.toml +invalid/table/no-close-03.toml +invalid/table/no-close-04.toml +invalid/table/no-close-05.toml +invalid/table/no-close-06.toml +invalid/table/no-close-07.toml +invalid/table/no-close-08.toml +invalid/table/no-close-09.toml invalid/table/overwrite-array-in-parent.toml invalid/table/overwrite-bool-with-array.toml invalid/table/overwrite-with-deep-table.toml -invalid/table/redefine-1.toml -invalid/table/redefine-2.toml -invalid/table/redefine-3.toml +invalid/table/redefine-01.toml +invalid/table/redefine-02.toml +invalid/table/redefine-03.toml invalid/table/rrbrace.toml invalid/table/super-twice.toml invalid/table/text-after-table.toml +invalid/table/trailing-dot.toml invalid/table/whitespace.toml invalid/table/with-pound.toml valid/array/array.json @@ -397,14 +499,14 @@ valid/array/nospaces.json valid/array/nospaces.toml valid/array/open-parent-table.json valid/array/open-parent-table.toml -valid/array/string-quote-comma.json -valid/array/string-quote-comma.toml -valid/array/string-quote-comma-2.json -valid/array/string-quote-comma-2.toml -valid/array/string-with-comma.json -valid/array/string-with-comma.toml -valid/array/string-with-comma-2.json -valid/array/string-with-comma-2.toml +valid/array/string-quote-comma-01.json +valid/array/string-quote-comma-01.toml +valid/array/string-quote-comma-02.json +valid/array/string-quote-comma-02.toml +valid/array/string-with-comma-01.json +valid/array/string-with-comma-01.toml +valid/array/string-with-comma-02.json +valid/array/string-with-comma-02.toml valid/array/strings.json valid/array/strings.toml valid/array/table-array-string-backslash.json @@ -431,6 +533,8 @@ valid/datetime/datetime.json valid/datetime/datetime.toml valid/datetime/edge.json valid/datetime/edge.toml +valid/datetime/invalid-date-in-string.json +valid/datetime/invalid-date-in-string.toml valid/datetime/leap-year.json valid/datetime/leap-year.toml valid/datetime/local.json @@ -443,8 +547,16 @@ valid/datetime/milliseconds.json valid/datetime/milliseconds.toml valid/datetime/timezone.json valid/datetime/timezone.toml -valid/empty-file.json -valid/empty-file.toml +valid/empty-crlf.json +valid/empty-crlf.toml +valid/empty-lf.json +valid/empty-lf.toml +valid/empty-nothing.json +valid/empty-nothing.toml +valid/empty-space.json +valid/empty-space.toml +valid/empty-tab.json +valid/empty-tab.toml valid/example.json valid/example.toml valid/float/exponent.json @@ -467,10 +579,12 @@ valid/implicit-and-explicit-before.json valid/implicit-and-explicit-before.toml valid/implicit-groups.json valid/implicit-groups.toml -valid/inline-table/array.json -valid/inline-table/array.toml -valid/inline-table/array-values.json -valid/inline-table/array-values.toml +valid/inline-table/array-01.json +valid/inline-table/array-01.toml +valid/inline-table/array-02.json +valid/inline-table/array-02.toml +valid/inline-table/array-03.json +valid/inline-table/array-03.toml valid/inline-table/bool.json valid/inline-table/bool.toml valid/inline-table/empty.json @@ -479,20 +593,20 @@ valid/inline-table/end-in-bool.json valid/inline-table/end-in-bool.toml valid/inline-table/inline-table.json valid/inline-table/inline-table.toml -valid/inline-table/key-dotted-1.json -valid/inline-table/key-dotted-1.toml -valid/inline-table/key-dotted-2.json -valid/inline-table/key-dotted-2.toml -valid/inline-table/key-dotted-3.json -valid/inline-table/key-dotted-3.toml -valid/inline-table/key-dotted-4.json -valid/inline-table/key-dotted-4.toml -valid/inline-table/key-dotted-5.json -valid/inline-table/key-dotted-5.toml -valid/inline-table/key-dotted-6.json -valid/inline-table/key-dotted-6.toml -valid/inline-table/key-dotted-7.json -valid/inline-table/key-dotted-7.toml +valid/inline-table/key-dotted-01.json +valid/inline-table/key-dotted-01.toml +valid/inline-table/key-dotted-02.json +valid/inline-table/key-dotted-02.toml +valid/inline-table/key-dotted-03.json +valid/inline-table/key-dotted-03.toml +valid/inline-table/key-dotted-04.json +valid/inline-table/key-dotted-04.toml +valid/inline-table/key-dotted-05.json +valid/inline-table/key-dotted-05.toml +valid/inline-table/key-dotted-06.json +valid/inline-table/key-dotted-06.toml +valid/inline-table/key-dotted-07.json +valid/inline-table/key-dotted-07.toml valid/inline-table/multiline.json valid/inline-table/multiline.toml valid/inline-table/nest.json @@ -515,30 +629,44 @@ valid/key/alphanum.json valid/key/alphanum.toml valid/key/case-sensitive.json valid/key/case-sensitive.toml -valid/key/dotted-1.json -valid/key/dotted-1.toml -valid/key/dotted-2.json -valid/key/dotted-2.toml -valid/key/dotted-3.json -valid/key/dotted-3.toml -valid/key/dotted-4.json -valid/key/dotted-4.toml +valid/key/dotted-01.json +valid/key/dotted-01.toml +valid/key/dotted-02.json +valid/key/dotted-02.toml +valid/key/dotted-03.json +valid/key/dotted-03.toml +valid/key/dotted-04.json +valid/key/dotted-04.toml valid/key/dotted-empty.json valid/key/dotted-empty.toml -valid/key/empty-1.json -valid/key/empty-1.toml -valid/key/empty-2.json -valid/key/empty-2.toml -valid/key/empty-3.json -valid/key/empty-3.toml +valid/key/empty-01.json +valid/key/empty-01.toml +valid/key/empty-02.json +valid/key/empty-02.toml +valid/key/empty-03.json +valid/key/empty-03.toml valid/key/equals-nospace.json valid/key/equals-nospace.toml valid/key/escapes.json valid/key/escapes.toml -valid/key/numeric.json -valid/key/numeric.toml -valid/key/numeric-dotted.json -valid/key/numeric-dotted.toml +valid/key/like-date.json +valid/key/like-date.toml +valid/key/numeric-01.json +valid/key/numeric-01.toml +valid/key/numeric-02.json +valid/key/numeric-02.toml +valid/key/numeric-03.json +valid/key/numeric-03.toml +valid/key/numeric-04.json +valid/key/numeric-04.toml +valid/key/numeric-05.json +valid/key/numeric-05.toml +valid/key/numeric-06.json +valid/key/numeric-06.toml +valid/key/numeric-07.json +valid/key/numeric-07.toml +valid/key/numeric-08.json +valid/key/numeric-08.toml valid/key/quoted-dots.json valid/key/quoted-dots.toml valid/key/quoted-unicode.json @@ -553,112 +681,118 @@ valid/key/start.json valid/key/start.toml valid/key/zero.json valid/key/zero.toml +valid/multibyte.json +valid/multibyte.toml valid/newline-crlf.json valid/newline-crlf.toml valid/newline-lf.json valid/newline-lf.toml +valid/spec-1.0.0/array-0.json +valid/spec-1.0.0/array-0.toml +valid/spec-1.0.0/array-1.json +valid/spec-1.0.0/array-1.toml +valid/spec-1.0.0/array-of-tables-0.json +valid/spec-1.0.0/array-of-tables-0.toml +valid/spec-1.0.0/array-of-tables-1.json +valid/spec-1.0.0/array-of-tables-1.toml +valid/spec-1.0.0/array-of-tables-2.json +valid/spec-1.0.0/array-of-tables-2.toml +valid/spec-1.0.0/boolean-0.json +valid/spec-1.0.0/boolean-0.toml +valid/spec-1.0.0/comment-0.json +valid/spec-1.0.0/comment-0.toml +valid/spec-1.0.0/float-0.json +valid/spec-1.0.0/float-0.toml +valid/spec-1.0.0/float-1.json +valid/spec-1.0.0/float-1.toml +valid/spec-1.0.0/float-2.json +valid/spec-1.0.0/float-2.toml +valid/spec-1.0.0/inline-table-0.json +valid/spec-1.0.0/inline-table-0.toml +valid/spec-1.0.0/inline-table-1.json +valid/spec-1.0.0/inline-table-1.toml +valid/spec-1.0.0/inline-table-2.json +valid/spec-1.0.0/inline-table-2.toml +valid/spec-1.0.0/inline-table-3.json +valid/spec-1.0.0/inline-table-3.toml +valid/spec-1.0.0/integer-0.json +valid/spec-1.0.0/integer-0.toml +valid/spec-1.0.0/integer-1.json +valid/spec-1.0.0/integer-1.toml +valid/spec-1.0.0/integer-2.json +valid/spec-1.0.0/integer-2.toml +valid/spec-1.0.0/key-value-pair-0.json +valid/spec-1.0.0/key-value-pair-0.toml +valid/spec-1.0.0/keys-0.json +valid/spec-1.0.0/keys-0.toml +valid/spec-1.0.0/keys-1.json +valid/spec-1.0.0/keys-1.toml +valid/spec-1.0.0/keys-3.json +valid/spec-1.0.0/keys-3.toml +valid/spec-1.0.0/keys-4.json +valid/spec-1.0.0/keys-4.toml +valid/spec-1.0.0/keys-5.json +valid/spec-1.0.0/keys-5.toml +valid/spec-1.0.0/keys-6.json +valid/spec-1.0.0/keys-6.toml +valid/spec-1.0.0/keys-7.json +valid/spec-1.0.0/keys-7.toml +valid/spec-1.0.0/local-date-0.json +valid/spec-1.0.0/local-date-0.toml +valid/spec-1.0.0/local-date-time-0.json +valid/spec-1.0.0/local-date-time-0.toml +valid/spec-1.0.0/local-time-0.json +valid/spec-1.0.0/local-time-0.toml +valid/spec-1.0.0/offset-date-time-0.json +valid/spec-1.0.0/offset-date-time-0.toml +valid/spec-1.0.0/offset-date-time-1.json +valid/spec-1.0.0/offset-date-time-1.toml +valid/spec-1.0.0/string-0.json +valid/spec-1.0.0/string-0.toml +valid/spec-1.0.0/string-1.json +valid/spec-1.0.0/string-1.toml +valid/spec-1.0.0/string-2.json +valid/spec-1.0.0/string-2.toml +valid/spec-1.0.0/string-3.json +valid/spec-1.0.0/string-3.toml +valid/spec-1.0.0/string-4.json +valid/spec-1.0.0/string-4.toml +valid/spec-1.0.0/string-5.json +valid/spec-1.0.0/string-5.toml +valid/spec-1.0.0/string-6.json +valid/spec-1.0.0/string-6.toml +valid/spec-1.0.0/string-7.json +valid/spec-1.0.0/string-7.toml +valid/spec-1.0.0/table-0.json +valid/spec-1.0.0/table-0.toml +valid/spec-1.0.0/table-1.json +valid/spec-1.0.0/table-1.toml +valid/spec-1.0.0/table-2.json +valid/spec-1.0.0/table-2.toml +valid/spec-1.0.0/table-3.json +valid/spec-1.0.0/table-3.toml +valid/spec-1.0.0/table-4.json +valid/spec-1.0.0/table-4.toml +valid/spec-1.0.0/table-5.json +valid/spec-1.0.0/table-5.toml +valid/spec-1.0.0/table-6.json +valid/spec-1.0.0/table-6.toml +valid/spec-1.0.0/table-7.json +valid/spec-1.0.0/table-7.toml +valid/spec-1.0.0/table-8.json +valid/spec-1.0.0/table-8.toml +valid/spec-1.0.0/table-9.json +valid/spec-1.0.0/table-9.toml valid/spec-example-1.json valid/spec-example-1.toml valid/spec-example-1-compact.json valid/spec-example-1-compact.toml -valid/spec/array-0.json -valid/spec/array-0.toml -valid/spec/array-1.json -valid/spec/array-1.toml -valid/spec/array-of-tables-0.json -valid/spec/array-of-tables-0.toml -valid/spec/array-of-tables-1.json -valid/spec/array-of-tables-1.toml -valid/spec/array-of-tables-2.json -valid/spec/array-of-tables-2.toml -valid/spec/boolean-0.json -valid/spec/boolean-0.toml -valid/spec/comment-0.json -valid/spec/comment-0.toml -valid/spec/float-0.json -valid/spec/float-0.toml -valid/spec/float-1.json -valid/spec/float-1.toml -valid/spec/float-2.json -valid/spec/float-2.toml -valid/spec/inline-table-0.json -valid/spec/inline-table-0.toml -valid/spec/inline-table-1.json -valid/spec/inline-table-1.toml -valid/spec/inline-table-2.json -valid/spec/inline-table-2.toml -valid/spec/inline-table-3.json -valid/spec/inline-table-3.toml -valid/spec/integer-0.json -valid/spec/integer-0.toml -valid/spec/integer-1.json -valid/spec/integer-1.toml -valid/spec/integer-2.json -valid/spec/integer-2.toml -valid/spec/key-value-pair-0.json -valid/spec/key-value-pair-0.toml -valid/spec/keys-0.json -valid/spec/keys-0.toml -valid/spec/keys-1.json -valid/spec/keys-1.toml -valid/spec/keys-3.json -valid/spec/keys-3.toml -valid/spec/keys-4.json -valid/spec/keys-4.toml -valid/spec/keys-5.json -valid/spec/keys-5.toml -valid/spec/keys-6.json -valid/spec/keys-6.toml -valid/spec/keys-7.json -valid/spec/keys-7.toml -valid/spec/local-date-0.json -valid/spec/local-date-0.toml -valid/spec/local-date-time-0.json -valid/spec/local-date-time-0.toml -valid/spec/local-time-0.json -valid/spec/local-time-0.toml -valid/spec/offset-date-time-0.json -valid/spec/offset-date-time-0.toml -valid/spec/offset-date-time-1.json -valid/spec/offset-date-time-1.toml -valid/spec/string-0.json -valid/spec/string-0.toml -valid/spec/string-1.json -valid/spec/string-1.toml -valid/spec/string-2.json -valid/spec/string-2.toml -valid/spec/string-3.json -valid/spec/string-3.toml -valid/spec/string-4.json -valid/spec/string-4.toml -valid/spec/string-5.json -valid/spec/string-5.toml -valid/spec/string-6.json -valid/spec/string-6.toml -valid/spec/string-7.json -valid/spec/string-7.toml -valid/spec/table-0.json -valid/spec/table-0.toml -valid/spec/table-1.json -valid/spec/table-1.toml -valid/spec/table-2.json -valid/spec/table-2.toml -valid/spec/table-3.json -valid/spec/table-3.toml -valid/spec/table-4.json -valid/spec/table-4.toml -valid/spec/table-5.json -valid/spec/table-5.toml -valid/spec/table-6.json -valid/spec/table-6.toml -valid/spec/table-7.json -valid/spec/table-7.toml -valid/spec/table-8.json -valid/spec/table-8.toml -valid/spec/table-9.json -valid/spec/table-9.toml -valid/string/double-quote-escape.json -valid/string/double-quote-escape.toml +valid/string/basic-escape-01.json +valid/string/basic-escape-01.toml +valid/string/basic-escape-02.json +valid/string/basic-escape-02.toml +valid/string/basic-escape-03.json +valid/string/basic-escape-03.toml valid/string/empty.json valid/string/empty.toml valid/string/ends-in-whitespace-escape.json @@ -669,6 +803,10 @@ valid/string/escaped-escape.json valid/string/escaped-escape.toml valid/string/escapes.json valid/string/escapes.toml +valid/string/multibyte.json +valid/string/multibyte.toml +valid/string/multibyte-escape.json +valid/string/multibyte-escape.toml valid/string/multiline.json valid/string/multiline.toml valid/string/multiline-empty.json @@ -683,6 +821,8 @@ valid/string/quoted-unicode.json valid/string/quoted-unicode.toml valid/string/raw.json valid/string/raw.toml +valid/string/raw-empty.json +valid/string/raw-empty.toml valid/string/raw-multiline.json valid/string/raw-multiline.toml valid/string/simple.json @@ -691,10 +831,12 @@ valid/string/start-mb.json valid/string/start-mb.toml valid/string/unicode-escape.json valid/string/unicode-escape.toml -valid/string/unicode-literal.json -valid/string/unicode-literal.toml valid/string/with-pound.json valid/string/with-pound.toml +valid/table/array-empty.json +valid/table/array-empty.toml +valid/table/array-empty-name.json +valid/table/array-empty-name.toml valid/table/array-implicit.json valid/table/array-implicit.toml valid/table/array-implicit-and-explicit-after.json diff --git a/tests/CsToml.Tests/toml-test/files-toml-1.1.0 b/tests/CsToml.Tests/toml-test/files-toml-1.1.0 index 2f87182..8b1b2d4 100644 --- a/tests/CsToml.Tests/toml-test/files-toml-1.1.0 +++ b/tests/CsToml.Tests/toml-test/files-toml-1.1.0 @@ -1,26 +1,26 @@ -invalid/array/double-comma-1.toml -invalid/array/double-comma-2.toml +invalid/array/double-comma-01.toml +invalid/array/double-comma-02.toml invalid/array/extend-defined-aot.toml invalid/array/extending-table.toml -invalid/array/missing-separator-1.toml -invalid/array/missing-separator-2.toml -invalid/array/no-close-1.toml -invalid/array/no-close-2.toml -invalid/array/no-close-3.toml -invalid/array/no-close-4.toml -invalid/array/no-close-5.toml -invalid/array/no-close-6.toml -invalid/array/no-close-7.toml -invalid/array/no-close-8.toml -invalid/array/no-close-table-1.toml -invalid/array/no-close-table-2.toml -invalid/array/no-comma-1.toml -invalid/array/no-comma-2.toml -invalid/array/no-comma-3.toml -invalid/array/only-comma-1.toml -invalid/array/only-comma-2.toml -invalid/array/tables-1.toml -invalid/array/tables-2.toml +invalid/array/missing-separator-01.toml +invalid/array/missing-separator-02.toml +invalid/array/no-close-01.toml +invalid/array/no-close-02.toml +invalid/array/no-close-03.toml +invalid/array/no-close-04.toml +invalid/array/no-close-05.toml +invalid/array/no-close-06.toml +invalid/array/no-close-07.toml +invalid/array/no-close-08.toml +invalid/array/no-close-table-01.toml +invalid/array/no-close-table-02.toml +invalid/array/no-comma-01.toml +invalid/array/no-comma-02.toml +invalid/array/no-comma-03.toml +invalid/array/only-comma-01.toml +invalid/array/only-comma-02.toml +invalid/array/tables-01.toml +invalid/array/tables-02.toml invalid/array/text-after-array-entries.toml invalid/array/text-before-array-separator.toml invalid/array/text-in-array.toml @@ -54,7 +54,10 @@ invalid/control/multi-del.toml invalid/control/multi-lf.toml invalid/control/multi-null.toml invalid/control/multi-us.toml -invalid/control/rawmulti-cd.toml +invalid/control/only-ff.toml +invalid/control/only-null.toml +invalid/control/only-vt.toml +invalid/control/rawmulti-cr.toml invalid/control/rawmulti-del.toml invalid/control/rawmulti-lf.toml invalid/control/rawmulti-null.toml @@ -70,6 +73,7 @@ invalid/control/string-del.toml invalid/control/string-lf.toml invalid/control/string-null.toml invalid/control/string-us.toml +invalid/datetime/day-zero.toml invalid/datetime/feb-29.toml invalid/datetime/feb-30.toml invalid/datetime/hour-over.toml @@ -78,77 +82,101 @@ invalid/datetime/mday-under.toml invalid/datetime/minute-over.toml invalid/datetime/month-over.toml invalid/datetime/month-under.toml +invalid/datetime/no-date-time-sep.toml invalid/datetime/no-leads.toml invalid/datetime/no-leads-month.toml invalid/datetime/no-leads-with-milli.toml invalid/datetime/no-t.toml +invalid/datetime/no-year-month-sep.toml +invalid/datetime/offset-minus-minute-1digit.toml +invalid/datetime/offset-minus-no-hour-minute.toml +invalid/datetime/offset-minus-no-hour-minute-sep.toml +invalid/datetime/offset-minus-no-minute.toml invalid/datetime/offset-overflow-hour.toml invalid/datetime/offset-overflow-minute.toml +invalid/datetime/offset-plus-minute-1digit.toml +invalid/datetime/offset-plus-no-hour-minute.toml +invalid/datetime/offset-plus-no-hour-minute-sep.toml +invalid/datetime/offset-plus-no-minute.toml +invalid/datetime/only-T.toml +invalid/datetime/only-TZ.toml +invalid/datetime/only-Tdot.toml invalid/datetime/second-over.toml +invalid/datetime/second-trailing-dot.toml +invalid/datetime/second-trailing-dotz.toml invalid/datetime/time-no-leads.toml +invalid/datetime/trailing-x.toml invalid/datetime/y10k.toml invalid/encoding/bad-codepoint.toml invalid/encoding/bad-utf8-at-end.toml +invalid/encoding/bad-utf8-in-array.toml invalid/encoding/bad-utf8-in-comment.toml invalid/encoding/bad-utf8-in-multiline.toml invalid/encoding/bad-utf8-in-multiline-literal.toml invalid/encoding/bad-utf8-in-string.toml invalid/encoding/bad-utf8-in-string-literal.toml -invalid/encoding/bom-not-at-start-1.toml -invalid/encoding/bom-not-at-start-2.toml +invalid/encoding/bom-not-at-start-01.toml +invalid/encoding/bom-not-at-start-02.toml +invalid/encoding/ideographic-space.toml invalid/encoding/utf16-bom.toml invalid/encoding/utf16-comment.toml invalid/encoding/utf16-key.toml -invalid/float/double-point-1.toml -invalid/float/double-point-2.toml -invalid/float/exp-double-e-1.toml -invalid/float/exp-double-e-2.toml +invalid/float/double-dot-01.toml +invalid/float/double-dot-02.toml +invalid/float/exp-dot-01.toml +invalid/float/exp-dot-02.toml +invalid/float/exp-dot-03.toml +invalid/float/exp-double-e-01.toml +invalid/float/exp-double-e-02.toml invalid/float/exp-double-us.toml invalid/float/exp-leading-us.toml -invalid/float/exp-point-1.toml -invalid/float/exp-point-2.toml -invalid/float/exp-point-3.toml invalid/float/exp-trailing-us.toml -invalid/float/exp-trailing-us-1.toml -invalid/float/exp-trailing-us-2.toml +invalid/float/exp-trailing-us-01.toml +invalid/float/exp-trailing-us-02.toml invalid/float/inf-capital.toml -invalid/float/inf-incomplete-1.toml -invalid/float/inf-incomplete-2.toml -invalid/float/inf-incomplete-3.toml +invalid/float/inf-incomplete-01.toml +invalid/float/inf-incomplete-02.toml +invalid/float/inf-incomplete-03.toml invalid/float/inf_underscore.toml -invalid/float/leading-point.toml -invalid/float/leading-point-neg.toml -invalid/float/leading-point-plus.toml +invalid/float/leading-dot.toml +invalid/float/leading-dot-neg.toml +invalid/float/leading-dot-plus.toml invalid/float/leading-us.toml invalid/float/leading-zero.toml invalid/float/leading-zero-neg.toml invalid/float/leading-zero-plus.toml invalid/float/nan-capital.toml -invalid/float/nan-incomplete-1.toml -invalid/float/nan-incomplete-2.toml -invalid/float/nan-incomplete-3.toml +invalid/float/nan-incomplete-01.toml +invalid/float/nan-incomplete-02.toml +invalid/float/nan-incomplete-03.toml invalid/float/nan_underscore.toml -invalid/float/trailing-point.toml -invalid/float/trailing-point-min.toml -invalid/float/trailing-point-plus.toml +invalid/float/trailing-dot.toml +invalid/float/trailing-dot-01.toml +invalid/float/trailing-dot-02.toml +invalid/float/trailing-dot-min.toml +invalid/float/trailing-dot-plus.toml +invalid/float/trailing-exp.toml +invalid/float/trailing-exp-dot.toml +invalid/float/trailing-exp-minus.toml +invalid/float/trailing-exp-plus.toml invalid/float/trailing-us.toml -invalid/float/trailing-us-exp-1.toml -invalid/float/trailing-us-exp-2.toml -invalid/float/us-after-point.toml -invalid/float/us-before-point.toml +invalid/float/trailing-us-exp-01.toml +invalid/float/trailing-us-exp-02.toml +invalid/float/us-after-dot.toml +invalid/float/us-before-dot.toml invalid/inline-table/bad-key-syntax.toml invalid/inline-table/double-comma.toml -invalid/inline-table/duplicate-key-1.toml -invalid/inline-table/duplicate-key-2.toml -invalid/inline-table/duplicate-key-3.toml -invalid/inline-table/duplicate-key-4.toml -invalid/inline-table/empty-1.toml -invalid/inline-table/empty-2.toml -invalid/inline-table/empty-3.toml -invalid/inline-table/no-close-1.toml -invalid/inline-table/no-close-2.toml -invalid/inline-table/no-comma-1.toml -invalid/inline-table/no-comma-2.toml +invalid/inline-table/duplicate-key-01.toml +invalid/inline-table/duplicate-key-02.toml +invalid/inline-table/duplicate-key-03.toml +invalid/inline-table/duplicate-key-04.toml +invalid/inline-table/empty-01.toml +invalid/inline-table/empty-02.toml +invalid/inline-table/empty-03.toml +invalid/inline-table/no-close-01.toml +invalid/inline-table/no-close-02.toml +invalid/inline-table/no-comma-01.toml +invalid/inline-table/no-comma-02.toml invalid/inline-table/overwrite-01.toml invalid/inline-table/overwrite-02.toml invalid/inline-table/overwrite-03.toml @@ -169,20 +197,20 @@ invalid/integer/incomplete-bin.toml invalid/integer/incomplete-hex.toml invalid/integer/incomplete-oct.toml invalid/integer/invalid-bin.toml -invalid/integer/invalid-hex.toml -invalid/integer/invalid-hex-1.toml -invalid/integer/invalid-hex-2.toml +invalid/integer/invalid-hex-01.toml +invalid/integer/invalid-hex-02.toml +invalid/integer/invalid-hex-03.toml invalid/integer/invalid-oct.toml invalid/integer/leading-us.toml invalid/integer/leading-us-bin.toml invalid/integer/leading-us-hex.toml invalid/integer/leading-us-oct.toml -invalid/integer/leading-zero-1.toml -invalid/integer/leading-zero-2.toml -invalid/integer/leading-zero-3.toml -invalid/integer/leading-zero-sign-1.toml -invalid/integer/leading-zero-sign-2.toml -invalid/integer/leading-zero-sign-3.toml +invalid/integer/leading-zero-01.toml +invalid/integer/leading-zero-02.toml +invalid/integer/leading-zero-03.toml +invalid/integer/leading-zero-sign-01.toml +invalid/integer/leading-zero-sign-02.toml +invalid/integer/leading-zero-sign-03.toml invalid/integer/negative-bin.toml invalid/integer/negative-hex.toml invalid/integer/negative-oct.toml @@ -200,42 +228,65 @@ invalid/integer/us-after-oct.toml invalid/key/after-array.toml invalid/key/after-table.toml invalid/key/after-value.toml -invalid/key/bare-invalid-character.toml -invalid/key/dotted-redefine-table-1.toml -invalid/key/dotted-redefine-table-2.toml -invalid/key/duplicate-keys-1.toml -invalid/key/duplicate-keys-2.toml -invalid/key/duplicate-keys-3.toml -invalid/key/duplicate-keys-4.toml +invalid/key/bare-invalid-character-01.toml +invalid/key/bare-invalid-character-02.toml +invalid/key/dot.toml +invalid/key/dotdot.toml +invalid/key/dotted-redefine-table-01.toml +invalid/key/dotted-redefine-table-02.toml +invalid/key/duplicate-keys-01.toml +invalid/key/duplicate-keys-02.toml +invalid/key/duplicate-keys-03.toml +invalid/key/duplicate-keys-04.toml +invalid/key/duplicate-keys-05.toml +invalid/key/duplicate-keys-06.toml +invalid/key/duplicate-keys-07.toml +invalid/key/duplicate-keys-08.toml +invalid/key/duplicate-keys-09.toml invalid/key/empty.toml invalid/key/end-in-escape.toml invalid/key/escape.toml invalid/key/hash.toml -invalid/key/newline-1.toml -invalid/key/newline-2.toml -invalid/key/newline-3.toml -invalid/key/newline-4.toml -invalid/key/newline-5.toml -invalid/key/no-eol.toml +invalid/key/multiline-key-01.toml +invalid/key/multiline-key-02.toml +invalid/key/multiline-key-03.toml +invalid/key/multiline-key-04.toml +invalid/key/newline-01.toml +invalid/key/newline-02.toml +invalid/key/newline-03.toml +invalid/key/newline-04.toml +invalid/key/newline-05.toml +invalid/key/newline-06.toml +invalid/key/no-eol-01.toml +invalid/key/no-eol-02.toml +invalid/key/no-eol-03.toml +invalid/key/no-eol-04.toml +invalid/key/no-eol-05.toml +invalid/key/no-eol-06.toml +invalid/key/no-eol-07.toml +invalid/key/only-float.toml +invalid/key/only-int.toml +invalid/key/only-str.toml invalid/key/open-bracket.toml invalid/key/partial-quoted.toml -invalid/key/quoted-unclosed-1.toml -invalid/key/quoted-unclosed-2.toml +invalid/key/quoted-unclosed-01.toml +invalid/key/quoted-unclosed-02.toml invalid/key/single-open-bracket.toml invalid/key/space.toml invalid/key/special-character.toml invalid/key/start-bracket.toml invalid/key/start-dot.toml -invalid/key/two-equals-1.toml -invalid/key/two-equals-2.toml -invalid/key/two-equals-3.toml -invalid/key/without-value-1.toml -invalid/key/without-value-2.toml -invalid/key/without-value-3.toml -invalid/key/without-value-4.toml -invalid/key/without-value-5.toml -invalid/key/without-value-6.toml -invalid/key/without-value-7.toml +invalid/key/two-equals-01.toml +invalid/key/two-equals-02.toml +invalid/key/two-equals-03.toml +invalid/key/without-value-01.toml +invalid/key/without-value-02.toml +invalid/key/without-value-03.toml +invalid/key/without-value-04.toml +invalid/key/without-value-05.toml +invalid/key/without-value-06.toml +invalid/key/without-value-07.toml +invalid/local-date/day-1digit.toml invalid/local-date/feb-29.toml invalid/local-date/feb-30.toml invalid/local-date/mday-over.toml @@ -246,6 +297,7 @@ invalid/local-date/no-leads.toml invalid/local-date/no-leads-with-milli.toml invalid/local-date/trailing-t.toml invalid/local-date/y10k.toml +invalid/local-date/year-3digits.toml invalid/local-datetime/feb-29.toml invalid/local-datetime/feb-30.toml invalid/local-datetime/hour-over.toml @@ -263,101 +315,153 @@ invalid/local-datetime/y10k.toml invalid/local-time/hour-over.toml invalid/local-time/minute-over.toml invalid/local-time/second-over.toml -invalid/local-time/time-no-leads.toml -invalid/local-time/time-no-leads-2.toml -invalid/spec/inline-table-2-0.toml -invalid/spec/inline-table-3-0.toml -invalid/spec/key-value-pair-1.toml -invalid/spec/keys-2.toml -invalid/spec/string-4-0.toml -invalid/spec/string-7-0.toml -invalid/spec/table-9-0.toml -invalid/spec/table-9-1.toml +invalid/local-time/time-no-leads-01.toml +invalid/local-time/time-no-leads-02.toml +invalid/local-time/trailing-dot.toml +invalid/local-time/trailing-dotdot.toml +invalid/spec-1.1.0/common-16-0.toml +invalid/spec-1.1.0/common-19-0.toml +invalid/spec-1.1.0/common-2.toml +invalid/spec-1.1.0/common-46-0.toml +invalid/spec-1.1.0/common-46-1.toml +invalid/spec-1.1.0/common-49-0.toml +invalid/spec-1.1.0/common-5.toml +invalid/spec-1.1.0/common-50-0.toml invalid/string/bad-byte-escape.toml invalid/string/bad-concat.toml -invalid/string/bad-escape-1.toml -invalid/string/bad-escape-2.toml -invalid/string/bad-escape-3.toml -invalid/string/bad-hex-esc-1.toml -invalid/string/bad-hex-esc-2.toml -invalid/string/bad-hex-esc-3.toml -invalid/string/bad-hex-esc-4.toml -invalid/string/bad-hex-esc-5.toml +invalid/string/bad-escape-01.toml +invalid/string/bad-escape-02.toml +invalid/string/bad-escape-03.toml +invalid/string/bad-escape-04.toml +invalid/string/bad-escape-05.toml +invalid/string/bad-hex-esc-01.toml +invalid/string/bad-hex-esc-02.toml +invalid/string/bad-hex-esc-03.toml +invalid/string/bad-hex-esc-04.toml +invalid/string/bad-hex-esc-05.toml invalid/string/bad-multiline.toml invalid/string/bad-slash-escape.toml -invalid/string/bad-uni-esc-1.toml -invalid/string/bad-uni-esc-2.toml -invalid/string/bad-uni-esc-3.toml -invalid/string/bad-uni-esc-4.toml -invalid/string/bad-uni-esc-5.toml -invalid/string/bad-uni-esc-6.toml -invalid/string/bad-uni-esc-7.toml -invalid/string/basic-multiline-out-of-range-unicode-escape-1.toml -invalid/string/basic-multiline-out-of-range-unicode-escape-2.toml +invalid/string/bad-uni-esc-01.toml +invalid/string/bad-uni-esc-02.toml +invalid/string/bad-uni-esc-03.toml +invalid/string/bad-uni-esc-04.toml +invalid/string/bad-uni-esc-05.toml +invalid/string/bad-uni-esc-06.toml +invalid/string/bad-uni-esc-07.toml +invalid/string/bad-uni-esc-ml-01.toml +invalid/string/bad-uni-esc-ml-02.toml +invalid/string/bad-uni-esc-ml-03.toml +invalid/string/bad-uni-esc-ml-04.toml +invalid/string/bad-uni-esc-ml-05.toml +invalid/string/bad-uni-esc-ml-06.toml +invalid/string/bad-uni-esc-ml-07.toml +invalid/string/basic-multiline-out-of-range-unicode-escape-01.toml +invalid/string/basic-multiline-out-of-range-unicode-escape-02.toml invalid/string/basic-multiline-quotes.toml invalid/string/basic-multiline-unknown-escape.toml -invalid/string/basic-out-of-range-unicode-escape-1.toml -invalid/string/basic-out-of-range-unicode-escape-2.toml +invalid/string/basic-out-of-range-unicode-escape-01.toml +invalid/string/basic-out-of-range-unicode-escape-02.toml invalid/string/basic-unknown-escape.toml -invalid/string/literal-multiline-quotes-1.toml -invalid/string/literal-multiline-quotes-2.toml +invalid/string/literal-multiline-quotes-01.toml +invalid/string/literal-multiline-quotes-02.toml invalid/string/missing-quotes.toml -invalid/string/multiline-bad-escape-1.toml -invalid/string/multiline-bad-escape-2.toml -invalid/string/multiline-bad-escape-3.toml -invalid/string/multiline-bad-escape-4.toml -invalid/string/multiline-escape-space-1.toml -invalid/string/multiline-escape-space-2.toml -invalid/string/multiline-lit-no-close-1.toml -invalid/string/multiline-lit-no-close-2.toml -invalid/string/multiline-lit-no-close-3.toml -invalid/string/multiline-lit-no-close-4.toml -invalid/string/multiline-no-close-1.toml -invalid/string/multiline-no-close-2.toml -invalid/string/multiline-no-close-3.toml -invalid/string/multiline-no-close-4.toml -invalid/string/multiline-no-close-5.toml -invalid/string/multiline-quotes-1.toml -invalid/string/no-close-1.toml -invalid/string/no-close-2.toml -invalid/string/no-close-3.toml -invalid/string/no-close-4.toml +invalid/string/missing-quotes-array.toml +invalid/string/missing-quotes-inline-table.toml +invalid/string/multiline-bad-escape-01.toml +invalid/string/multiline-bad-escape-02.toml +invalid/string/multiline-bad-escape-03.toml +invalid/string/multiline-bad-escape-04.toml +invalid/string/multiline-escape-space-01.toml +invalid/string/multiline-escape-space-02.toml +invalid/string/multiline-lit-no-close-01.toml +invalid/string/multiline-lit-no-close-02.toml +invalid/string/multiline-lit-no-close-03.toml +invalid/string/multiline-lit-no-close-04.toml +invalid/string/multiline-no-close-01.toml +invalid/string/multiline-no-close-02.toml +invalid/string/multiline-no-close-03.toml +invalid/string/multiline-no-close-04.toml +invalid/string/multiline-no-close-05.toml +invalid/string/multiline-quotes-01.toml +invalid/string/no-close-01.toml +invalid/string/no-close-02.toml +invalid/string/no-close-03.toml +invalid/string/no-close-04.toml +invalid/string/no-close-05.toml +invalid/string/no-close-06.toml +invalid/string/no-close-07.toml +invalid/string/no-close-08.toml +invalid/string/no-close-09.toml +invalid/string/no-close-10.toml +invalid/string/no-open-01.toml +invalid/string/no-open-02.toml +invalid/string/no-open-03.toml +invalid/string/no-open-04.toml +invalid/string/no-open-05.toml +invalid/string/no-open-06.toml +invalid/string/no-open-07.toml +invalid/string/no-open-08.toml invalid/string/text-after-string.toml invalid/string/wrong-close.toml -invalid/table/append-to-array-with-dotted-keys.toml -invalid/table/append-with-dotted-keys-1.toml -invalid/table/append-with-dotted-keys-2.toml +invalid/table/append-with-dotted-keys-01.toml +invalid/table/append-with-dotted-keys-02.toml +invalid/table/append-with-dotted-keys-03.toml +invalid/table/append-with-dotted-keys-04.toml +invalid/table/append-with-dotted-keys-05.toml +invalid/table/append-with-dotted-keys-06.toml +invalid/table/append-with-dotted-keys-07.toml invalid/table/array-empty.toml invalid/table/array-implicit.toml -invalid/table/array-no-close-1.toml -invalid/table/array-no-close-2.toml -invalid/table/duplicate.toml -invalid/table/duplicate-key-dotted-array.toml -invalid/table/duplicate-key-dotted-table.toml -invalid/table/duplicate-key-dotted-table2.toml -invalid/table/duplicate-key-table.toml -invalid/table/duplicate-table-array.toml -invalid/table/duplicate-table-array2.toml +invalid/table/array-no-close-01.toml +invalid/table/array-no-close-02.toml +invalid/table/array-no-close-03.toml +invalid/table/array-no-close-04.toml +invalid/table/bare-invalid-character-01.toml +invalid/table/bare-invalid-character-02.toml +invalid/table/dot.toml +invalid/table/dotdot.toml +invalid/table/duplicate-key-01.toml +invalid/table/duplicate-key-02.toml +invalid/table/duplicate-key-03.toml +invalid/table/duplicate-key-04.toml +invalid/table/duplicate-key-05.toml +invalid/table/duplicate-key-06.toml +invalid/table/duplicate-key-07.toml +invalid/table/duplicate-key-08.toml +invalid/table/duplicate-key-09.toml +invalid/table/duplicate-key-10.toml invalid/table/empty.toml invalid/table/empty-implicit-table.toml invalid/table/equals-sign.toml invalid/table/llbrace.toml +invalid/table/multiline-key-01.toml +invalid/table/multiline-key-02.toml invalid/table/nested-brackets-close.toml invalid/table/nested-brackets-open.toml -invalid/table/no-close-1.toml -invalid/table/no-close-2.toml -invalid/table/no-close-3.toml -invalid/table/no-close-4.toml -invalid/table/no-close-5.toml +invalid/table/newline-01.toml +invalid/table/newline-02.toml +invalid/table/newline-03.toml +invalid/table/newline-04.toml +invalid/table/newline-05.toml +invalid/table/no-close-01.toml +invalid/table/no-close-02.toml +invalid/table/no-close-03.toml +invalid/table/no-close-04.toml +invalid/table/no-close-05.toml +invalid/table/no-close-06.toml +invalid/table/no-close-07.toml +invalid/table/no-close-08.toml +invalid/table/no-close-09.toml invalid/table/overwrite-array-in-parent.toml invalid/table/overwrite-bool-with-array.toml invalid/table/overwrite-with-deep-table.toml -invalid/table/redefine-1.toml -invalid/table/redefine-2.toml -invalid/table/redefine-3.toml +invalid/table/redefine-01.toml +invalid/table/redefine-02.toml +invalid/table/redefine-03.toml invalid/table/rrbrace.toml invalid/table/super-twice.toml invalid/table/text-after-table.toml +invalid/table/trailing-dot.toml invalid/table/whitespace.toml invalid/table/with-pound.toml valid/array/array.json @@ -388,14 +492,14 @@ valid/array/nospaces.json valid/array/nospaces.toml valid/array/open-parent-table.json valid/array/open-parent-table.toml -valid/array/string-quote-comma.json -valid/array/string-quote-comma.toml -valid/array/string-quote-comma-2.json -valid/array/string-quote-comma-2.toml -valid/array/string-with-comma.json -valid/array/string-with-comma.toml -valid/array/string-with-comma-2.json -valid/array/string-with-comma-2.toml +valid/array/string-quote-comma-01.json +valid/array/string-quote-comma-01.toml +valid/array/string-quote-comma-02.json +valid/array/string-quote-comma-02.toml +valid/array/string-with-comma-01.json +valid/array/string-with-comma-01.toml +valid/array/string-with-comma-02.json +valid/array/string-with-comma-02.toml valid/array/strings.json valid/array/strings.toml valid/array/table-array-string-backslash.json @@ -422,6 +526,8 @@ valid/datetime/datetime.json valid/datetime/datetime.toml valid/datetime/edge.json valid/datetime/edge.toml +valid/datetime/invalid-date-in-string.json +valid/datetime/invalid-date-in-string.toml valid/datetime/leap-year.json valid/datetime/leap-year.toml valid/datetime/local.json @@ -436,8 +542,16 @@ valid/datetime/no-seconds.json valid/datetime/no-seconds.toml valid/datetime/timezone.json valid/datetime/timezone.toml -valid/empty-file.json -valid/empty-file.toml +valid/empty-crlf.json +valid/empty-crlf.toml +valid/empty-lf.json +valid/empty-lf.toml +valid/empty-nothing.json +valid/empty-nothing.toml +valid/empty-space.json +valid/empty-space.toml +valid/empty-tab.json +valid/empty-tab.toml valid/example.json valid/example.toml valid/float/exponent.json @@ -460,10 +574,12 @@ valid/implicit-and-explicit-before.json valid/implicit-and-explicit-before.toml valid/implicit-groups.json valid/implicit-groups.toml -valid/inline-table/array.json -valid/inline-table/array.toml -valid/inline-table/array-values.json -valid/inline-table/array-values.toml +valid/inline-table/array-01.json +valid/inline-table/array-01.toml +valid/inline-table/array-02.json +valid/inline-table/array-02.toml +valid/inline-table/array-03.json +valid/inline-table/array-03.toml valid/inline-table/bool.json valid/inline-table/bool.toml valid/inline-table/empty.json @@ -472,26 +588,28 @@ valid/inline-table/end-in-bool.json valid/inline-table/end-in-bool.toml valid/inline-table/inline-table.json valid/inline-table/inline-table.toml -valid/inline-table/key-dotted-1.json -valid/inline-table/key-dotted-1.toml -valid/inline-table/key-dotted-2.json -valid/inline-table/key-dotted-2.toml -valid/inline-table/key-dotted-3.json -valid/inline-table/key-dotted-3.toml -valid/inline-table/key-dotted-4.json -valid/inline-table/key-dotted-4.toml -valid/inline-table/key-dotted-5.json -valid/inline-table/key-dotted-5.toml -valid/inline-table/key-dotted-6.json -valid/inline-table/key-dotted-6.toml -valid/inline-table/key-dotted-7.json -valid/inline-table/key-dotted-7.toml +valid/inline-table/key-dotted-01.json +valid/inline-table/key-dotted-01.toml +valid/inline-table/key-dotted-02.json +valid/inline-table/key-dotted-02.toml +valid/inline-table/key-dotted-03.json +valid/inline-table/key-dotted-03.toml +valid/inline-table/key-dotted-04.json +valid/inline-table/key-dotted-04.toml +valid/inline-table/key-dotted-05.json +valid/inline-table/key-dotted-05.toml +valid/inline-table/key-dotted-06.json +valid/inline-table/key-dotted-06.toml +valid/inline-table/key-dotted-07.json +valid/inline-table/key-dotted-07.toml valid/inline-table/multiline.json valid/inline-table/multiline.toml valid/inline-table/nest.json valid/inline-table/nest.toml valid/inline-table/newline.json valid/inline-table/newline.toml +valid/inline-table/newline-comment.json +valid/inline-table/newline-comment.toml valid/inline-table/spaces.json valid/inline-table/spaces.toml valid/integer/float64-max.json @@ -510,30 +628,44 @@ valid/key/alphanum.json valid/key/alphanum.toml valid/key/case-sensitive.json valid/key/case-sensitive.toml -valid/key/dotted-1.json -valid/key/dotted-1.toml -valid/key/dotted-2.json -valid/key/dotted-2.toml -valid/key/dotted-3.json -valid/key/dotted-3.toml -valid/key/dotted-4.json -valid/key/dotted-4.toml +valid/key/dotted-01.json +valid/key/dotted-01.toml +valid/key/dotted-02.json +valid/key/dotted-02.toml +valid/key/dotted-03.json +valid/key/dotted-03.toml +valid/key/dotted-04.json +valid/key/dotted-04.toml valid/key/dotted-empty.json valid/key/dotted-empty.toml -valid/key/empty-1.json -valid/key/empty-1.toml -valid/key/empty-2.json -valid/key/empty-2.toml -valid/key/empty-3.json -valid/key/empty-3.toml +valid/key/empty-01.json +valid/key/empty-01.toml +valid/key/empty-02.json +valid/key/empty-02.toml +valid/key/empty-03.json +valid/key/empty-03.toml valid/key/equals-nospace.json valid/key/equals-nospace.toml valid/key/escapes.json valid/key/escapes.toml -valid/key/numeric.json -valid/key/numeric.toml -valid/key/numeric-dotted.json -valid/key/numeric-dotted.toml +valid/key/like-date.json +valid/key/like-date.toml +valid/key/numeric-01.json +valid/key/numeric-01.toml +valid/key/numeric-02.json +valid/key/numeric-02.toml +valid/key/numeric-03.json +valid/key/numeric-03.toml +valid/key/numeric-04.json +valid/key/numeric-04.toml +valid/key/numeric-05.json +valid/key/numeric-05.toml +valid/key/numeric-06.json +valid/key/numeric-06.toml +valid/key/numeric-07.json +valid/key/numeric-07.toml +valid/key/numeric-08.json +valid/key/numeric-08.toml valid/key/quoted-dots.json valid/key/quoted-dots.toml valid/key/quoted-unicode.json @@ -548,112 +680,126 @@ valid/key/start.json valid/key/start.toml valid/key/zero.json valid/key/zero.toml +valid/multibyte.json +valid/multibyte.toml valid/newline-crlf.json valid/newline-crlf.toml valid/newline-lf.json valid/newline-lf.toml +valid/spec-1.1.0/common-0.json +valid/spec-1.1.0/common-0.toml +valid/spec-1.1.0/common-1.json +valid/spec-1.1.0/common-1.toml +valid/spec-1.1.0/common-10.json +valid/spec-1.1.0/common-10.toml +valid/spec-1.1.0/common-11.json +valid/spec-1.1.0/common-11.toml +valid/spec-1.1.0/common-12.json +valid/spec-1.1.0/common-12.toml +valid/spec-1.1.0/common-13.json +valid/spec-1.1.0/common-13.toml +valid/spec-1.1.0/common-14.json +valid/spec-1.1.0/common-14.toml +valid/spec-1.1.0/common-15.json +valid/spec-1.1.0/common-15.toml +valid/spec-1.1.0/common-16.json +valid/spec-1.1.0/common-16.toml +valid/spec-1.1.0/common-17.json +valid/spec-1.1.0/common-17.toml +valid/spec-1.1.0/common-18.json +valid/spec-1.1.0/common-18.toml +valid/spec-1.1.0/common-19.json +valid/spec-1.1.0/common-19.toml +valid/spec-1.1.0/common-20.json +valid/spec-1.1.0/common-20.toml +valid/spec-1.1.0/common-21.json +valid/spec-1.1.0/common-21.toml +valid/spec-1.1.0/common-22.json +valid/spec-1.1.0/common-22.toml +valid/spec-1.1.0/common-23.json +valid/spec-1.1.0/common-23.toml +valid/spec-1.1.0/common-24.json +valid/spec-1.1.0/common-24.toml +valid/spec-1.1.0/common-25.json +valid/spec-1.1.0/common-25.toml +valid/spec-1.1.0/common-26.json +valid/spec-1.1.0/common-26.toml +valid/spec-1.1.0/common-27.json +valid/spec-1.1.0/common-27.toml +valid/spec-1.1.0/common-28.json +valid/spec-1.1.0/common-28.toml +valid/spec-1.1.0/common-29.json +valid/spec-1.1.0/common-29.toml +valid/spec-1.1.0/common-3.json +valid/spec-1.1.0/common-3.toml +valid/spec-1.1.0/common-30.json +valid/spec-1.1.0/common-30.toml +valid/spec-1.1.0/common-31.json +valid/spec-1.1.0/common-31.toml +valid/spec-1.1.0/common-32.json +valid/spec-1.1.0/common-32.toml +valid/spec-1.1.0/common-33.json +valid/spec-1.1.0/common-33.toml +valid/spec-1.1.0/common-34.json +valid/spec-1.1.0/common-34.toml +valid/spec-1.1.0/common-35.json +valid/spec-1.1.0/common-35.toml +valid/spec-1.1.0/common-36.json +valid/spec-1.1.0/common-36.toml +valid/spec-1.1.0/common-37.json +valid/spec-1.1.0/common-37.toml +valid/spec-1.1.0/common-38.json +valid/spec-1.1.0/common-38.toml +valid/spec-1.1.0/common-39.json +valid/spec-1.1.0/common-39.toml +valid/spec-1.1.0/common-4.json +valid/spec-1.1.0/common-4.toml +valid/spec-1.1.0/common-40.json +valid/spec-1.1.0/common-40.toml +valid/spec-1.1.0/common-41.json +valid/spec-1.1.0/common-41.toml +valid/spec-1.1.0/common-42.json +valid/spec-1.1.0/common-42.toml +valid/spec-1.1.0/common-43.json +valid/spec-1.1.0/common-43.toml +valid/spec-1.1.0/common-44.json +valid/spec-1.1.0/common-44.toml +valid/spec-1.1.0/common-45.json +valid/spec-1.1.0/common-45.toml +valid/spec-1.1.0/common-46.json +valid/spec-1.1.0/common-46.toml +valid/spec-1.1.0/common-47.json +valid/spec-1.1.0/common-47.toml +valid/spec-1.1.0/common-48.json +valid/spec-1.1.0/common-48.toml +valid/spec-1.1.0/common-49.json +valid/spec-1.1.0/common-49.toml +valid/spec-1.1.0/common-50.json +valid/spec-1.1.0/common-50.toml +valid/spec-1.1.0/common-51.json +valid/spec-1.1.0/common-51.toml +valid/spec-1.1.0/common-52.json +valid/spec-1.1.0/common-52.toml +valid/spec-1.1.0/common-53.json +valid/spec-1.1.0/common-53.toml +valid/spec-1.1.0/common-6.json +valid/spec-1.1.0/common-6.toml +valid/spec-1.1.0/common-7.json +valid/spec-1.1.0/common-7.toml +valid/spec-1.1.0/common-8.json +valid/spec-1.1.0/common-8.toml +valid/spec-1.1.0/common-9.json +valid/spec-1.1.0/common-9.toml valid/spec-example-1.json valid/spec-example-1.toml valid/spec-example-1-compact.json valid/spec-example-1-compact.toml -valid/spec/array-0.json -valid/spec/array-0.toml -valid/spec/array-1.json -valid/spec/array-1.toml -valid/spec/array-of-tables-0.json -valid/spec/array-of-tables-0.toml -valid/spec/array-of-tables-1.json -valid/spec/array-of-tables-1.toml -valid/spec/array-of-tables-2.json -valid/spec/array-of-tables-2.toml -valid/spec/boolean-0.json -valid/spec/boolean-0.toml -valid/spec/comment-0.json -valid/spec/comment-0.toml -valid/spec/float-0.json -valid/spec/float-0.toml -valid/spec/float-1.json -valid/spec/float-1.toml -valid/spec/float-2.json -valid/spec/float-2.toml -valid/spec/inline-table-0.json -valid/spec/inline-table-0.toml -valid/spec/inline-table-1.json -valid/spec/inline-table-1.toml -valid/spec/inline-table-2.json -valid/spec/inline-table-2.toml -valid/spec/inline-table-3.json -valid/spec/inline-table-3.toml -valid/spec/integer-0.json -valid/spec/integer-0.toml -valid/spec/integer-1.json -valid/spec/integer-1.toml -valid/spec/integer-2.json -valid/spec/integer-2.toml -valid/spec/key-value-pair-0.json -valid/spec/key-value-pair-0.toml -valid/spec/keys-0.json -valid/spec/keys-0.toml -valid/spec/keys-1.json -valid/spec/keys-1.toml -valid/spec/keys-3.json -valid/spec/keys-3.toml -valid/spec/keys-4.json -valid/spec/keys-4.toml -valid/spec/keys-5.json -valid/spec/keys-5.toml -valid/spec/keys-6.json -valid/spec/keys-6.toml -valid/spec/keys-7.json -valid/spec/keys-7.toml -valid/spec/local-date-0.json -valid/spec/local-date-0.toml -valid/spec/local-date-time-0.json -valid/spec/local-date-time-0.toml -valid/spec/local-time-0.json -valid/spec/local-time-0.toml -valid/spec/offset-date-time-0.json -valid/spec/offset-date-time-0.toml -valid/spec/offset-date-time-1.json -valid/spec/offset-date-time-1.toml -valid/spec/string-0.json -valid/spec/string-0.toml -valid/spec/string-1.json -valid/spec/string-1.toml -valid/spec/string-2.json -valid/spec/string-2.toml -valid/spec/string-3.json -valid/spec/string-3.toml -valid/spec/string-4.json -valid/spec/string-4.toml -valid/spec/string-5.json -valid/spec/string-5.toml -valid/spec/string-6.json -valid/spec/string-6.toml -valid/spec/string-7.json -valid/spec/string-7.toml -valid/spec/table-0.json -valid/spec/table-0.toml -valid/spec/table-1.json -valid/spec/table-1.toml -valid/spec/table-2.json -valid/spec/table-2.toml -valid/spec/table-3.json -valid/spec/table-3.toml -valid/spec/table-4.json -valid/spec/table-4.toml -valid/spec/table-5.json -valid/spec/table-5.toml -valid/spec/table-6.json -valid/spec/table-6.toml -valid/spec/table-7.json -valid/spec/table-7.toml -valid/spec/table-8.json -valid/spec/table-8.toml -valid/spec/table-9.json -valid/spec/table-9.toml -valid/string/double-quote-escape.json -valid/string/double-quote-escape.toml +valid/string/basic-escape-01.json +valid/string/basic-escape-01.toml +valid/string/basic-escape-02.json +valid/string/basic-escape-02.toml +valid/string/basic-escape-03.json +valid/string/basic-escape-03.toml valid/string/empty.json valid/string/empty.toml valid/string/ends-in-whitespace-escape.json @@ -668,6 +814,10 @@ valid/string/escapes.json valid/string/escapes.toml valid/string/hex-escape.json valid/string/hex-escape.toml +valid/string/multibyte.json +valid/string/multibyte.toml +valid/string/multibyte-escape.json +valid/string/multibyte-escape.toml valid/string/multiline.json valid/string/multiline.toml valid/string/multiline-empty.json @@ -682,6 +832,8 @@ valid/string/quoted-unicode.json valid/string/quoted-unicode.toml valid/string/raw.json valid/string/raw.toml +valid/string/raw-empty.json +valid/string/raw-empty.toml valid/string/raw-multiline.json valid/string/raw-multiline.toml valid/string/simple.json @@ -690,10 +842,12 @@ valid/string/start-mb.json valid/string/start-mb.toml valid/string/unicode-escape.json valid/string/unicode-escape.toml -valid/string/unicode-literal.json -valid/string/unicode-literal.toml valid/string/with-pound.json valid/string/with-pound.toml +valid/table/array-empty.json +valid/table/array-empty.toml +valid/table/array-empty-name.json +valid/table/array-empty-name.toml valid/table/array-implicit.json valid/table/array-implicit.toml valid/table/array-implicit-and-explicit-after.json diff --git a/tests/CsToml.Tests/toml-test/invalid/array/array.multi b/tests/CsToml.Tests/toml-test/invalid/array/array.multi index 1c66691..aad7848 100644 --- a/tests/CsToml.Tests/toml-test/invalid/array/array.multi +++ b/tests/CsToml.Tests/toml-test/invalid/array/array.multi @@ -1,18 +1,18 @@ -double-comma-1 = [1,,2] -double-comma-2 = [1,2,,] +double-comma-01 = [1,,2] +double-comma-02 = [1,2,,] -only-comma-1 = [,] -only-comma-2 = [,,] +only-comma-01 = [,] +only-comma-02 = [,,] -no-comma-1 = [true false] -no-comma-2 = [ 1 2 3 ] -no-comma-3 = [ 1 #,] +no-comma-01 = [true false] +no-comma-02 = [ 1 2 3 ] +no-comma-03 = [ 1 #,] -no-close-1 = [ 1, 2, 3 -no-close-2 = [1, -no-close-3 = [42 #] -no-close-4 = [{ key = 42 -no-close-5 = [{ key = 42} -no-close-6 = [{ key = 42 #}] -no-close-7 = [{ key = 42} #] -no-close-8 = [ +no-close-01 = [ 1, 2, 3 +no-close-02 = [1, +no-close-03 = [42 #] +no-close-04 = [{ key = 42 +no-close-05 = [{ key = 42} +no-close-06 = [{ key = 42 #}] +no-close-07 = [{ key = 42} #] +no-close-08 = [ diff --git a/tests/CsToml.Tests/toml-test/invalid/array/double-comma-01.toml b/tests/CsToml.Tests/toml-test/invalid/array/double-comma-01.toml new file mode 100644 index 0000000..581710a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/double-comma-01.toml @@ -0,0 +1 @@ +double-comma-01 = [1,,2] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/double-comma-02.toml b/tests/CsToml.Tests/toml-test/invalid/array/double-comma-02.toml new file mode 100644 index 0000000..2fccf26 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/double-comma-02.toml @@ -0,0 +1 @@ +double-comma-02 = [1,2,,] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/double-comma-1.toml b/tests/CsToml.Tests/toml-test/invalid/array/double-comma-1.toml deleted file mode 100644 index 87602c0..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/double-comma-1.toml +++ /dev/null @@ -1 +0,0 @@ -double-comma-1 = [1,,2] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/double-comma-2.toml b/tests/CsToml.Tests/toml-test/invalid/array/double-comma-2.toml deleted file mode 100644 index 8019b50..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/double-comma-2.toml +++ /dev/null @@ -1 +0,0 @@ -double-comma-2 = [1,2,,] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/missing-separator-1.toml b/tests/CsToml.Tests/toml-test/invalid/array/missing-separator-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/array/missing-separator-1.toml rename to tests/CsToml.Tests/toml-test/invalid/array/missing-separator-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/array/missing-separator-2.toml b/tests/CsToml.Tests/toml-test/invalid/array/missing-separator-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/array/missing-separator-2.toml rename to tests/CsToml.Tests/toml-test/invalid/array/missing-separator-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-01.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-01.toml new file mode 100644 index 0000000..1516073 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-close-01.toml @@ -0,0 +1 @@ +no-close-01 = [ 1, 2, 3 diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-02.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-02.toml new file mode 100644 index 0000000..d971094 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-close-02.toml @@ -0,0 +1 @@ +no-close-02 = [1, diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-03.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-03.toml new file mode 100644 index 0000000..c1a15db --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-close-03.toml @@ -0,0 +1 @@ +no-close-03 = [42 #] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-04.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-04.toml new file mode 100644 index 0000000..69976c1 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-close-04.toml @@ -0,0 +1 @@ +no-close-04 = [{ key = 42 diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-05.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-05.toml new file mode 100644 index 0000000..b8cdd01 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-close-05.toml @@ -0,0 +1 @@ +no-close-05 = [{ key = 42} diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-06.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-06.toml new file mode 100644 index 0000000..48a4fec --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-close-06.toml @@ -0,0 +1 @@ +no-close-06 = [{ key = 42 #}] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-07.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-07.toml new file mode 100644 index 0000000..e7159e7 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-close-07.toml @@ -0,0 +1 @@ +no-close-07 = [{ key = 42} #] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-08.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-08.toml new file mode 100644 index 0000000..7dcdede --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-close-08.toml @@ -0,0 +1 @@ +no-close-08 = [ diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-1.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-1.toml deleted file mode 100644 index fa72e49..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-close-1.toml +++ /dev/null @@ -1 +0,0 @@ -no-close-1 = [ 1, 2, 3 diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-2.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-2.toml deleted file mode 100644 index 01874ad..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-close-2.toml +++ /dev/null @@ -1 +0,0 @@ -no-close-2 = [1, diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-3.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-3.toml deleted file mode 100644 index 7edcc43..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-close-3.toml +++ /dev/null @@ -1 +0,0 @@ -no-close-3 = [42 #] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-4.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-4.toml deleted file mode 100644 index 8c64b5e..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-close-4.toml +++ /dev/null @@ -1 +0,0 @@ -no-close-4 = [{ key = 42 diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-5.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-5.toml deleted file mode 100644 index fba6109..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-close-5.toml +++ /dev/null @@ -1 +0,0 @@ -no-close-5 = [{ key = 42} diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-6.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-6.toml deleted file mode 100644 index 551e711..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-close-6.toml +++ /dev/null @@ -1 +0,0 @@ -no-close-6 = [{ key = 42 #}] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-7.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-7.toml deleted file mode 100644 index fe8c8fd..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-close-7.toml +++ /dev/null @@ -1 +0,0 @@ -no-close-7 = [{ key = 42} #] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-8.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-8.toml deleted file mode 100644 index 3378bf3..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-close-8.toml +++ /dev/null @@ -1 +0,0 @@ -no-close-8 = [ diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-table-1.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-table-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/array/no-close-table-1.toml rename to tests/CsToml.Tests/toml-test/invalid/array/no-close-table-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-close-table-2.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-close-table-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/array/no-close-table-2.toml rename to tests/CsToml.Tests/toml-test/invalid/array/no-close-table-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-comma-01.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-comma-01.toml new file mode 100644 index 0000000..88b69fd --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-comma-01.toml @@ -0,0 +1 @@ +no-comma-01 = [true false] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-comma-02.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-comma-02.toml new file mode 100644 index 0000000..a5e6002 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-comma-02.toml @@ -0,0 +1 @@ +no-comma-02 = [ 1 2 3 ] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-comma-03.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-comma-03.toml new file mode 100644 index 0000000..51124a5 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/no-comma-03.toml @@ -0,0 +1 @@ +no-comma-03 = [ 1 #,] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-comma-1.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-comma-1.toml deleted file mode 100644 index ae7ab24..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-comma-1.toml +++ /dev/null @@ -1 +0,0 @@ -no-comma-1 = [true false] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-comma-2.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-comma-2.toml deleted file mode 100644 index a8bc607..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-comma-2.toml +++ /dev/null @@ -1 +0,0 @@ -no-comma-2 = [ 1 2 3 ] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/no-comma-3.toml b/tests/CsToml.Tests/toml-test/invalid/array/no-comma-3.toml deleted file mode 100644 index 1a636d6..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/no-comma-3.toml +++ /dev/null @@ -1 +0,0 @@ -no-comma-3 = [ 1 #,] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/only-comma-01.toml b/tests/CsToml.Tests/toml-test/invalid/array/only-comma-01.toml new file mode 100644 index 0000000..2d85110 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/only-comma-01.toml @@ -0,0 +1 @@ +only-comma-01 = [,] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/only-comma-02.toml b/tests/CsToml.Tests/toml-test/invalid/array/only-comma-02.toml new file mode 100644 index 0000000..b9f7979 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/array/only-comma-02.toml @@ -0,0 +1 @@ +only-comma-02 = [,,] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/only-comma-1.toml b/tests/CsToml.Tests/toml-test/invalid/array/only-comma-1.toml deleted file mode 100644 index dca0f1b..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/only-comma-1.toml +++ /dev/null @@ -1 +0,0 @@ -only-comma-1 = [,] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/only-comma-2.toml b/tests/CsToml.Tests/toml-test/invalid/array/only-comma-2.toml deleted file mode 100644 index 3e46ca6..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/array/only-comma-2.toml +++ /dev/null @@ -1 +0,0 @@ -only-comma-2 = [,,] diff --git a/tests/CsToml.Tests/toml-test/invalid/array/tables-1.toml b/tests/CsToml.Tests/toml-test/invalid/array/tables-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/array/tables-1.toml rename to tests/CsToml.Tests/toml-test/invalid/array/tables-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/array/tables-2.toml b/tests/CsToml.Tests/toml-test/invalid/array/tables-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/array/tables-2.toml rename to tests/CsToml.Tests/toml-test/invalid/array/tables-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/control/control.multi b/tests/CsToml.Tests/toml-test/invalid/control/control.multi index ac66cee..a8e999e 100644 --- a/tests/CsToml.Tests/toml-test/invalid/control/control.multi +++ b/tests/CsToml.Tests/toml-test/invalid/control/control.multi @@ -29,7 +29,7 @@ multi-del = """null\x7f""" rawmulti-null = '''null\x00''' rawmulti-lf = '''null\x10''' -rawmulti-cd = '''null\x0d''' +rawmulti-cr = '''null\x0d''' rawmulti-us = '''null\x1f''' rawmulti-del = '''null\x7f''' diff --git a/tests/CsToml.Tests/toml-test/invalid/control/only-ff.toml b/tests/CsToml.Tests/toml-test/invalid/control/only-ff.toml new file mode 100644 index 0000000..8214d0e --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/control/only-ff.toml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/tests/CsToml.Tests/toml-test/invalid/control/only-null.toml b/tests/CsToml.Tests/toml-test/invalid/control/only-null.toml new file mode 100644 index 0000000..f76dd23 Binary files /dev/null and b/tests/CsToml.Tests/toml-test/invalid/control/only-null.toml differ diff --git a/tests/CsToml.Tests/toml-test/invalid/control/only-vt.toml b/tests/CsToml.Tests/toml-test/invalid/control/only-vt.toml new file mode 100644 index 0000000..2725bca --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/control/only-vt.toml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/tests/CsToml.Tests/toml-test/invalid/control/rawmulti-cd.toml b/tests/CsToml.Tests/toml-test/invalid/control/rawmulti-cd.toml deleted file mode 100644 index c6f32d0..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/control/rawmulti-cd.toml +++ /dev/null @@ -1 +0,0 @@ -rawmulti-cd = '''null ''' diff --git a/tests/CsToml.Tests/toml-test/invalid/control/rawmulti-cr.toml b/tests/CsToml.Tests/toml-test/invalid/control/rawmulti-cr.toml new file mode 100644 index 0000000..4d4824e --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/control/rawmulti-cr.toml @@ -0,0 +1 @@ +rawmulti-cr = '''null ''' diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/day-zero.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/day-zero.toml new file mode 100644 index 0000000..0aae230 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/day-zero.toml @@ -0,0 +1 @@ +foo = 1997-09-00T09:09:09.09Z diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/no-date-time-sep.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/no-date-time-sep.toml new file mode 100644 index 0000000..c2b3e33 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/no-date-time-sep.toml @@ -0,0 +1 @@ +foo = 1997-09-0909:09:09 diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/no-year-month-sep.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/no-year-month-sep.toml new file mode 100644 index 0000000..8946c52 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/no-year-month-sep.toml @@ -0,0 +1 @@ +foo = 199709-09 diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-minute-1digit.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-minute-1digit.toml new file mode 100644 index 0000000..6f025ab --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-minute-1digit.toml @@ -0,0 +1 @@ +foo = 1997-09-09T09:09:09.09+09:9 diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-no-hour-minute-sep.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-no-hour-minute-sep.toml new file mode 100644 index 0000000..be5ddaf --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-no-hour-minute-sep.toml @@ -0,0 +1 @@ +foo = 1997-09-09T09:09:09.09+0909 diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-no-hour-minute.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-no-hour-minute.toml new file mode 100644 index 0000000..495a4fe --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-no-hour-minute.toml @@ -0,0 +1 @@ +foo = 1997-09-09T09:09:09.09+ diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-no-minute.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-no-minute.toml new file mode 100644 index 0000000..98eeef0 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-minus-no-minute.toml @@ -0,0 +1 @@ +foo = 1997-09-09T09:09:09.09+09 diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/offset-overflow-minute.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-overflow-minute.toml index fdcadc5..7ab68ec 100644 --- a/tests/CsToml.Tests/toml-test/invalid/datetime/offset-overflow-minute.toml +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-overflow-minute.toml @@ -1,3 +1 @@ -# Minute must be 00-59; we allow 60 too because some people do write offsets of -# 60 minutes -d = 1985-06-18 17:04:07+12:61 +d = 1985-06-18 17:04:07+12:60 diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-minute-1digit.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-minute-1digit.toml new file mode 100644 index 0000000..6f025ab --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-minute-1digit.toml @@ -0,0 +1 @@ +foo = 1997-09-09T09:09:09.09+09:9 diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-no-hour-minute-sep.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-no-hour-minute-sep.toml new file mode 100644 index 0000000..be5ddaf --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-no-hour-minute-sep.toml @@ -0,0 +1 @@ +foo = 1997-09-09T09:09:09.09+0909 diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-no-hour-minute.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-no-hour-minute.toml new file mode 100644 index 0000000..495a4fe --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-no-hour-minute.toml @@ -0,0 +1 @@ +foo = 1997-09-09T09:09:09.09+ diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-no-minute.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-no-minute.toml new file mode 100644 index 0000000..98eeef0 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/offset-plus-no-minute.toml @@ -0,0 +1 @@ +foo = 1997-09-09T09:09:09.09+09 diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/only-T.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/only-T.toml new file mode 100644 index 0000000..08576a8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/only-T.toml @@ -0,0 +1 @@ +foo = T diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/only-TZ.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/only-TZ.toml new file mode 100644 index 0000000..96231ab --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/only-TZ.toml @@ -0,0 +1 @@ +foo = TZ diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/only-Tdot.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/only-Tdot.toml new file mode 100644 index 0000000..0267e70 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/only-Tdot.toml @@ -0,0 +1 @@ +foo = T. diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/second-trailing-dot.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/second-trailing-dot.toml new file mode 100644 index 0000000..88289e6 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/second-trailing-dot.toml @@ -0,0 +1 @@ +foo = 1997-09-09T09:09:09. diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/second-trailing-dotz.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/second-trailing-dotz.toml new file mode 100644 index 0000000..54829c8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/second-trailing-dotz.toml @@ -0,0 +1 @@ +foo = 2016-09-09T09:09:09.Z diff --git a/tests/CsToml.Tests/toml-test/invalid/datetime/trailing-x.toml b/tests/CsToml.Tests/toml-test/invalid/datetime/trailing-x.toml new file mode 100644 index 0000000..42326ba --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/datetime/trailing-x.toml @@ -0,0 +1 @@ +sign=2020-01-01x diff --git a/tests/CsToml.Tests/toml-test/invalid/encoding/bad-utf8-in-array.toml b/tests/CsToml.Tests/toml-test/invalid/encoding/bad-utf8-in-array.toml new file mode 100644 index 0000000..0dc5c6c Binary files /dev/null and b/tests/CsToml.Tests/toml-test/invalid/encoding/bad-utf8-in-array.toml differ diff --git a/tests/CsToml.Tests/toml-test/invalid/encoding/bom-not-at-start-1.toml b/tests/CsToml.Tests/toml-test/invalid/encoding/bom-not-at-start-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/encoding/bom-not-at-start-1.toml rename to tests/CsToml.Tests/toml-test/invalid/encoding/bom-not-at-start-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/encoding/bom-not-at-start-2.toml b/tests/CsToml.Tests/toml-test/invalid/encoding/bom-not-at-start-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/encoding/bom-not-at-start-2.toml rename to tests/CsToml.Tests/toml-test/invalid/encoding/bom-not-at-start-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/encoding/ideographic-space.toml b/tests/CsToml.Tests/toml-test/invalid/encoding/ideographic-space.toml new file mode 100644 index 0000000..22544a0 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/encoding/ideographic-space.toml @@ -0,0 +1,2 @@ +# First on next line is U+3000 IDEOGRAPHIC SPACE + foo = "bar" diff --git a/tests/CsToml.Tests/toml-test/invalid/float/double-dot-01.toml b/tests/CsToml.Tests/toml-test/invalid/float/double-dot-01.toml new file mode 100644 index 0000000..637d032 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/double-dot-01.toml @@ -0,0 +1 @@ +double-dot-01 = 0..1 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/double-dot-02.toml b/tests/CsToml.Tests/toml-test/invalid/float/double-dot-02.toml new file mode 100644 index 0000000..9c1b779 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/double-dot-02.toml @@ -0,0 +1 @@ +double-dot-02 = 0.1.2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/double-point-1.toml b/tests/CsToml.Tests/toml-test/invalid/float/double-point-1.toml deleted file mode 100644 index 2105fa9..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/double-point-1.toml +++ /dev/null @@ -1 +0,0 @@ -double-point-1 = 0..1 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/double-point-2.toml b/tests/CsToml.Tests/toml-test/invalid/float/double-point-2.toml deleted file mode 100644 index 1ef3d0b..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/double-point-2.toml +++ /dev/null @@ -1 +0,0 @@ -double-point-2 = 0.1.2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-dot-01.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-dot-01.toml new file mode 100644 index 0000000..f094e84 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/exp-dot-01.toml @@ -0,0 +1 @@ +exp-dot-01 = 1e2.3 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-dot-02.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-dot-02.toml new file mode 100644 index 0000000..fda5065 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/exp-dot-02.toml @@ -0,0 +1 @@ +exp-dot-02 = 1.e2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-dot-03.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-dot-03.toml new file mode 100644 index 0000000..89fca68 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/exp-dot-03.toml @@ -0,0 +1 @@ +exp-dot-03 = 3.e+20 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-01.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-01.toml new file mode 100644 index 0000000..c1e0935 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-01.toml @@ -0,0 +1 @@ +exp-double-e-01 = 1ee2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-02.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-02.toml new file mode 100644 index 0000000..510bad5 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-02.toml @@ -0,0 +1 @@ +exp-double-e-02 = 1e2e3 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-1.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-1.toml deleted file mode 100644 index ee568ce..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-1.toml +++ /dev/null @@ -1 +0,0 @@ -exp-double-e-1 = 1ee2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-2.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-2.toml deleted file mode 100644 index 8fb0158..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/exp-double-e-2.toml +++ /dev/null @@ -1 +0,0 @@ -exp-double-e-2 = 1e2e3 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-point-1.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-point-1.toml deleted file mode 100644 index 569590b..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/exp-point-1.toml +++ /dev/null @@ -1 +0,0 @@ -exp-point-1 = 1e2.3 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-point-2.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-point-2.toml deleted file mode 100644 index 4a5e1d4..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/exp-point-2.toml +++ /dev/null @@ -1 +0,0 @@ -exp-point-2 = 1.e2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-point-3.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-point-3.toml deleted file mode 100644 index dd53e98..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/exp-point-3.toml +++ /dev/null @@ -1 +0,0 @@ -exp-point-3 = 3.e+20 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-01.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-01.toml new file mode 100644 index 0000000..23036b8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-01.toml @@ -0,0 +1 @@ +exp-trailing-us-01 = 1_e2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-02.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-02.toml new file mode 100644 index 0000000..00d19f3 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-02.toml @@ -0,0 +1 @@ +exp-trailing-us-02 = 1.2_e2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-1.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-1.toml deleted file mode 100644 index b0fb70e..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-1.toml +++ /dev/null @@ -1 +0,0 @@ -exp-trailing-us-1 = 1_e2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-2.toml b/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-2.toml deleted file mode 100644 index e35f3e3..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/exp-trailing-us-2.toml +++ /dev/null @@ -1 +0,0 @@ -exp-trailing-us-2 = 1.2_e2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/float.multi b/tests/CsToml.Tests/toml-test/invalid/float/float.multi index ff67bb8..adc17ef 100644 --- a/tests/CsToml.Tests/toml-test/invalid/float/float.multi +++ b/tests/CsToml.Tests/toml-test/invalid/float/float.multi @@ -2,43 +2,48 @@ leading-zero = 03.14 leading-zero-neg = -03.14 leading-zero-plus = +03.14 -leading-point = .12345 -leading-point-neg = -.12345 -leading-point-plus = +.12345 +leading-dot = .12345 +leading-dot-neg = -.12345 +leading-dot-plus = +.12345 -trailing-point = 1. -trailing-point-min = -1. -trailing-point-plus = +1. +trailing-dot = 1. +trailing-dot-min = -1. +trailing-dot-plus = +1. + +trailing-exp = 0.0E +trailing-exp-dot = 0.e +trailing-exp-minus = 0.0e- +trailing-exp-plus = 0.0e+ trailing-us = 1.2_ leading-us = _1.2 -us-before-point = 1_.2 -us-after-point = 1._2 +us-before-dot = 1_.2 +us-after-dot = 1._2 -double-point-1 = 0..1 -double-point-2 = 0.1.2 +double-dot-01 = 0..1 +double-dot-02 = 0.1.2 -exp-point-1 = 1e2.3 -exp-point-2 = 1.e2 -exp-point-3 = 3.e+20 +exp-dot-01 = 1e2.3 +exp-dot-02 = 1.e2 +exp-dot-03 = 3.e+20 -exp-double-e-1 = 1ee2 -exp-double-e-2 = 1e2e3 +exp-double-e-01 = 1ee2 +exp-double-e-02 = 1e2e3 exp-leading-us = 1e_23 exp-trailing-us = 1e23_ exp-double-us = 1e__23 -exp-trailing-us-1 = 1_e2 -exp-trailing-us-2 = 1.2_e2 +exp-trailing-us-01 = 1_e2 +exp-trailing-us-02 = 1.2_e2 -inf-incomplete-1 = in -inf-incomplete-2 = +in -inf-incomplete-3 = -in +inf-incomplete-01 = in +inf-incomplete-02 = +in +inf-incomplete-03 = -in -nan-incomplete-1 = na -nan-incomplete-2 = +na -nan-incomplete-3 = -na +nan-incomplete-01 = na +nan-incomplete-02 = +na +nan-incomplete-03 = -na nan_underscore = na_n inf_underscore = in_f diff --git a/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-01.toml b/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-01.toml new file mode 100644 index 0000000..a32d9f6 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-01.toml @@ -0,0 +1 @@ +inf-incomplete-01 = in diff --git a/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-02.toml b/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-02.toml new file mode 100644 index 0000000..a8159ed --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-02.toml @@ -0,0 +1 @@ +inf-incomplete-02 = +in diff --git a/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-03.toml b/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-03.toml new file mode 100644 index 0000000..aab9bf3 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-03.toml @@ -0,0 +1 @@ +inf-incomplete-03 = -in diff --git a/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-1.toml b/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-1.toml deleted file mode 100644 index 2c9ef59..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-1.toml +++ /dev/null @@ -1 +0,0 @@ -inf-incomplete-1 = in diff --git a/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-2.toml b/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-2.toml deleted file mode 100644 index afda712..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-2.toml +++ /dev/null @@ -1 +0,0 @@ -inf-incomplete-2 = +in diff --git a/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-3.toml b/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-3.toml deleted file mode 100644 index bd82738..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/inf-incomplete-3.toml +++ /dev/null @@ -1 +0,0 @@ -inf-incomplete-3 = -in diff --git a/tests/CsToml.Tests/toml-test/invalid/float/leading-dot-neg.toml b/tests/CsToml.Tests/toml-test/invalid/float/leading-dot-neg.toml new file mode 100644 index 0000000..9b4bf4a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/leading-dot-neg.toml @@ -0,0 +1 @@ +leading-dot-neg = -.12345 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/leading-dot-plus.toml b/tests/CsToml.Tests/toml-test/invalid/float/leading-dot-plus.toml new file mode 100644 index 0000000..14eaf33 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/leading-dot-plus.toml @@ -0,0 +1 @@ +leading-dot-plus = +.12345 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/leading-dot.toml b/tests/CsToml.Tests/toml-test/invalid/float/leading-dot.toml new file mode 100644 index 0000000..bdf4d5f --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/leading-dot.toml @@ -0,0 +1 @@ +leading-dot = .12345 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/leading-point-neg.toml b/tests/CsToml.Tests/toml-test/invalid/float/leading-point-neg.toml deleted file mode 100644 index 74c526f..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/leading-point-neg.toml +++ /dev/null @@ -1 +0,0 @@ -leading-point-neg = -.12345 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/leading-point-plus.toml b/tests/CsToml.Tests/toml-test/invalid/float/leading-point-plus.toml deleted file mode 100644 index 85e23a2..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/leading-point-plus.toml +++ /dev/null @@ -1 +0,0 @@ -leading-point-plus = +.12345 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/leading-point.toml b/tests/CsToml.Tests/toml-test/invalid/float/leading-point.toml deleted file mode 100644 index a3c29b9..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/leading-point.toml +++ /dev/null @@ -1 +0,0 @@ -leading-point = .12345 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-01.toml b/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-01.toml new file mode 100644 index 0000000..bb10c06 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-01.toml @@ -0,0 +1 @@ +nan-incomplete-01 = na diff --git a/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-02.toml b/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-02.toml new file mode 100644 index 0000000..3a6f5aa --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-02.toml @@ -0,0 +1 @@ +nan-incomplete-02 = +na diff --git a/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-03.toml b/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-03.toml new file mode 100644 index 0000000..1db2639 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-03.toml @@ -0,0 +1 @@ +nan-incomplete-03 = -na diff --git a/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-1.toml b/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-1.toml deleted file mode 100644 index df2e261..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-1.toml +++ /dev/null @@ -1 +0,0 @@ -nan-incomplete-1 = na diff --git a/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-2.toml b/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-2.toml deleted file mode 100644 index 6d2e8fb..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-2.toml +++ /dev/null @@ -1 +0,0 @@ -nan-incomplete-2 = +na diff --git a/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-3.toml b/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-3.toml deleted file mode 100644 index 9d365ac..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/nan-incomplete-3.toml +++ /dev/null @@ -1 +0,0 @@ -nan-incomplete-3 = -na diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-point.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/float/trailing-point.toml rename to tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-02.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-02.toml new file mode 100644 index 0000000..04ef4fa --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-02.toml @@ -0,0 +1,2 @@ +a = 1. +b = 2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-min.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-min.toml new file mode 100644 index 0000000..b89fcba --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-min.toml @@ -0,0 +1 @@ +trailing-dot-min = -1. diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-plus.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-plus.toml new file mode 100644 index 0000000..c030fab --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot-plus.toml @@ -0,0 +1 @@ +trailing-dot-plus = +1. diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot.toml new file mode 100644 index 0000000..109f184 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/trailing-dot.toml @@ -0,0 +1 @@ +trailing-dot = 1. diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp-dot.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp-dot.toml new file mode 100644 index 0000000..e556976 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp-dot.toml @@ -0,0 +1 @@ +trailing-exp-dot = 0.e diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp-minus.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp-minus.toml new file mode 100644 index 0000000..58124a9 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp-minus.toml @@ -0,0 +1 @@ +trailing-exp-minus = 0.0e- diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp-plus.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp-plus.toml new file mode 100644 index 0000000..d5d3055 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp-plus.toml @@ -0,0 +1 @@ +trailing-exp-plus = 0.0e+ diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp.toml new file mode 100644 index 0000000..24f2005 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/trailing-exp.toml @@ -0,0 +1 @@ +trailing-exp = 0.0E diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-point-min.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-point-min.toml deleted file mode 100644 index 48741e3..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/trailing-point-min.toml +++ /dev/null @@ -1 +0,0 @@ -trailing-point-min = -1. diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-point-plus.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-point-plus.toml deleted file mode 100644 index 9926039..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/trailing-point-plus.toml +++ /dev/null @@ -1 +0,0 @@ -trailing-point-plus = +1. diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-us-exp-1.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-us-exp-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/float/trailing-us-exp-1.toml rename to tests/CsToml.Tests/toml-test/invalid/float/trailing-us-exp-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/float/trailing-us-exp-2.toml b/tests/CsToml.Tests/toml-test/invalid/float/trailing-us-exp-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/float/trailing-us-exp-2.toml rename to tests/CsToml.Tests/toml-test/invalid/float/trailing-us-exp-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/float/us-after-dot.toml b/tests/CsToml.Tests/toml-test/invalid/float/us-after-dot.toml new file mode 100644 index 0000000..2fc5b55 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/us-after-dot.toml @@ -0,0 +1 @@ +us-after-dot = 1._2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/us-after-point.toml b/tests/CsToml.Tests/toml-test/invalid/float/us-after-point.toml deleted file mode 100644 index 7f15f57..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/us-after-point.toml +++ /dev/null @@ -1 +0,0 @@ -us-after-point = 1._2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/us-before-dot.toml b/tests/CsToml.Tests/toml-test/invalid/float/us-before-dot.toml new file mode 100644 index 0000000..a35eb34 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/float/us-before-dot.toml @@ -0,0 +1 @@ +us-before-dot = 1_.2 diff --git a/tests/CsToml.Tests/toml-test/invalid/float/us-before-point.toml b/tests/CsToml.Tests/toml-test/invalid/float/us-before-point.toml deleted file mode 100644 index c8edcbf..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/float/us-before-point.toml +++ /dev/null @@ -1 +0,0 @@ -us-before-point = 1_.2 diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-1.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-1.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-2.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-2.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-3.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-3.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-4.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-4.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/duplicate-key-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/empty-1.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/empty-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/empty-1.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/empty-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/empty-2.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/empty-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/empty-2.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/empty-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/empty-3.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/empty-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/empty-3.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/empty-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-1.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-1.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-2.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-2.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-3.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-3.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-4.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-4.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/linebreak-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/no-close-1.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/no-close-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/no-close-1.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/no-close-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/no-close-2.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/no-close-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/no-close-2.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/no-close-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/no-comma-1.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/no-comma-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/no-comma-1.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/no-comma-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/inline-table/no-comma-2.toml b/tests/CsToml.Tests/toml-test/invalid/inline-table/no-comma-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/inline-table/no-comma-2.toml rename to tests/CsToml.Tests/toml-test/invalid/inline-table/no-comma-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/integer.multi b/tests/CsToml.Tests/toml-test/invalid/integer/integer.multi index cbfaeca..d438eff 100644 --- a/tests/CsToml.Tests/toml-test/invalid/integer/integer.multi +++ b/tests/CsToml.Tests/toml-test/invalid/integer/integer.multi @@ -1,9 +1,9 @@ -leading-zero-1 = 01 -leading-zero-2 = 00 -leading-zero-3 = 0_0 -leading-zero-sign-1 = -01 -leading-zero-sign-2 = +01 -leading-zero-sign-3 = +0_1 +leading-zero-01 = 01 +leading-zero-02 = 00 +leading-zero-03 = 0_0 +leading-zero-sign-01 = -01 +leading-zero-sign-02 = +01 +leading-zero-sign-03 = +0_1 double-sign-plus = ++99 double-sign-nex = --99 @@ -32,8 +32,8 @@ leading-us-hex = _0x1 leading-us-oct = _0o1 leading-us-bin = _0b1 -invalid-hex-1 = 0xaafz -invalid-hex-2 = 0xgabba00f1 +invalid-hex-01 = 0xaafz +invalid-hex-02 = 0xgabba00f1 invalid-oct = 0o778 invalid-bin = 0b0012 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-01.toml b/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-01.toml new file mode 100644 index 0000000..fdf4049 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-01.toml @@ -0,0 +1 @@ +invalid-hex-01 = 0xaafz diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-02.toml b/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-02.toml new file mode 100644 index 0000000..fb3544b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-02.toml @@ -0,0 +1 @@ +invalid-hex-02 = 0xgabba00f1 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-03.toml b/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-03.toml new file mode 100644 index 0000000..4979d06 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-03.toml @@ -0,0 +1 @@ +a = 0x-1 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-1.toml b/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-1.toml deleted file mode 100644 index 9b6c701..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-1.toml +++ /dev/null @@ -1 +0,0 @@ -invalid-hex-1 = 0xaafz diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-2.toml b/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-2.toml deleted file mode 100644 index f0079aa..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex-2.toml +++ /dev/null @@ -1 +0,0 @@ -invalid-hex-2 = 0xgabba00f1 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex.toml b/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex.toml deleted file mode 100644 index 7cc0e85..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/integer/invalid-hex.toml +++ /dev/null @@ -1 +0,0 @@ -invalid-hex = 0xaafz diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-01.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-01.toml new file mode 100644 index 0000000..4256e36 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-01.toml @@ -0,0 +1 @@ +leading-zero-01 = 01 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-02.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-02.toml new file mode 100644 index 0000000..7f5db1a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-02.toml @@ -0,0 +1 @@ +leading-zero-02 = 00 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-03.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-03.toml new file mode 100644 index 0000000..92e7f91 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-03.toml @@ -0,0 +1 @@ +leading-zero-03 = 0_0 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-1.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-1.toml deleted file mode 100644 index eba6bda..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-1.toml +++ /dev/null @@ -1 +0,0 @@ -leading-zero-1 = 01 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-2.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-2.toml deleted file mode 100644 index 436af56..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-2.toml +++ /dev/null @@ -1 +0,0 @@ -leading-zero-2 = 00 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-3.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-3.toml deleted file mode 100644 index 5404fc8..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-3.toml +++ /dev/null @@ -1 +0,0 @@ -leading-zero-3 = 0_0 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-01.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-01.toml new file mode 100644 index 0000000..3d044ff --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-01.toml @@ -0,0 +1 @@ +leading-zero-sign-01 = -01 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-02.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-02.toml new file mode 100644 index 0000000..70840c7 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-02.toml @@ -0,0 +1 @@ +leading-zero-sign-02 = +01 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-03.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-03.toml new file mode 100644 index 0000000..2dbdf4e --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-03.toml @@ -0,0 +1 @@ +leading-zero-sign-03 = +0_1 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-1.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-1.toml deleted file mode 100644 index 1f15a9d..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-1.toml +++ /dev/null @@ -1 +0,0 @@ -leading-zero-sign-1 = -01 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-2.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-2.toml deleted file mode 100644 index fa259c3..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-2.toml +++ /dev/null @@ -1 +0,0 @@ -leading-zero-sign-2 = +01 diff --git a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-3.toml b/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-3.toml deleted file mode 100644 index 3ac64a5..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/integer/leading-zero-sign-3.toml +++ /dev/null @@ -1 +0,0 @@ -leading-zero-sign-3 = +0_1 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/bare-invalid-character-01.toml b/tests/CsToml.Tests/toml-test/invalid/key/bare-invalid-character-01.toml new file mode 100644 index 0000000..bb5e51b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/bare-invalid-character-01.toml @@ -0,0 +1 @@ +! = 123 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/bare-invalid-character.toml b/tests/CsToml.Tests/toml-test/invalid/key/bare-invalid-character-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/bare-invalid-character.toml rename to tests/CsToml.Tests/toml-test/invalid/key/bare-invalid-character-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/dot.toml b/tests/CsToml.Tests/toml-test/invalid/key/dot.toml new file mode 100644 index 0000000..abdb372 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/dot.toml @@ -0,0 +1 @@ +. = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/dotdot.toml b/tests/CsToml.Tests/toml-test/invalid/key/dotdot.toml new file mode 100644 index 0000000..5280d28 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/dotdot.toml @@ -0,0 +1 @@ +.. = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/dotted-redefine-table-1.toml b/tests/CsToml.Tests/toml-test/invalid/key/dotted-redefine-table-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/dotted-redefine-table-1.toml rename to tests/CsToml.Tests/toml-test/invalid/key/dotted-redefine-table-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/dotted-redefine-table-2.toml b/tests/CsToml.Tests/toml-test/invalid/key/dotted-redefine-table-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/dotted-redefine-table-2.toml rename to tests/CsToml.Tests/toml-test/invalid/key/dotted-redefine-table-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-1.toml b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-1.toml rename to tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-2.toml b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-2.toml rename to tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-3.toml b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-3.toml rename to tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-4.toml b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-4.toml rename to tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-05.toml b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-05.toml new file mode 100644 index 0000000..5422641 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-05.toml @@ -0,0 +1,2 @@ +a = 1 +"\u0061" = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-06.toml b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-06.toml new file mode 100644 index 0000000..5deeb47 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-06.toml @@ -0,0 +1,2 @@ +"a'b" = 1 +"a\u0027b" = 2 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-07.toml b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-07.toml new file mode 100644 index 0000000..6ebc94b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-07.toml @@ -0,0 +1,2 @@ +"" = 1 +"" = 2 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-08.toml b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-08.toml new file mode 100644 index 0000000..bd55d6d --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-08.toml @@ -0,0 +1,2 @@ +arr = [1] +arr = [2] diff --git a/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-09.toml b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-09.toml new file mode 100644 index 0000000..9b78689 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/duplicate-keys-09.toml @@ -0,0 +1,2 @@ +tbl = {k=1} +tbl = {kk=2} diff --git a/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-01.toml b/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-01.toml new file mode 100644 index 0000000..1c5787e --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-01.toml @@ -0,0 +1 @@ +"""key""" = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-02.toml b/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-02.toml new file mode 100644 index 0000000..91bc398 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-02.toml @@ -0,0 +1 @@ +'''key''' = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-03.toml b/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-03.toml new file mode 100644 index 0000000..7d6f237 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-03.toml @@ -0,0 +1 @@ +"""key""" = """v""" diff --git a/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-04.toml b/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-04.toml new file mode 100644 index 0000000..27fe86f --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/multiline-key-04.toml @@ -0,0 +1 @@ +'''key''' = '''v''' diff --git a/tests/CsToml.Tests/toml-test/invalid/key/newline-1.toml b/tests/CsToml.Tests/toml-test/invalid/key/newline-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/newline-1.toml rename to tests/CsToml.Tests/toml-test/invalid/key/newline-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/newline-2.toml b/tests/CsToml.Tests/toml-test/invalid/key/newline-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/newline-2.toml rename to tests/CsToml.Tests/toml-test/invalid/key/newline-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/newline-3.toml b/tests/CsToml.Tests/toml-test/invalid/key/newline-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/newline-3.toml rename to tests/CsToml.Tests/toml-test/invalid/key/newline-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/newline-4.toml b/tests/CsToml.Tests/toml-test/invalid/key/newline-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/newline-4.toml rename to tests/CsToml.Tests/toml-test/invalid/key/newline-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/newline-5.toml b/tests/CsToml.Tests/toml-test/invalid/key/newline-05.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/newline-5.toml rename to tests/CsToml.Tests/toml-test/invalid/key/newline-05.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/newline-06.toml b/tests/CsToml.Tests/toml-test/invalid/key/newline-06.toml new file mode 100644 index 0000000..d727539 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/newline-06.toml @@ -0,0 +1,2 @@ +key = +1 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/no-eol.toml b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/no-eol.toml rename to tests/CsToml.Tests/toml-test/invalid/key/no-eol-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/no-eol-02.toml b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-02.toml new file mode 100644 index 0000000..63b2d2c --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-02.toml @@ -0,0 +1 @@ +0=0r=false diff --git a/tests/CsToml.Tests/toml-test/invalid/key/no-eol-03.toml b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-03.toml new file mode 100644 index 0000000..1c1370b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-03.toml @@ -0,0 +1 @@ +0=""o=""m=""r=""00="0"q="""0"""e="""0""" diff --git a/tests/CsToml.Tests/toml-test/invalid/key/no-eol-04.toml b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-04.toml new file mode 100644 index 0000000..73a2db7 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-04.toml @@ -0,0 +1,4 @@ +[[0000l0]] +0="0"[[0000l0]] +0="0"[[0000l0]] +0="0"l="0" diff --git a/tests/CsToml.Tests/toml-test/invalid/key/no-eol-05.toml b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-05.toml new file mode 100644 index 0000000..eb94ae8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-05.toml @@ -0,0 +1 @@ +0=[0]00=[0,0,0]t=["0","0","0"]s=[1000-00-00T00:00:00Z,2000-00-00T00:00:00Z] diff --git a/tests/CsToml.Tests/toml-test/invalid/key/no-eol-06.toml b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-06.toml new file mode 100644 index 0000000..f24da93 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-06.toml @@ -0,0 +1 @@ +0=0r0=0r=false diff --git a/tests/CsToml.Tests/toml-test/invalid/key/no-eol-07.toml b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-07.toml new file mode 100644 index 0000000..d82c33b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/no-eol-07.toml @@ -0,0 +1 @@ +0=0r0=0r=falsefal=false diff --git a/tests/CsToml.Tests/toml-test/invalid/key/only-float.toml b/tests/CsToml.Tests/toml-test/invalid/key/only-float.toml new file mode 100644 index 0000000..9459d4b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/only-float.toml @@ -0,0 +1 @@ +1.1 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/only-int.toml b/tests/CsToml.Tests/toml-test/invalid/key/only-int.toml new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/only-int.toml @@ -0,0 +1 @@ +1 diff --git a/tests/CsToml.Tests/toml-test/invalid/key/only-str.toml b/tests/CsToml.Tests/toml-test/invalid/key/only-str.toml new file mode 100644 index 0000000..e16c76d --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/key/only-str.toml @@ -0,0 +1 @@ +"" diff --git a/tests/CsToml.Tests/toml-test/invalid/key/quoted-unclosed-1.toml b/tests/CsToml.Tests/toml-test/invalid/key/quoted-unclosed-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/quoted-unclosed-1.toml rename to tests/CsToml.Tests/toml-test/invalid/key/quoted-unclosed-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/quoted-unclosed-2.toml b/tests/CsToml.Tests/toml-test/invalid/key/quoted-unclosed-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/quoted-unclosed-2.toml rename to tests/CsToml.Tests/toml-test/invalid/key/quoted-unclosed-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/two-equals-1.toml b/tests/CsToml.Tests/toml-test/invalid/key/two-equals-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/two-equals-1.toml rename to tests/CsToml.Tests/toml-test/invalid/key/two-equals-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/two-equals-2.toml b/tests/CsToml.Tests/toml-test/invalid/key/two-equals-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/two-equals-2.toml rename to tests/CsToml.Tests/toml-test/invalid/key/two-equals-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/two-equals-3.toml b/tests/CsToml.Tests/toml-test/invalid/key/two-equals-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/two-equals-3.toml rename to tests/CsToml.Tests/toml-test/invalid/key/two-equals-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/without-value-1.toml b/tests/CsToml.Tests/toml-test/invalid/key/without-value-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/without-value-1.toml rename to tests/CsToml.Tests/toml-test/invalid/key/without-value-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/without-value-2.toml b/tests/CsToml.Tests/toml-test/invalid/key/without-value-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/without-value-2.toml rename to tests/CsToml.Tests/toml-test/invalid/key/without-value-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/without-value-3.toml b/tests/CsToml.Tests/toml-test/invalid/key/without-value-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/without-value-3.toml rename to tests/CsToml.Tests/toml-test/invalid/key/without-value-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/without-value-4.toml b/tests/CsToml.Tests/toml-test/invalid/key/without-value-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/without-value-4.toml rename to tests/CsToml.Tests/toml-test/invalid/key/without-value-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/without-value-5.toml b/tests/CsToml.Tests/toml-test/invalid/key/without-value-05.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/without-value-5.toml rename to tests/CsToml.Tests/toml-test/invalid/key/without-value-05.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/without-value-6.toml b/tests/CsToml.Tests/toml-test/invalid/key/without-value-06.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/without-value-6.toml rename to tests/CsToml.Tests/toml-test/invalid/key/without-value-06.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/key/without-value-7.toml b/tests/CsToml.Tests/toml-test/invalid/key/without-value-07.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/key/without-value-7.toml rename to tests/CsToml.Tests/toml-test/invalid/key/without-value-07.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/local-date/day-1digit.toml b/tests/CsToml.Tests/toml-test/invalid/local-date/day-1digit.toml new file mode 100644 index 0000000..4d899a6 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/local-date/day-1digit.toml @@ -0,0 +1 @@ +foo = 1997-09-9 diff --git a/tests/CsToml.Tests/toml-test/invalid/local-date/year-3digits.toml b/tests/CsToml.Tests/toml-test/invalid/local-date/year-3digits.toml new file mode 100644 index 0000000..565a1ef --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/local-date/year-3digits.toml @@ -0,0 +1 @@ +foo = 199-09-09 diff --git a/tests/CsToml.Tests/toml-test/invalid/local-time/time-no-leads.toml b/tests/CsToml.Tests/toml-test/invalid/local-time/time-no-leads-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/local-time/time-no-leads.toml rename to tests/CsToml.Tests/toml-test/invalid/local-time/time-no-leads-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/local-time/time-no-leads-2.toml b/tests/CsToml.Tests/toml-test/invalid/local-time/time-no-leads-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/local-time/time-no-leads-2.toml rename to tests/CsToml.Tests/toml-test/invalid/local-time/time-no-leads-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/local-time/trailing-dot.toml b/tests/CsToml.Tests/toml-test/invalid/local-time/trailing-dot.toml new file mode 100644 index 0000000..611f723 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/local-time/trailing-dot.toml @@ -0,0 +1 @@ +t = 12:13:14. diff --git a/tests/CsToml.Tests/toml-test/invalid/local-time/trailing-dotdot.toml b/tests/CsToml.Tests/toml-test/invalid/local-time/trailing-dotdot.toml new file mode 100644 index 0000000..e2ab42c --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/local-time/trailing-dotdot.toml @@ -0,0 +1 @@ +t = 12:13:14.. diff --git a/tests/CsToml.Tests/toml-test/invalid/spec/inline-table-2-0.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/inline-table-2-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/spec/inline-table-2-0.toml rename to tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/inline-table-2-0.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/spec/inline-table-3-0.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/inline-table-3-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/spec/inline-table-3-0.toml rename to tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/inline-table-3-0.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/spec/key-value-pair-1.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/key-value-pair-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/spec/key-value-pair-1.toml rename to tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/key-value-pair-1.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/spec/keys-2.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/keys-2.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/spec/keys-2.toml rename to tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/keys-2.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/spec/string-4-0.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/string-4-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/spec/string-4-0.toml rename to tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/string-4-0.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/spec/string-7-0.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/string-7-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/spec/string-7-0.toml rename to tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/string-7-0.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/spec/table-9-0.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/table-9-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/spec/table-9-0.toml rename to tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/table-9-0.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/spec/table-9-1.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/table-9-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/spec/table-9-1.toml rename to tests/CsToml.Tests/toml-test/invalid/spec-1.0.0/table-9-1.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-16-0.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-16-0.toml new file mode 100644 index 0000000..72071ea --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-16-0.toml @@ -0,0 +1,7 @@ +str4 = """Here are two quotation marks: "". Simple enough.""" +str5 = """Here are three quotation marks: """.""" # INVALID +str5 = """Here are three quotation marks: ""\".""" +str6 = """Here are fifteen quotation marks: ""\"""\"""\"""\"""\".""" + +# "This," she said, "is just a pointless statement." +str7 = """"This," she said, "is just a pointless statement."""" diff --git a/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-19-0.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-19-0.toml new file mode 100644 index 0000000..7b20aec --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-19-0.toml @@ -0,0 +1,7 @@ +quot15 = '''Here are fifteen quotation marks: """""""""""""""''' + +apos15 = '''Here are fifteen apostrophes: '''''''''''''''''' # INVALID +apos15 = "Here are fifteen apostrophes: '''''''''''''''" + +# 'That,' she said, 'is still pointless.' +str = ''''That,' she said, 'is still pointless.'''' diff --git a/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-2.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-2.toml new file mode 100644 index 0000000..56f085a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-2.toml @@ -0,0 +1 @@ +key = # INVALID diff --git a/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-46-0.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-46-0.toml new file mode 100644 index 0000000..adc3841 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-46-0.toml @@ -0,0 +1,9 @@ +[fruit] +apple.color = "red" +apple.taste.sweet = true + +[fruit.apple] # INVALID +# [fruit.apple.taste] # INVALID + +[fruit.apple.texture] # you can add sub-tables +smooth = true diff --git a/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-46-1.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-46-1.toml new file mode 100644 index 0000000..3b5644e --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-46-1.toml @@ -0,0 +1,9 @@ +[fruit] +apple.color = "red" +apple.taste.sweet = true + +# [fruit.apple] # INVALID +[fruit.apple.taste] # INVALID + +[fruit.apple.texture] # you can add sub-tables +smooth = true diff --git a/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-49-0.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-49-0.toml new file mode 100644 index 0000000..7689e14 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-49-0.toml @@ -0,0 +1,3 @@ +[product] +type = { name = "Nail" } +type.edible = false # INVALID diff --git a/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-5.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-5.toml new file mode 100644 index 0000000..e513e3b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-5.toml @@ -0,0 +1,4 @@ += "no key name" # INVALID +"""key""" = "not allowed" # INVALID +"" = "blank" # VALID but discouraged +'' = 'blank' # VALID but discouraged diff --git a/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-50-0.toml b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-50-0.toml new file mode 100644 index 0000000..d6937eb --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/spec-1.1.0/common-50-0.toml @@ -0,0 +1,3 @@ +[product] +type.name = "Nail" +type = { edible = false } # INVALID diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/bad-escape-1.toml rename to tests/CsToml.Tests/toml-test/invalid/string/bad-escape-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/bad-escape-2.toml rename to tests/CsToml.Tests/toml-test/invalid/string/bad-escape-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-3.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/bad-escape-3.toml rename to tests/CsToml.Tests/toml-test/invalid/string/bad-escape-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-04.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-04.toml new file mode 100644 index 0000000..f14c094 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-04.toml @@ -0,0 +1 @@ +a = "a \\\ b" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-05.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-05.toml new file mode 100644 index 0000000..23585e6 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-escape-05.toml @@ -0,0 +1 @@ +a = "a \\\\\ b" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-01.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-01.toml new file mode 100644 index 0000000..0d1e7b8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-01.toml @@ -0,0 +1 @@ +bad-hex-esc-01 = "\x0g" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-02.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-02.toml new file mode 100644 index 0000000..617a7b7 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-02.toml @@ -0,0 +1 @@ +bad-hex-esc-02 = "\xG0" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-03.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-03.toml new file mode 100644 index 0000000..194d9e6 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-03.toml @@ -0,0 +1 @@ +bad-hex-esc-03 = "\x" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-04.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-04.toml new file mode 100644 index 0000000..01fc655 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-04.toml @@ -0,0 +1 @@ +bad-hex-esc-04 = "\x 50" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-5.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-05.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-5.toml rename to tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-05.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-1.toml deleted file mode 100644 index 199c961..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-1.toml +++ /dev/null @@ -1 +0,0 @@ -bad-hex-esc-1 = "\x0g" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-2.toml deleted file mode 100644 index 3ff0765..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-2.toml +++ /dev/null @@ -1 +0,0 @@ -bad-hex-esc-2 = "\xG0" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-3.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-3.toml deleted file mode 100644 index 5a1df54..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-3.toml +++ /dev/null @@ -1 +0,0 @@ -bad-hex-esc-3 = "\x" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-4.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-4.toml deleted file mode 100644 index 4df871b..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-hex-esc-4.toml +++ /dev/null @@ -1 +0,0 @@ -bad-hex-esc-4 = "\x 50" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-01.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-01.toml new file mode 100644 index 0000000..4892098 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-01.toml @@ -0,0 +1 @@ +bad-uni-esc-01 = "val\ue" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-02.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-02.toml new file mode 100644 index 0000000..cae01c5 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-02.toml @@ -0,0 +1 @@ +bad-uni-esc-02 = "val\Ux" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-03.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-03.toml new file mode 100644 index 0000000..6a8feb0 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-03.toml @@ -0,0 +1 @@ +bad-uni-esc-03 = "val\U0000000" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-04.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-04.toml new file mode 100644 index 0000000..3752983 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-04.toml @@ -0,0 +1 @@ +bad-uni-esc-04 = "val\U0000" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-05.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-05.toml new file mode 100644 index 0000000..90f5755 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-05.toml @@ -0,0 +1 @@ +bad-uni-esc-05 = "val\Ugggggggg" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-06.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-06.toml new file mode 100644 index 0000000..304b89a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-06.toml @@ -0,0 +1 @@ +bad-uni-esc-06 = "This string contains a non scalar unicode codepoint \uD801" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-07.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-07.toml new file mode 100644 index 0000000..072812a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-07.toml @@ -0,0 +1 @@ +bad-uni-esc-07 = "\uabag" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-1.toml deleted file mode 100644 index 36de1d1..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-1.toml +++ /dev/null @@ -1 +0,0 @@ -bad-uni-esc-1 = "val\ue" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-2.toml deleted file mode 100644 index 0c5a6e3..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-2.toml +++ /dev/null @@ -1 +0,0 @@ -bad-uni-esc-2 = "val\Ux" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-3.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-3.toml deleted file mode 100644 index 1909da7..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-3.toml +++ /dev/null @@ -1 +0,0 @@ -bad-uni-esc-3 = "val\U0000000" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-4.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-4.toml deleted file mode 100644 index 68f0942..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-4.toml +++ /dev/null @@ -1 +0,0 @@ -bad-uni-esc-4 = "val\U0000" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-5.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-5.toml deleted file mode 100644 index be5322b..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-5.toml +++ /dev/null @@ -1 +0,0 @@ -bad-uni-esc-5 = "val\Ugggggggg" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-6.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-6.toml deleted file mode 100644 index aa67c4b..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-6.toml +++ /dev/null @@ -1 +0,0 @@ -bad-uni-esc-6 = "This string contains a non scalar unicode codepoint \uD801" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-7.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-7.toml deleted file mode 100644 index bda89b3..0000000 --- a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-7.toml +++ /dev/null @@ -1 +0,0 @@ -bad-uni-esc-7 = "\uabag" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-01.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-01.toml new file mode 100644 index 0000000..23fc999 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-01.toml @@ -0,0 +1 @@ +bad-uni-esc-ml-01 = """val\ue""" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-02.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-02.toml new file mode 100644 index 0000000..5e0cc06 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-02.toml @@ -0,0 +1 @@ +bad-uni-esc-ml-02 = """val\Ux""" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-03.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-03.toml new file mode 100644 index 0000000..62bc2f7 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-03.toml @@ -0,0 +1 @@ +bad-uni-esc-ml-03 = """val\U0000000""" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-04.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-04.toml new file mode 100644 index 0000000..1c2ee76 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-04.toml @@ -0,0 +1 @@ +bad-uni-esc-ml-04 = """val\U0000""" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-05.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-05.toml new file mode 100644 index 0000000..76222c4 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-05.toml @@ -0,0 +1 @@ +bad-uni-esc-ml-05 = """val\Ugggggggg""" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-06.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-06.toml new file mode 100644 index 0000000..798a26d --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-06.toml @@ -0,0 +1 @@ +bad-uni-esc-ml-06 = """This string contains a non scalar unicode codepoint \uD801""" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-07.toml b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-07.toml new file mode 100644 index 0000000..12a84c7 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/bad-uni-esc-ml-07.toml @@ -0,0 +1 @@ +bad-uni-esc-ml-07 = """\uabag""" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/basic-multiline-out-of-range-unicode-escape-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/basic-multiline-out-of-range-unicode-escape-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/basic-multiline-out-of-range-unicode-escape-1.toml rename to tests/CsToml.Tests/toml-test/invalid/string/basic-multiline-out-of-range-unicode-escape-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/basic-multiline-out-of-range-unicode-escape-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/basic-multiline-out-of-range-unicode-escape-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/basic-multiline-out-of-range-unicode-escape-2.toml rename to tests/CsToml.Tests/toml-test/invalid/string/basic-multiline-out-of-range-unicode-escape-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/basic-out-of-range-unicode-escape-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/basic-out-of-range-unicode-escape-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/basic-out-of-range-unicode-escape-1.toml rename to tests/CsToml.Tests/toml-test/invalid/string/basic-out-of-range-unicode-escape-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/basic-out-of-range-unicode-escape-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/basic-out-of-range-unicode-escape-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/basic-out-of-range-unicode-escape-2.toml rename to tests/CsToml.Tests/toml-test/invalid/string/basic-out-of-range-unicode-escape-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/literal-multiline-quotes-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/literal-multiline-quotes-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/literal-multiline-quotes-1.toml rename to tests/CsToml.Tests/toml-test/invalid/string/literal-multiline-quotes-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/literal-multiline-quotes-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/literal-multiline-quotes-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/literal-multiline-quotes-2.toml rename to tests/CsToml.Tests/toml-test/invalid/string/literal-multiline-quotes-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/missing-quotes-array.toml b/tests/CsToml.Tests/toml-test/invalid/string/missing-quotes-array.toml new file mode 100644 index 0000000..71c9a51 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/missing-quotes-array.toml @@ -0,0 +1 @@ +name = [value] diff --git a/tests/CsToml.Tests/toml-test/invalid/string/missing-quotes-inline-table.toml b/tests/CsToml.Tests/toml-test/invalid/string/missing-quotes-inline-table.toml new file mode 100644 index 0000000..46cb50a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/missing-quotes-inline-table.toml @@ -0,0 +1 @@ +name = { key = value } diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-1.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-2.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-3.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-3.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-4.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-4.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-bad-escape-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-escape-space-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-escape-space-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-escape-space-1.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-escape-space-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-escape-space-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-escape-space-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-escape-space-2.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-escape-space-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-1.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-2.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-3.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-3.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-4.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-4.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-lit-no-close-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-1.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-2.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-3.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-3.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-4.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-4.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-5.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-05.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-5.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-no-close-05.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/multiline-quotes-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/multiline-quotes-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/multiline-quotes-1.toml rename to tests/CsToml.Tests/toml-test/invalid/string/multiline-quotes-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-close-1.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-close-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/no-close-1.toml rename to tests/CsToml.Tests/toml-test/invalid/string/no-close-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-close-2.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-close-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/no-close-2.toml rename to tests/CsToml.Tests/toml-test/invalid/string/no-close-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-close-3.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-close-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/no-close-3.toml rename to tests/CsToml.Tests/toml-test/invalid/string/no-close-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-close-4.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-close-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/string/no-close-4.toml rename to tests/CsToml.Tests/toml-test/invalid/string/no-close-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-close-05.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-close-05.toml new file mode 100644 index 0000000..9481f4f --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-close-05.toml @@ -0,0 +1,2 @@ +# No newline at end +no-ending-quote = "One time, at band camp \ No newline at end of file diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-close-06.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-close-06.toml new file mode 100644 index 0000000..b788c81 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-close-06.toml @@ -0,0 +1,2 @@ +# No newline at end +"a-string".must-be = "closed \ No newline at end of file diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-close-07.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-close-07.toml new file mode 100644 index 0000000..e68f27a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-close-07.toml @@ -0,0 +1,2 @@ +# No newline at end +no-ending-quote = 'One time, at band camp \ No newline at end of file diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-close-08.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-close-08.toml new file mode 100644 index 0000000..4ec3e4a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-close-08.toml @@ -0,0 +1,2 @@ +# No newline at end +'a-string'.must-be = 'closed \ No newline at end of file diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-close-09.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-close-09.toml new file mode 100644 index 0000000..7786c82 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-close-09.toml @@ -0,0 +1,3 @@ +# Newlines are not allowed in "-strings. +a = " +" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-close-10.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-close-10.toml new file mode 100644 index 0000000..7a29c28 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-close-10.toml @@ -0,0 +1,3 @@ +# Newlines are not allowed in '-strings. +a = ' +' diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-open-01.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-open-01.toml new file mode 100644 index 0000000..bb8938b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-open-01.toml @@ -0,0 +1 @@ +s = a" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-open-02.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-open-02.toml new file mode 100644 index 0000000..7251b87 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-open-02.toml @@ -0,0 +1 @@ +a = [a"] diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-open-03.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-open-03.toml new file mode 100644 index 0000000..e79799d --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-open-03.toml @@ -0,0 +1 @@ +s = a' diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-open-04.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-open-04.toml new file mode 100644 index 0000000..bdc7b95 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-open-04.toml @@ -0,0 +1 @@ +a = [a'] diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-open-05.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-open-05.toml new file mode 100644 index 0000000..aa3b4f6 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-open-05.toml @@ -0,0 +1 @@ +a = a""" diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-open-06.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-open-06.toml new file mode 100644 index 0000000..3f25fbb --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-open-06.toml @@ -0,0 +1 @@ +a = [a"""] diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-open-07.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-open-07.toml new file mode 100644 index 0000000..ef0eed3 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-open-07.toml @@ -0,0 +1 @@ +a = a''' diff --git a/tests/CsToml.Tests/toml-test/invalid/string/no-open-08.toml b/tests/CsToml.Tests/toml-test/invalid/string/no-open-08.toml new file mode 100644 index 0000000..d557838 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/string/no-open-08.toml @@ -0,0 +1 @@ +a = [a'''] diff --git a/tests/CsToml.Tests/toml-test/invalid/string/string.multi b/tests/CsToml.Tests/toml-test/invalid/string/string.multi index c4c763b..a7d14a6 100644 --- a/tests/CsToml.Tests/toml-test/invalid/string/string.multi +++ b/tests/CsToml.Tests/toml-test/invalid/string/string.multi @@ -1,12 +1,20 @@ -bad-hex-esc-1 = "\x0g" -bad-hex-esc-2 = "\xG0" -bad-hex-esc-3 = "\x" -bad-hex-esc-4 = "\x 50" +bad-hex-esc-01 = "\x0g" +bad-hex-esc-02 = "\xG0" +bad-hex-esc-03 = "\x" +bad-hex-esc-04 = "\x 50" -bad-uni-esc-1 = "val\ue" -bad-uni-esc-2 = "val\Ux" -bad-uni-esc-3 = "val\U0000000" -bad-uni-esc-4 = "val\U0000" -bad-uni-esc-5 = "val\Ugggggggg" -bad-uni-esc-6 = "This string contains a non scalar unicode codepoint \uD801" -bad-uni-esc-7 = "\uabag" +bad-uni-esc-01 = "val\ue" +bad-uni-esc-02 = "val\Ux" +bad-uni-esc-03 = "val\U0000000" +bad-uni-esc-04 = "val\U0000" +bad-uni-esc-05 = "val\Ugggggggg" +bad-uni-esc-06 = "This string contains a non scalar unicode codepoint \uD801" +bad-uni-esc-07 = "\uabag" + +bad-uni-esc-ml-01 = """val\ue""" +bad-uni-esc-ml-02 = """val\Ux""" +bad-uni-esc-ml-03 = """val\U0000000""" +bad-uni-esc-ml-04 = """val\U0000""" +bad-uni-esc-ml-05 = """val\Ugggggggg""" +bad-uni-esc-ml-06 = """This string contains a non scalar unicode codepoint \uD801""" +bad-uni-esc-ml-07 = """\uabag""" diff --git a/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-1.toml b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-1.toml rename to tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-2.toml b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-2.toml rename to tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/append-to-array-with-dotted-keys.toml b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/append-to-array-with-dotted-keys.toml rename to tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-04.toml b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-04.toml new file mode 100644 index 0000000..a8c7732 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-04.toml @@ -0,0 +1,8 @@ +[dependencies.foo] +version = "0.16" + +[dependencies] +libc = "0.2" + +[dependencies] +rand = "0.3.14" diff --git a/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-05.toml b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-05.toml new file mode 100644 index 0000000..b5469fe --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-05.toml @@ -0,0 +1,2 @@ +a.b.c = 1 +a.b = 2 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-06.toml b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-06.toml new file mode 100644 index 0000000..9d88c6b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-06.toml @@ -0,0 +1,2 @@ +a = 1 +a.b = 2 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-07.toml b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-07.toml new file mode 100644 index 0000000..0c9d17f --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/append-with-dotted-keys-07.toml @@ -0,0 +1 @@ +a = {k1 = 1, k1.name = "joe"} diff --git a/tests/CsToml.Tests/toml-test/invalid/table/array-no-close-1.toml b/tests/CsToml.Tests/toml-test/invalid/table/array-no-close-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/array-no-close-1.toml rename to tests/CsToml.Tests/toml-test/invalid/table/array-no-close-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/array-no-close-2.toml b/tests/CsToml.Tests/toml-test/invalid/table/array-no-close-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/array-no-close-2.toml rename to tests/CsToml.Tests/toml-test/invalid/table/array-no-close-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/array-no-close-03.toml b/tests/CsToml.Tests/toml-test/invalid/table/array-no-close-03.toml new file mode 100644 index 0000000..921bf2b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/array-no-close-03.toml @@ -0,0 +1,2 @@ +[[a +[[b]] diff --git a/tests/CsToml.Tests/toml-test/invalid/table/array-no-close-04.toml b/tests/CsToml.Tests/toml-test/invalid/table/array-no-close-04.toml new file mode 100644 index 0000000..babc8f7 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/array-no-close-04.toml @@ -0,0 +1,2 @@ +[[a +b = 2 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/bare-invalid-character-01.toml b/tests/CsToml.Tests/toml-test/invalid/table/bare-invalid-character-01.toml new file mode 100644 index 0000000..0306228 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/bare-invalid-character-01.toml @@ -0,0 +1,2 @@ +[!] +k = 123 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/bare-invalid-character-02.toml b/tests/CsToml.Tests/toml-test/invalid/table/bare-invalid-character-02.toml new file mode 100644 index 0000000..1eed833 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/bare-invalid-character-02.toml @@ -0,0 +1,2 @@ +[bare!key] +k = 123 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/dot.toml b/tests/CsToml.Tests/toml-test/invalid/table/dot.toml new file mode 100644 index 0000000..9b28c7b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/dot.toml @@ -0,0 +1,2 @@ +[.] +k = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/dotdot.toml b/tests/CsToml.Tests/toml-test/invalid/table/dotdot.toml new file mode 100644 index 0000000..f32d818 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/dotdot.toml @@ -0,0 +1,2 @@ +[..] +k = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/duplicate.toml b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/duplicate.toml rename to tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-table.toml b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-table.toml rename to tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-dotted-array.toml b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-dotted-array.toml rename to tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-dotted-table.toml b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-dotted-table.toml rename to tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-dotted-table2.toml b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-05.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-dotted-table2.toml rename to tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-05.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/duplicate-table-array.toml b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-06.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/duplicate-table-array.toml rename to tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-06.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/duplicate-table-array2.toml b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-07.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/duplicate-table-array2.toml rename to tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-07.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-08.toml b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-08.toml new file mode 100644 index 0000000..4eb91fa --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-08.toml @@ -0,0 +1,4 @@ +[a] +b = { c = 2, d = {} } +[a.b] +c = 2 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-09.toml b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-09.toml new file mode 100644 index 0000000..1e4ac8a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-09.toml @@ -0,0 +1,5 @@ +[a] +foo="bar" +[a.b] +foo="bar" +[a] diff --git a/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-10.toml b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-10.toml new file mode 100644 index 0000000..5b33ed9 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/duplicate-key-10.toml @@ -0,0 +1,2 @@ +a = [] +[[a.b]] diff --git a/tests/CsToml.Tests/toml-test/invalid/table/multiline-key-01.toml b/tests/CsToml.Tests/toml-test/invalid/table/multiline-key-01.toml new file mode 100644 index 0000000..029b70c --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/multiline-key-01.toml @@ -0,0 +1,2 @@ +["""tbl"""] +k = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/multiline-key-02.toml b/tests/CsToml.Tests/toml-test/invalid/table/multiline-key-02.toml new file mode 100644 index 0000000..ef2929a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/multiline-key-02.toml @@ -0,0 +1,2 @@ +['''tbl'''] +k = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/newline-01.toml b/tests/CsToml.Tests/toml-test/invalid/table/newline-01.toml new file mode 100644 index 0000000..b02f9a9 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/newline-01.toml @@ -0,0 +1,3 @@ +[tbl +] +k = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/newline-02.toml b/tests/CsToml.Tests/toml-test/invalid/table/newline-02.toml new file mode 100644 index 0000000..2b724b0 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/newline-02.toml @@ -0,0 +1,3 @@ +["tbl +"] +k = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/newline-03.toml b/tests/CsToml.Tests/toml-test/invalid/table/newline-03.toml new file mode 100644 index 0000000..debc041 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/newline-03.toml @@ -0,0 +1,3 @@ +["tbl" +] +k = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/newline-04.toml b/tests/CsToml.Tests/toml-test/invalid/table/newline-04.toml new file mode 100644 index 0000000..466435d --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/newline-04.toml @@ -0,0 +1,3 @@ +[tbl. +] +k = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/newline-05.toml b/tests/CsToml.Tests/toml-test/invalid/table/newline-05.toml new file mode 100644 index 0000000..91d22bb --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/newline-05.toml @@ -0,0 +1,3 @@ +[tbl +.sub] +k = 1 diff --git a/tests/CsToml.Tests/toml-test/invalid/table/no-close-1.toml b/tests/CsToml.Tests/toml-test/invalid/table/no-close-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/no-close-1.toml rename to tests/CsToml.Tests/toml-test/invalid/table/no-close-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/no-close-2.toml b/tests/CsToml.Tests/toml-test/invalid/table/no-close-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/no-close-2.toml rename to tests/CsToml.Tests/toml-test/invalid/table/no-close-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/no-close-3.toml b/tests/CsToml.Tests/toml-test/invalid/table/no-close-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/no-close-3.toml rename to tests/CsToml.Tests/toml-test/invalid/table/no-close-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/no-close-4.toml b/tests/CsToml.Tests/toml-test/invalid/table/no-close-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/no-close-4.toml rename to tests/CsToml.Tests/toml-test/invalid/table/no-close-04.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/no-close-5.toml b/tests/CsToml.Tests/toml-test/invalid/table/no-close-05.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/no-close-5.toml rename to tests/CsToml.Tests/toml-test/invalid/table/no-close-05.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/no-close-06.toml b/tests/CsToml.Tests/toml-test/invalid/table/no-close-06.toml new file mode 100644 index 0000000..d22dd11 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/no-close-06.toml @@ -0,0 +1,4 @@ +[a +[b] +[c +[d] diff --git a/tests/CsToml.Tests/toml-test/invalid/table/no-close-07.toml b/tests/CsToml.Tests/toml-test/invalid/table/no-close-07.toml new file mode 100644 index 0000000..efa1f25 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/no-close-07.toml @@ -0,0 +1 @@ +['] diff --git a/tests/CsToml.Tests/toml-test/invalid/table/no-close-08.toml b/tests/CsToml.Tests/toml-test/invalid/table/no-close-08.toml new file mode 100644 index 0000000..0f53629 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/no-close-08.toml @@ -0,0 +1 @@ +['''] diff --git a/tests/CsToml.Tests/toml-test/invalid/table/no-close-09.toml b/tests/CsToml.Tests/toml-test/invalid/table/no-close-09.toml new file mode 100644 index 0000000..6473718 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/no-close-09.toml @@ -0,0 +1,2 @@ +["where will it end""] +name = value diff --git a/tests/CsToml.Tests/toml-test/invalid/table/redefine-1.toml b/tests/CsToml.Tests/toml-test/invalid/table/redefine-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/redefine-1.toml rename to tests/CsToml.Tests/toml-test/invalid/table/redefine-01.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/redefine-2.toml b/tests/CsToml.Tests/toml-test/invalid/table/redefine-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/redefine-2.toml rename to tests/CsToml.Tests/toml-test/invalid/table/redefine-02.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/redefine-3.toml b/tests/CsToml.Tests/toml-test/invalid/table/redefine-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/invalid/table/redefine-3.toml rename to tests/CsToml.Tests/toml-test/invalid/table/redefine-03.toml diff --git a/tests/CsToml.Tests/toml-test/invalid/table/trailing-dot.toml b/tests/CsToml.Tests/toml-test/invalid/table/trailing-dot.toml new file mode 100644 index 0000000..ef6d4c1 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/invalid/table/trailing-dot.toml @@ -0,0 +1 @@ +[a.] diff --git a/tests/CsToml.Tests/toml-test/valid/array/array.json b/tests/CsToml.Tests/toml-test/valid/array/array.json index 0fa1565..382c03f 100644 --- a/tests/CsToml.Tests/toml-test/valid/array/array.json +++ b/tests/CsToml.Tests/toml-test/valid/array/array.json @@ -5,8 +5,9 @@ ], "dates": [ {"type": "datetime", "value": "1987-07-05T17:45:00Z"}, - {"type": "datetime", "value": "1979-05-27T07:32:00Z"}, - {"type": "datetime", "value": "2006-06-01T11:00:00Z"} + {"type": "datetime-local", "value": "1979-05-27T07:32:00"}, + {"type": "date-local", "value": "2006-06-01"}, + {"type": "time-local", "value": "11:00:00"} ], "floats": [ {"type": "float", "value": "1.1"}, diff --git a/tests/CsToml.Tests/toml-test/valid/array/array.toml b/tests/CsToml.Tests/toml-test/valid/array/array.toml index ab88465..6ba4402 100644 --- a/tests/CsToml.Tests/toml-test/valid/array/array.toml +++ b/tests/CsToml.Tests/toml-test/valid/array/array.toml @@ -2,9 +2,10 @@ ints = [1, 2, 3, ] floats = [1.1, 2.1, 3.1] strings = ["a", "b", "c"] dates = [ - 1987-07-05T17:45:00Z, - 1979-05-27T07:32:00Z, - 2006-06-01T11:00:00Z, + 1987-07-05T17:45:00Z, + 1979-05-27T07:32:00, + 2006-06-01, + 11:00:00, ] comments = [ 1, diff --git a/tests/CsToml.Tests/toml-test/valid/array/string-quote-comma.json b/tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-01.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/array/string-quote-comma.json rename to tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-01.json diff --git a/tests/CsToml.Tests/toml-test/valid/array/string-quote-comma.toml b/tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/array/string-quote-comma.toml rename to tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-01.toml diff --git a/tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-2.json b/tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-02.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-2.json rename to tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-02.json diff --git a/tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-2.toml b/tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-2.toml rename to tests/CsToml.Tests/toml-test/valid/array/string-quote-comma-02.toml diff --git a/tests/CsToml.Tests/toml-test/valid/array/string-with-comma.json b/tests/CsToml.Tests/toml-test/valid/array/string-with-comma-01.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/array/string-with-comma.json rename to tests/CsToml.Tests/toml-test/valid/array/string-with-comma-01.json diff --git a/tests/CsToml.Tests/toml-test/valid/array/string-with-comma.toml b/tests/CsToml.Tests/toml-test/valid/array/string-with-comma-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/array/string-with-comma.toml rename to tests/CsToml.Tests/toml-test/valid/array/string-with-comma-01.toml diff --git a/tests/CsToml.Tests/toml-test/valid/array/string-with-comma-2.json b/tests/CsToml.Tests/toml-test/valid/array/string-with-comma-02.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/array/string-with-comma-2.json rename to tests/CsToml.Tests/toml-test/valid/array/string-with-comma-02.json diff --git a/tests/CsToml.Tests/toml-test/valid/array/string-with-comma-2.toml b/tests/CsToml.Tests/toml-test/valid/array/string-with-comma-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/array/string-with-comma-2.toml rename to tests/CsToml.Tests/toml-test/valid/array/string-with-comma-02.toml diff --git a/tests/CsToml.Tests/toml-test/valid/comment/everywhere.json b/tests/CsToml.Tests/toml-test/valid/comment/everywhere.json index b0ccd19..a7394c8 100644 --- a/tests/CsToml.Tests/toml-test/valid/comment/everywhere.json +++ b/tests/CsToml.Tests/toml-test/valid/comment/everywhere.json @@ -1,4 +1,12 @@ { + "aot": [ + { + "k": {"type": "integer", "value": "98"} + }, + { + "k": {"type": "integer", "value": "99"} + } + ], "group": { "answer": {"type": "integer", "value": "42"}, "d": {"type": "date-local", "value": "1979-05-27"}, diff --git a/tests/CsToml.Tests/toml-test/valid/comment/everywhere.toml b/tests/CsToml.Tests/toml-test/valid/comment/everywhere.toml index a5da1d7..53a1c34 100644 --- a/tests/CsToml.Tests/toml-test/valid/comment/everywhere.toml +++ b/tests/CsToml.Tests/toml-test/valid/comment/everywhere.toml @@ -26,3 +26,8 @@ more = [ # Comment # Make sure the space between the datetime and "#" isn't lexed. dt = 1979-05-27T07:32:12-07:00 # c d = 1979-05-27 # Comment + +[[aot]] # Comment +k = 98 # Comment +[[aot]]# Comment +k = 99# Comment diff --git a/tests/CsToml.Tests/toml-test/valid/datetime/invalid-date-in-string.json b/tests/CsToml.Tests/toml-test/valid/datetime/invalid-date-in-string.json new file mode 100644 index 0000000..d0ce0ea --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/datetime/invalid-date-in-string.json @@ -0,0 +1,3 @@ +{ + "s": {"type": "string", "value": "2020-01-01x"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/datetime/invalid-date-in-string.toml b/tests/CsToml.Tests/toml-test/valid/datetime/invalid-date-in-string.toml new file mode 100644 index 0000000..3fc0a87 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/datetime/invalid-date-in-string.toml @@ -0,0 +1 @@ +s = '2020-01-01x' diff --git a/tests/CsToml.Tests/toml-test/valid/empty-file.json b/tests/CsToml.Tests/toml-test/valid/empty-crlf.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/empty-file.json rename to tests/CsToml.Tests/toml-test/valid/empty-crlf.json diff --git a/tests/CsToml.Tests/toml-test/valid/empty-crlf.toml b/tests/CsToml.Tests/toml-test/valid/empty-crlf.toml new file mode 100644 index 0000000..d3f5a12 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/empty-crlf.toml @@ -0,0 +1 @@ + diff --git a/tests/CsToml.Tests/toml-test/valid/empty-lf.json b/tests/CsToml.Tests/toml-test/valid/empty-lf.json new file mode 100644 index 0000000..0967ef4 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/empty-lf.json @@ -0,0 +1 @@ +{} diff --git a/tests/CsToml.Tests/toml-test/valid/empty-lf.toml b/tests/CsToml.Tests/toml-test/valid/empty-lf.toml new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/empty-lf.toml @@ -0,0 +1 @@ + diff --git a/tests/CsToml.Tests/toml-test/valid/empty-nothing.json b/tests/CsToml.Tests/toml-test/valid/empty-nothing.json new file mode 100644 index 0000000..0967ef4 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/empty-nothing.json @@ -0,0 +1 @@ +{} diff --git a/tests/CsToml.Tests/toml-test/valid/empty-file.toml b/tests/CsToml.Tests/toml-test/valid/empty-nothing.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/empty-file.toml rename to tests/CsToml.Tests/toml-test/valid/empty-nothing.toml diff --git a/tests/CsToml.Tests/toml-test/valid/empty-space.json b/tests/CsToml.Tests/toml-test/valid/empty-space.json new file mode 100644 index 0000000..0967ef4 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/empty-space.json @@ -0,0 +1 @@ +{} diff --git a/tests/CsToml.Tests/toml-test/valid/empty-space.toml b/tests/CsToml.Tests/toml-test/valid/empty-space.toml new file mode 100644 index 0000000..0519ecb --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/empty-space.toml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/tests/CsToml.Tests/toml-test/valid/empty-tab.json b/tests/CsToml.Tests/toml-test/valid/empty-tab.json new file mode 100644 index 0000000..0967ef4 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/empty-tab.json @@ -0,0 +1 @@ +{} diff --git a/tests/CsToml.Tests/toml-test/valid/empty-tab.toml b/tests/CsToml.Tests/toml-test/valid/empty-tab.toml new file mode 100644 index 0000000..501a6bb --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/empty-tab.toml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/array.json b/tests/CsToml.Tests/toml-test/valid/inline-table/array-01.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/array.json rename to tests/CsToml.Tests/toml-test/valid/inline-table/array-01.json diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/array.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/array-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/array.toml rename to tests/CsToml.Tests/toml-test/valid/inline-table/array-01.toml diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/array-02.json b/tests/CsToml.Tests/toml-test/valid/inline-table/array-02.json new file mode 100644 index 0000000..aee946d --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/inline-table/array-02.json @@ -0,0 +1,3 @@ +{ + "a": {"a": []} +} diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/array-values.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/array-02.toml similarity index 69% rename from tests/CsToml.Tests/toml-test/valid/inline-table/array-values.toml rename to tests/CsToml.Tests/toml-test/valid/inline-table/array-02.toml index 5ba59d2..9709783 100644 --- a/tests/CsToml.Tests/toml-test/valid/inline-table/array-values.toml +++ b/tests/CsToml.Tests/toml-test/valid/inline-table/array-02.toml @@ -3,11 +3,3 @@ a = { a = [ ]} - -b = { a = [ - 1, - 2, - ], b = [ - 3, - 4, - ]} diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/array-values.json b/tests/CsToml.Tests/toml-test/valid/inline-table/array-03.json similarity index 92% rename from tests/CsToml.Tests/toml-test/valid/inline-table/array-values.json rename to tests/CsToml.Tests/toml-test/valid/inline-table/array-03.json index 45809ea..6570bd0 100644 --- a/tests/CsToml.Tests/toml-test/valid/inline-table/array-values.json +++ b/tests/CsToml.Tests/toml-test/valid/inline-table/array-03.json @@ -1,5 +1,4 @@ { - "a": {"a": []}, "b": { "a": [ {"type": "integer", "value": "1"}, diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/array-03.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/array-03.toml new file mode 100644 index 0000000..3132fb1 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/inline-table/array-03.toml @@ -0,0 +1,7 @@ +b = { a = [ + 1, + 2, + ], b = [ + 3, + 4, + ]} diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-1.json b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-01.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-1.json rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-01.json diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-1.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-1.toml rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-01.toml diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-2.json b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-02.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-2.json rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-02.json diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-2.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-2.toml rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-02.toml diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-3.json b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-03.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-3.json rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-03.json diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-3.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-3.toml rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-03.toml diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-4.json b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-04.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-4.json rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-04.json diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-4.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-4.toml rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-04.toml diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-5.json b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-05.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-5.json rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-05.json diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-5.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-05.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-5.toml rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-05.toml diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-6.json b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-06.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-6.json rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-06.json diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-6.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-06.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-6.toml rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-06.toml diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-7.json b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-07.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-7.json rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-07.json diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-7.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-07.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-7.toml rename to tests/CsToml.Tests/toml-test/valid/inline-table/key-dotted-07.toml diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/newline-comment.json b/tests/CsToml.Tests/toml-test/valid/inline-table/newline-comment.json new file mode 100644 index 0000000..40e2d45 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/inline-table/newline-comment.json @@ -0,0 +1,23 @@ +{ + "tbl-1": { + "1": {"type": "integer", "value": "2"}, + "hello": {"type": "string", "value": "world"}, + "arr": [ + {"type": "integer", "value": "1"}, + {"type": "integer", "value": "2"}, + {"type": "integer", "value": "3"} + ], + "tbl": { + "k": {"type": "integer", "value": "1"} + } + }, + "tbl-2": { + "k": {"type": "string", "value": "\tHello\n\t"} + }, + "trailing-comma-1": { + "c": {"type": "integer", "value": "1"} + }, + "trailing-comma-2": { + "c": {"type": "integer", "value": "1"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/newline-comment.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/newline-comment.toml new file mode 100644 index 0000000..f558d80 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/inline-table/newline-comment.toml @@ -0,0 +1,27 @@ +# Identical to newline.toml, but with comments that shouldn't affect the +# results. + +trailing-comma-1 = {#comment + # comment + c = 1,#comment + #comment +}#comment +trailing-comma-2 = { c = 1, }#comment + +tbl-1 = {#comment + hello = "world",#comment + 1 = 2,#comment + arr = [1,#comment + 2,#comment + 3,#comment + ],#comment + tbl = {#comment + k = 1,#comment + }#comment +}#comment + +tbl-2 = {#comment + k = """ + Hello + """#comment +}#comment diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/newline.json b/tests/CsToml.Tests/toml-test/valid/inline-table/newline.json index 40e2d45..3277caa 100644 --- a/tests/CsToml.Tests/toml-test/valid/inline-table/newline.json +++ b/tests/CsToml.Tests/toml-test/valid/inline-table/newline.json @@ -1,4 +1,12 @@ { + "no-newline-before-brace": { + "a": {"type": "integer", "value": "1"}, + "b": {"type": "integer", "value": "2"} + }, + "no-newline-before-brace-with-comma": { + "a": {"type": "integer", "value": "1"}, + "b": {"type": "integer", "value": "2"} + }, "tbl-1": { "1": {"type": "integer", "value": "2"}, "hello": {"type": "string", "value": "world"}, diff --git a/tests/CsToml.Tests/toml-test/valid/inline-table/newline.toml b/tests/CsToml.Tests/toml-test/valid/inline-table/newline.toml index 914afe9..6dbc9a4 100644 --- a/tests/CsToml.Tests/toml-test/valid/inline-table/newline.toml +++ b/tests/CsToml.Tests/toml-test/valid/inline-table/newline.toml @@ -22,3 +22,11 @@ tbl-2 = { Hello """ } + +no-newline-before-brace = { +a = 1, +b = 2} + +no-newline-before-brace-with-comma = { +a = 1, +b = 2,} diff --git a/tests/CsToml.Tests/toml-test/valid/key/dotted-1.json b/tests/CsToml.Tests/toml-test/valid/key/dotted-01.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/dotted-1.json rename to tests/CsToml.Tests/toml-test/valid/key/dotted-01.json diff --git a/tests/CsToml.Tests/toml-test/valid/key/dotted-1.toml b/tests/CsToml.Tests/toml-test/valid/key/dotted-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/dotted-1.toml rename to tests/CsToml.Tests/toml-test/valid/key/dotted-01.toml diff --git a/tests/CsToml.Tests/toml-test/valid/key/dotted-2.json b/tests/CsToml.Tests/toml-test/valid/key/dotted-02.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/dotted-2.json rename to tests/CsToml.Tests/toml-test/valid/key/dotted-02.json diff --git a/tests/CsToml.Tests/toml-test/valid/key/dotted-2.toml b/tests/CsToml.Tests/toml-test/valid/key/dotted-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/dotted-2.toml rename to tests/CsToml.Tests/toml-test/valid/key/dotted-02.toml diff --git a/tests/CsToml.Tests/toml-test/valid/key/dotted-3.json b/tests/CsToml.Tests/toml-test/valid/key/dotted-03.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/dotted-3.json rename to tests/CsToml.Tests/toml-test/valid/key/dotted-03.json diff --git a/tests/CsToml.Tests/toml-test/valid/key/dotted-3.toml b/tests/CsToml.Tests/toml-test/valid/key/dotted-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/dotted-3.toml rename to tests/CsToml.Tests/toml-test/valid/key/dotted-03.toml diff --git a/tests/CsToml.Tests/toml-test/valid/key/dotted-4.json b/tests/CsToml.Tests/toml-test/valid/key/dotted-04.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/dotted-4.json rename to tests/CsToml.Tests/toml-test/valid/key/dotted-04.json diff --git a/tests/CsToml.Tests/toml-test/valid/key/dotted-4.toml b/tests/CsToml.Tests/toml-test/valid/key/dotted-04.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/dotted-4.toml rename to tests/CsToml.Tests/toml-test/valid/key/dotted-04.toml diff --git a/tests/CsToml.Tests/toml-test/valid/key/empty-1.json b/tests/CsToml.Tests/toml-test/valid/key/empty-01.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/empty-1.json rename to tests/CsToml.Tests/toml-test/valid/key/empty-01.json diff --git a/tests/CsToml.Tests/toml-test/valid/key/empty-1.toml b/tests/CsToml.Tests/toml-test/valid/key/empty-01.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/empty-1.toml rename to tests/CsToml.Tests/toml-test/valid/key/empty-01.toml diff --git a/tests/CsToml.Tests/toml-test/valid/key/empty-2.json b/tests/CsToml.Tests/toml-test/valid/key/empty-02.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/empty-2.json rename to tests/CsToml.Tests/toml-test/valid/key/empty-02.json diff --git a/tests/CsToml.Tests/toml-test/valid/key/empty-2.toml b/tests/CsToml.Tests/toml-test/valid/key/empty-02.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/empty-2.toml rename to tests/CsToml.Tests/toml-test/valid/key/empty-02.toml diff --git a/tests/CsToml.Tests/toml-test/valid/key/empty-3.json b/tests/CsToml.Tests/toml-test/valid/key/empty-03.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/empty-3.json rename to tests/CsToml.Tests/toml-test/valid/key/empty-03.json diff --git a/tests/CsToml.Tests/toml-test/valid/key/empty-3.toml b/tests/CsToml.Tests/toml-test/valid/key/empty-03.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/key/empty-3.toml rename to tests/CsToml.Tests/toml-test/valid/key/empty-03.toml diff --git a/tests/CsToml.Tests/toml-test/valid/key/like-date.json b/tests/CsToml.Tests/toml-test/valid/key/like-date.json new file mode 100644 index 0000000..163e7bb --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/like-date.json @@ -0,0 +1,28 @@ +{ + "15:16:17": {"type": "integer", "value": "6"}, + "2001-02-03": {"type": "integer", "value": "1"}, + "2001-02-04": {"type": "integer", "value": "2"}, + "2001-02-05": {"type": "integer", "value": "3"}, + "2001-02-06T15:16:17+01:00": {"type": "integer", "value": "4"}, + "2001-02-07T15:16:17": {"type": "integer", "value": "5"}, + "2002-01-04": [{ + "k": {"type": "integer", "value": "12"} + }], + "2001-02-11": { + "a": { + "2001-02-12": {"type": "integer", "value": "9"} + } + }, + "2002-01-02": { + "k": {"type": "integer", "value": "10"}, + "2024-01-03": { + "k": {"type": "integer", "value": "11"} + } + }, + "a": { + "2001-02-08": {"type": "integer", "value": "7"}, + "2001-02-09": { + "2001-02-10": {"type": "integer", "value": "8"} + } + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/key/like-date.toml b/tests/CsToml.Tests/toml-test/valid/key/like-date.toml new file mode 100644 index 0000000..512d75a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/like-date.toml @@ -0,0 +1,25 @@ +# '-' is a valid character in keys: make a key that looks like a date. +2001-02-03 = 1 +"2001-02-04" = 2 +'2001-02-05' = 3 + +# Also include datetime and time for good measure; these need to be quoted as +# ':' isn't a valid bare key. +"2001-02-06T15:16:17+01:00" = 4 +"2001-02-07T15:16:17" = 5 +"15:16:17" = 6 + +# Dotted keys +a.2001-02-08 = 7 +a.2001-02-09.2001-02-10 = 8 +2001-02-11.a.2001-02-12 = 9 + +# Table names +[2002-01-02] +k = 10 + +[2002-01-02.2024-01-03] +k = 11 + +[[2002-01-04]] +k = 12 diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-01.json b/tests/CsToml.Tests/toml-test/valid/key/numeric-01.json new file mode 100644 index 0000000..8dd7d18 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-01.json @@ -0,0 +1,3 @@ +{ + "1": {"type": "bool", "value": "true"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-01.toml b/tests/CsToml.Tests/toml-test/valid/key/numeric-01.toml new file mode 100644 index 0000000..2ebcaa8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-01.toml @@ -0,0 +1 @@ +1 = true diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-02.json b/tests/CsToml.Tests/toml-test/valid/key/numeric-02.json new file mode 100644 index 0000000..e36746a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-02.json @@ -0,0 +1,5 @@ +{ + "1": { + "2": {"type": "bool", "value": "true"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-02.toml b/tests/CsToml.Tests/toml-test/valid/key/numeric-02.toml new file mode 100644 index 0000000..e34f95f --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-02.toml @@ -0,0 +1 @@ +1.2 = true diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-03.json b/tests/CsToml.Tests/toml-test/valid/key/numeric-03.json new file mode 100644 index 0000000..c0d09ba --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-03.json @@ -0,0 +1,3 @@ +{ + "0123": {"type": "bool", "value": "true"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-03.toml b/tests/CsToml.Tests/toml-test/valid/key/numeric-03.toml new file mode 100644 index 0000000..a4a246a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-03.toml @@ -0,0 +1 @@ +0123 = true diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-04.json b/tests/CsToml.Tests/toml-test/valid/key/numeric-04.json new file mode 100644 index 0000000..13697ea --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-04.json @@ -0,0 +1,5 @@ +{ + "01": { + "23": {"type": "bool", "value": "true"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-04.toml b/tests/CsToml.Tests/toml-test/valid/key/numeric-04.toml new file mode 100644 index 0000000..a7a728b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-04.toml @@ -0,0 +1 @@ +01.23 = true diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-05.json b/tests/CsToml.Tests/toml-test/valid/key/numeric-05.json new file mode 100644 index 0000000..7ddf46e --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-05.json @@ -0,0 +1,5 @@ +{ + "23": { + "01": {"type": "bool", "value": "true"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-05.toml b/tests/CsToml.Tests/toml-test/valid/key/numeric-05.toml new file mode 100644 index 0000000..9f3c2a2 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-05.toml @@ -0,0 +1 @@ +23.01 = true diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-06.json b/tests/CsToml.Tests/toml-test/valid/key/numeric-06.json new file mode 100644 index 0000000..56df888 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-06.json @@ -0,0 +1,3 @@ +{ + "-1": {"type": "bool", "value": "true"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-06.toml b/tests/CsToml.Tests/toml-test/valid/key/numeric-06.toml new file mode 100644 index 0000000..d1b935b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-06.toml @@ -0,0 +1 @@ +-1 = true diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-07.json b/tests/CsToml.Tests/toml-test/valid/key/numeric-07.json new file mode 100644 index 0000000..c9b4dcc --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-07.json @@ -0,0 +1,3 @@ +{ + "-01": {"type": "bool", "value": "true"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-07.toml b/tests/CsToml.Tests/toml-test/valid/key/numeric-07.toml new file mode 100644 index 0000000..0e06868 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-07.toml @@ -0,0 +1 @@ +-01 = true diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-08.json b/tests/CsToml.Tests/toml-test/valid/key/numeric-08.json new file mode 100644 index 0000000..71d8e93 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-08.json @@ -0,0 +1,4 @@ +{ + "01": {"type": "string", "value": "zero one"}, + "1": {"type": "string", "value": "one"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-08.toml b/tests/CsToml.Tests/toml-test/valid/key/numeric-08.toml new file mode 100644 index 0000000..e0bbdba --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric-08.toml @@ -0,0 +1,2 @@ +1 = 'one' +01 = 'zero one' diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-dotted.json b/tests/CsToml.Tests/toml-test/valid/key/numeric-dotted.json deleted file mode 100644 index 68c73dd..0000000 --- a/tests/CsToml.Tests/toml-test/valid/key/numeric-dotted.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "1": { - "2": {"type": "integer", "value": "3"} - } -} diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric-dotted.toml b/tests/CsToml.Tests/toml-test/valid/key/numeric-dotted.toml deleted file mode 100644 index 538204c..0000000 --- a/tests/CsToml.Tests/toml-test/valid/key/numeric-dotted.toml +++ /dev/null @@ -1 +0,0 @@ -1.2 = 3 diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric.json b/tests/CsToml.Tests/toml-test/valid/key/numeric.json deleted file mode 100644 index 862f8cb..0000000 --- a/tests/CsToml.Tests/toml-test/valid/key/numeric.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "1": {"type": "integer", "value": "1"} -} diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric.multi b/tests/CsToml.Tests/toml-test/valid/key/numeric.multi new file mode 100644 index 0000000..af6ac5b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/key/numeric.multi @@ -0,0 +1,8 @@ +1 = true +1.2 = true +0123 = true +01.23 = true +23.01 = true +-1 = true +-01 = true + diff --git a/tests/CsToml.Tests/toml-test/valid/key/numeric.toml b/tests/CsToml.Tests/toml-test/valid/key/numeric.toml deleted file mode 100644 index 532356f..0000000 --- a/tests/CsToml.Tests/toml-test/valid/key/numeric.toml +++ /dev/null @@ -1 +0,0 @@ -1 = 1 diff --git a/tests/CsToml.Tests/toml-test/valid/key/quoted-dots.json b/tests/CsToml.Tests/toml-test/valid/key/quoted-dots.json index 4affa30..b5edd8f 100644 --- a/tests/CsToml.Tests/toml-test/valid/key/quoted-dots.json +++ b/tests/CsToml.Tests/toml-test/valid/key/quoted-dots.json @@ -7,6 +7,7 @@ }, "table": { "withdot": { + "escaped.dot": {"type": "integer", "value": "7"}, "key.with.dots": {"type": "integer", "value": "6"}, "plain": {"type": "integer", "value": "5"} } diff --git a/tests/CsToml.Tests/toml-test/valid/key/quoted-dots.toml b/tests/CsToml.Tests/toml-test/valid/key/quoted-dots.toml index 65fcddf..e924e9e 100644 --- a/tests/CsToml.Tests/toml-test/valid/key/quoted-dots.toml +++ b/tests/CsToml.Tests/toml-test/valid/key/quoted-dots.toml @@ -8,3 +8,4 @@ plain = 3 [table.withdot] plain = 5 "key.with.dots" = 6 +"escaped\u002edot" = 7 diff --git a/tests/CsToml.Tests/toml-test/valid/key/space.json b/tests/CsToml.Tests/toml-test/valid/key/space.json index ddd4c0a..e29ad50 100644 --- a/tests/CsToml.Tests/toml-test/valid/key/space.json +++ b/tests/CsToml.Tests/toml-test/valid/key/space.json @@ -1,6 +1,7 @@ { - " c d ": {"type": "integer", "value": "2"}, - "a b": {"type": "integer", "value": "1"}, + " much \t\t whitespace \t\n \r\n ": {"type": "integer", "value": "3"}, + " c d ": {"type": "integer", "value": "2"}, + "a b": {"type": "integer", "value": "1"}, " tbl ": { "\ttab\ttab\t": {"type": "string", "value": "tab"} } diff --git a/tests/CsToml.Tests/toml-test/valid/key/space.toml b/tests/CsToml.Tests/toml-test/valid/key/space.toml index 4234f88..36b09ba 100644 --- a/tests/CsToml.Tests/toml-test/valid/key/space.toml +++ b/tests/CsToml.Tests/toml-test/valid/key/space.toml @@ -1,6 +1,7 @@ # Keep whitespace inside quotes keys at all positions. "a b" = 1 " c d " = 2 +" much whitespace \n \r\n " = 3 [ " tbl " ] "\ttab\ttab\t" = "tab" diff --git a/tests/CsToml.Tests/toml-test/valid/key/unicode.json b/tests/CsToml.Tests/toml-test/valid/key/unicode.json deleted file mode 100644 index 25258ae..0000000 --- a/tests/CsToml.Tests/toml-test/valid/key/unicode.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "a‍b": { - "type": "string", - "value": "zwj" - }, - "tiếng-Việt": [ - { - "tiəŋ˧˦": { - "viət̚˧˨ʔ": { - "type": "string", - "value": "north" - } - } - }, - { - "tiəŋ˦˧˥": { - "viək̚˨˩ʔ": { - "type": "string", - "value": "central" - } - } - } - ], - "ÅÅ": { - "type": "string", - "value": "U+00C5 U+0041 U+030A" - }, - "€": { - "type": "string", - "value": "Euro" - }, - "中文": { - "中文": { - "中文": { - "type": "string", - "value": "Chinese language" - } - } - }, - "😂": { - "type": "string", - "value": "rofl" - } -} diff --git a/tests/CsToml.Tests/toml-test/valid/key/unicode.toml b/tests/CsToml.Tests/toml-test/valid/key/unicode.toml deleted file mode 100644 index e4137b6..0000000 --- a/tests/CsToml.Tests/toml-test/valid/key/unicode.toml +++ /dev/null @@ -1,15 +0,0 @@ -# TOML 1.1 supports Unicode for bare keys. - -€ = 'Euro' -😂 = "rofl" -a‍b = "zwj" -ÅÅ = "U+00C5 U+0041 U+030A" - -[中文] -中文 = {中文 = "Chinese language"} - -[[tiếng-Việt]] -tiəŋ˧˦.viət̚˧˨ʔ = "north" - -[[tiếng-Việt]] -tiəŋ˦˧˥.viək̚˨˩ʔ = "central" diff --git a/tests/CsToml.Tests/toml-test/valid/multibyte.json b/tests/CsToml.Tests/toml-test/valid/multibyte.json new file mode 100644 index 0000000..b9bac9e --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/multibyte.json @@ -0,0 +1,21 @@ +{ + "𝐭𝐛𝐥": { + "string": {"type": "string", "value": "𝓼𝓽𝓻𝓲𝓷𝓰 - #"}, + "sub": { + "another_test_string": {"type": "string", "value": "§á₥è ƭλïñϱ, βúƭ ωïƭλ á ƨƭřïñϱ #"}, + "escapes": {"type": "string", "value": " Âñδ ωλèñ \"'ƨ ářè ïñ ƭλè ƨƭřïñϱ, áℓôñϱ ωïƭλ # \""}, + "βïƭ#": { + "multi_line_array": [{"type": "string", "value": "]"}], + "ωλáƭ?": {"type": "string", "value": "Ýôú δôñ'ƭ ƭλïñƙ ƨô₥è úƨèř ωôñ'ƭ δô ƭλáƭ?"} + }, + "𝕒𝕣𝕣𝕒𝕪": [ + {"type": "string", "value": "] "}, + {"type": "string", "value": " # "} + ], + "𝕒𝕣𝕣𝕒𝕪𝟚": [ + {"type": "string", "value": "Tèƨƭ #11 ]ƥřôƲèδ ƭλáƭ"}, + {"type": "string", "value": "Éжƥèřï₥èñƭ #9 ωáƨ á ƨúççèƨƨ"} + ] + } + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/multibyte.toml b/tests/CsToml.Tests/toml-test/valid/multibyte.toml new file mode 100644 index 0000000..0ac0046 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/multibyte.toml @@ -0,0 +1,20 @@ +# Test multibyte throughout + +# Tèƨƭ ƒïℓè ƒôř TÓM£ +# Óñℓ¥ ƭλïƨ ôñè ƭřïèƨ ƭô è₥úℓáƭè á TÓM£ ƒïℓè ωřïƭƭèñ β¥ á úƨèř ôƒ ƭλè ƙïñδ ôƒ ƥářƨèř ωřïƭèřƨ ƥřôβáβℓ¥ λáƭè + +['𝐭𝐛𝐥'] +string = "𝓼𝓽𝓻𝓲𝓷𝓰 - #" # " 𝓼𝓽𝓻𝓲𝓷𝓰 + ['𝐭𝐛𝐥'.sub] + '𝕒𝕣𝕣𝕒𝕪' = [ "] ", " # "] # ] 𝓪𝓻𝓻𝓪𝔂 + '𝕒𝕣𝕣𝕒𝕪𝟚' = [ "Tèƨƭ #11 ]ƥřôƲèδ ƭλáƭ", "Éжƥèřï₥èñƭ #9 ωáƨ á ƨúççèƨƨ" ] + # Ýôú δïδñ'ƭ ƭλïñƙ ïƭ'δ áƨ èáƨ¥ áƨ çλúçƙïñϱ ôúƭ ƭλè ℓáƨƭ #, δïδ ¥ôú? + another_test_string = "§á₥è ƭλïñϱ, βúƭ ωïƭλ á ƨƭřïñϱ #" + escapes = " Âñδ ωλèñ \"'ƨ ářè ïñ ƭλè ƨƭřïñϱ, áℓôñϱ ωïƭλ # \"" # "áñδ çô₥₥èñƭƨ ářè ƭλèřè ƭôô" + # Tλïñϱƨ ωïℓℓ ϱèƭ λářδèř + ['𝐭𝐛𝐥'.sub."βïƭ#"] + "ωλáƭ?" = "Ýôú δôñ'ƭ ƭλïñƙ ƨô₥è úƨèř ωôñ'ƭ δô ƭλáƭ?" + multi_line_array = [ + "]", + # ] Óλ ¥èƨ Ì δïδ + ] diff --git a/tests/CsToml.Tests/toml-test/valid/spec/array-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/array-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/array-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/array-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/array-1.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-1.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/array-1.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-1.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/array-1.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/array-1.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-1.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-1.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-1.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-1.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-1.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-1.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-1.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-1.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-2.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-2.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-2.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-2.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-2.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-2.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/array-of-tables-2.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/array-of-tables-2.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/boolean-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/boolean-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/boolean-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/boolean-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/boolean-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/boolean-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/boolean-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/boolean-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/comment-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/comment-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/comment-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/comment-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/comment-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/comment-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/comment-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/comment-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-0.json new file mode 100644 index 0000000..a2781e8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-0.json @@ -0,0 +1,9 @@ +{ + "flt1": {"type": "float", "value": "1"}, + "flt2": {"type": "float", "value": "3.1415"}, + "flt3": {"type": "float", "value": "-0.01"}, + "flt4": {"type": "float", "value": "5e+22"}, + "flt5": {"type": "float", "value": "1e+06"}, + "flt6": {"type": "float", "value": "-0.02"}, + "flt7": {"type": "float", "value": "6.626e-34"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec/float-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/float-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/float-1.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-1.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/float-1.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-1.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/float-1.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/float-1.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-1.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/float-2.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-2.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/float-2.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-2.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/float-2.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-2.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/float-2.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/float-2.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/inline-table-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/inline-table-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/inline-table-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/inline-table-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/inline-table-1.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-1.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/inline-table-1.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-1.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/inline-table-1.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/inline-table-1.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-1.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/inline-table-2.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-2.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/inline-table-2.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-2.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/inline-table-2.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-2.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/inline-table-2.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-2.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/inline-table-3.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-3.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/inline-table-3.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-3.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/inline-table-3.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-3.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/inline-table-3.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/inline-table-3.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/integer-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/integer-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/integer-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/integer-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/integer-1.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-1.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/integer-1.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-1.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/integer-1.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/integer-1.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-1.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/integer-2.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-2.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/integer-2.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-2.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/integer-2.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-2.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/integer-2.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/integer-2.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/key-value-pair-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/key-value-pair-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/key-value-pair-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/key-value-pair-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/key-value-pair-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/key-value-pair-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/key-value-pair-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/key-value-pair-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-1.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-1.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-1.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-1.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-1.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-1.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-1.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-3.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-3.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-3.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-3.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-3.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-3.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-3.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-3.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-4.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-4.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-4.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-4.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-4.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-4.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-4.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-4.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-5.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-5.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-5.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-5.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-5.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-5.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-5.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-5.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-6.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-6.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-6.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-6.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-6.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-6.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-6.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-6.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-7.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-7.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-7.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-7.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/keys-7.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-7.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/keys-7.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/keys-7.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/local-date-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-date-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/local-date-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-date-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/local-date-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-date-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/local-date-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-date-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/local-date-time-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-date-time-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/local-date-time-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-date-time-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/local-date-time-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-date-time-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/local-date-time-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-date-time-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/local-time-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-time-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/local-time-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-time-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/local-time-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-time-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/local-time-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/local-time-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/offset-date-time-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/offset-date-time-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/offset-date-time-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/offset-date-time-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/offset-date-time-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/offset-date-time-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/offset-date-time-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/offset-date-time-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/offset-date-time-1.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/offset-date-time-1.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/offset-date-time-1.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/offset-date-time-1.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/offset-date-time-1.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/offset-date-time-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/offset-date-time-1.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/offset-date-time-1.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-1.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-1.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-1.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-1.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-1.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-1.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-1.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-2.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-2.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-2.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-2.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-2.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-2.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-2.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-2.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-3.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-3.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-3.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-3.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-3.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-3.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-3.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-3.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-4.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-4.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-4.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-4.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-4.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-4.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-4.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-4.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-5.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-5.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-5.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-5.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-5.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-5.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-5.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-5.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-6.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-6.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-6.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-6.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-6.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-6.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-6.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-6.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-7.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-7.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-7.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-7.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/string-7.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-7.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/string-7.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/string-7.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-0.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-0.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-0.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-0.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-0.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-0.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-1.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-1.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-1.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-1.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-1.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-1.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-1.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-1.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-2.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-2.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-2.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-2.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-2.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-2.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-2.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-2.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-3.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-3.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-3.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-3.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-3.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-3.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-3.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-3.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-4.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-4.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-4.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-4.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-4.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-4.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-4.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-4.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-5.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-5.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-5.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-5.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-5.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-5.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-5.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-5.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-6.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-6.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-6.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-6.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-6.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-6.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-6.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-6.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-7.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-7.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-7.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-7.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-7.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-7.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-7.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-7.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-8.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-8.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-8.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-8.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-8.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-8.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-8.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-8.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-9.json b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-9.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-9.json rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-9.json diff --git a/tests/CsToml.Tests/toml-test/valid/spec/table-9.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-9.toml similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/spec/table-9.toml rename to tests/CsToml.Tests/toml-test/valid/spec-1.0.0/table-9.toml diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-0.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-0.json new file mode 100644 index 0000000..6d7f419 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-0.json @@ -0,0 +1,4 @@ +{ + "another": {"type": "string", "value": "# This is not a comment"}, + "key": {"type": "string", "value": "value"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-0.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-0.toml new file mode 100644 index 0000000..fae57c6 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-0.toml @@ -0,0 +1,3 @@ +# This is a full-line comment +key = "value" # This is a comment at the end of a line +another = "# This is not a comment" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-1.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-1.json new file mode 100644 index 0000000..458c38a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-1.json @@ -0,0 +1,3 @@ +{ + "key": {"type": "string", "value": "value"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-1.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-1.toml new file mode 100644 index 0000000..e5b34eb --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-1.toml @@ -0,0 +1 @@ +key = "value" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-10.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-10.json new file mode 100644 index 0000000..3f4f298 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-10.json @@ -0,0 +1,12 @@ +{ + "apple": { + "color": {"type": "string", "value": "red"}, + "skin": {"type": "string", "value": "thin"}, + "type": {"type": "string", "value": "fruit"} + }, + "orange": { + "color": {"type": "string", "value": "orange"}, + "skin": {"type": "string", "value": "thick"}, + "type": {"type": "string", "value": "fruit"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-10.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-10.toml new file mode 100644 index 0000000..705686c --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-10.toml @@ -0,0 +1,9 @@ +# RECOMMENDED + +apple.type = "fruit" +apple.skin = "thin" +apple.color = "red" + +orange.type = "fruit" +orange.skin = "thick" +orange.color = "orange" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-11.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-11.json new file mode 100644 index 0000000..a8eadc6 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-11.json @@ -0,0 +1,5 @@ +{ + "3": { + "14159": {"type": "string", "value": "pi"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-11.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-11.toml new file mode 100644 index 0000000..2efd659 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-11.toml @@ -0,0 +1 @@ +3.14159 = "pi" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-12.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-12.json new file mode 100644 index 0000000..3402086 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-12.json @@ -0,0 +1,3 @@ +{ + "str": {"type": "string", "value": "I'm a string. \"You can quote me\". Name\tJosé\nLocation\tSF."} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-12.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-12.toml new file mode 100644 index 0000000..3c3eccc --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-12.toml @@ -0,0 +1 @@ +str = "I'm a string. \"You can quote me\". Name\tJos\xE9\nLocation\tSF." diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-13.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-13.json new file mode 100644 index 0000000..dc2d953 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-13.json @@ -0,0 +1,3 @@ +{ + "str1": {"type": "string", "value": "Roses are red\nViolets are blue"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-13.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-13.toml new file mode 100644 index 0000000..337ad08 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-13.toml @@ -0,0 +1,3 @@ +str1 = """ +Roses are red +Violets are blue""" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-14.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-14.json new file mode 100644 index 0000000..46728b1 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-14.json @@ -0,0 +1,4 @@ +{ + "str2": {"type": "string", "value": "Roses are red\nViolets are blue"}, + "str3": {"type": "string", "value": "Roses are red\r\nViolets are blue"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-14.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-14.toml new file mode 100644 index 0000000..ce5a73b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-14.toml @@ -0,0 +1,5 @@ +# On a Unix system, the above multi-line string will most likely be the same as: +str2 = "Roses are red\nViolets are blue" + +# On a Windows system, it will most likely be equivalent to: +str3 = "Roses are red\r\nViolets are blue" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-15.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-15.json new file mode 100644 index 0000000..cc7212f --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-15.json @@ -0,0 +1,5 @@ +{ + "str1": {"type": "string", "value": "The quick brown fox jumps over the lazy dog."}, + "str2": {"type": "string", "value": "The quick brown fox jumps over the lazy dog."}, + "str3": {"type": "string", "value": "The quick brown fox jumps over the lazy dog."} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-15.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-15.toml new file mode 100644 index 0000000..20b4aa7 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-15.toml @@ -0,0 +1,15 @@ +# The following strings are byte-for-byte equivalent: +str1 = "The quick brown fox jumps over the lazy dog." + +str2 = """ +The quick brown \ + + + fox jumps over \ + the lazy dog.""" + +str3 = """\ + The quick brown \ + fox jumps over \ + the lazy dog.\ + """ diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-16.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-16.json new file mode 100644 index 0000000..8c8cb91 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-16.json @@ -0,0 +1,6 @@ +{ + "str4": {"type": "string", "value": "Here are two quotation marks: \"\". Simple enough."}, + "str5": {"type": "string", "value": "Here are three quotation marks: \"\"\"."}, + "str6": {"type": "string", "value": "Here are fifteen quotation marks: \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"."}, + "str7": {"type": "string", "value": "\"This,\" she said, \"is just a pointless statement.\""} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-16.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-16.toml new file mode 100644 index 0000000..8f51b11 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-16.toml @@ -0,0 +1,7 @@ +str4 = """Here are two quotation marks: "". Simple enough.""" +# str5 = """Here are three quotation marks: """.""" # INVALID +str5 = """Here are three quotation marks: ""\".""" +str6 = """Here are fifteen quotation marks: ""\"""\"""\"""\"""\".""" + +# "This," she said, "is just a pointless statement." +str7 = """"This," she said, "is just a pointless statement."""" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-17.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-17.json new file mode 100644 index 0000000..4fb1cc5 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-17.json @@ -0,0 +1,6 @@ +{ + "quoted": {"type": "string", "value": "Tom \"Dubs\" Preston-Werner"}, + "regex": {"type": "string", "value": "\u003c\\i\\c*\\s*\u003e"}, + "winpath": {"type": "string", "value": "C:\\Users\\nodejs\\templates"}, + "winpath2": {"type": "string", "value": "\\\\ServerX\\admin$\\system32\\"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-17.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-17.toml new file mode 100644 index 0000000..36772bb --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-17.toml @@ -0,0 +1,5 @@ +# What you see is what you get. +winpath = 'C:\Users\nodejs\templates' +winpath2 = '\\ServerX\admin$\system32\' +quoted = 'Tom "Dubs" Preston-Werner' +regex = '<\i\c*\s*>' diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-18.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-18.json new file mode 100644 index 0000000..4c46e9b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-18.json @@ -0,0 +1,4 @@ +{ + "lines": {"type": "string", "value": "The first newline is\ntrimmed in literal strings.\n All other whitespace\n is preserved.\n"}, + "regex2": {"type": "string", "value": "I [dw]on't need \\d{2} apples"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-18.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-18.toml new file mode 100644 index 0000000..7b33ce5 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-18.toml @@ -0,0 +1,7 @@ +regex2 = '''I [dw]on't need \d{2} apples''' +lines = ''' +The first newline is +trimmed in literal strings. + All other whitespace + is preserved. +''' diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-19.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-19.json new file mode 100644 index 0000000..c71687d --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-19.json @@ -0,0 +1,5 @@ +{ + "apos15": {"type": "string", "value": "Here are fifteen apostrophes: '''''''''''''''"}, + "quot15": {"type": "string", "value": "Here are fifteen quotation marks: \"\"\"\"\"\"\"\"\"\"\"\"\"\"\""}, + "str": {"type": "string", "value": "'That,' she said, 'is still pointless.'"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-19.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-19.toml new file mode 100644 index 0000000..82890b0 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-19.toml @@ -0,0 +1,7 @@ +quot15 = '''Here are fifteen quotation marks: """""""""""""""''' + +# apos15 = '''Here are fifteen apostrophes: '''''''''''''''''' # INVALID +apos15 = "Here are fifteen apostrophes: '''''''''''''''" + +# 'That,' she said, 'is still pointless.' +str = ''''That,' she said, 'is still pointless.'''' diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-20.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-20.json new file mode 100644 index 0000000..386d227 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-20.json @@ -0,0 +1,6 @@ +{ + "int1": {"type": "integer", "value": "99"}, + "int2": {"type": "integer", "value": "42"}, + "int3": {"type": "integer", "value": "0"}, + "int4": {"type": "integer", "value": "-17"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-20.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-20.toml new file mode 100644 index 0000000..da14ea2 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-20.toml @@ -0,0 +1,4 @@ +int1 = +99 +int2 = 42 +int3 = 0 +int4 = -17 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-21.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-21.json new file mode 100644 index 0000000..5a02850 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-21.json @@ -0,0 +1,6 @@ +{ + "int5": {"type": "integer", "value": "1000"}, + "int6": {"type": "integer", "value": "5349221"}, + "int7": {"type": "integer", "value": "5349221"}, + "int8": {"type": "integer", "value": "12345"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-21.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-21.toml new file mode 100644 index 0000000..0c4b619 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-21.toml @@ -0,0 +1,4 @@ +int5 = 1_000 +int6 = 5_349_221 +int7 = 53_49_221 # Indian number system grouping +int8 = 1_2_3_4_5 # VALID but discouraged diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-22.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-22.json new file mode 100644 index 0000000..685c6f9 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-22.json @@ -0,0 +1,8 @@ +{ + "bin1": {"type": "integer", "value": "214"}, + "hex1": {"type": "integer", "value": "3735928559"}, + "hex2": {"type": "integer", "value": "3735928559"}, + "hex3": {"type": "integer", "value": "3735928559"}, + "oct1": {"type": "integer", "value": "342391"}, + "oct2": {"type": "integer", "value": "493"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-22.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-22.toml new file mode 100644 index 0000000..ecffca6 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-22.toml @@ -0,0 +1,11 @@ +# hexadecimal with prefix `0x` +hex1 = 0xDEADBEEF +hex2 = 0xdeadbeef +hex3 = 0xdead_beef + +# octal with prefix `0o` +oct1 = 0o01234567 +oct2 = 0o755 # useful for Unix file permissions + +# binary with prefix `0b` +bin1 = 0b11010110 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-23.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-23.json new file mode 100644 index 0000000..a2781e8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-23.json @@ -0,0 +1,9 @@ +{ + "flt1": {"type": "float", "value": "1"}, + "flt2": {"type": "float", "value": "3.1415"}, + "flt3": {"type": "float", "value": "-0.01"}, + "flt4": {"type": "float", "value": "5e+22"}, + "flt5": {"type": "float", "value": "1e+06"}, + "flt6": {"type": "float", "value": "-0.02"}, + "flt7": {"type": "float", "value": "6.626e-34"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-23.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-23.toml new file mode 100644 index 0000000..7b29c65 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-23.toml @@ -0,0 +1,12 @@ +# fractional +flt1 = +1.0 +flt2 = 3.1415 +flt3 = -0.01 + +# exponent +flt4 = 5e+22 +flt5 = 1e06 +flt6 = -2E-2 + +# both +flt7 = 6.626e-34 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-24.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-24.json new file mode 100644 index 0000000..75fb370 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-24.json @@ -0,0 +1,3 @@ +{ + "flt8": {"type": "float", "value": "224617.445991228"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-24.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-24.toml new file mode 100644 index 0000000..3c8f0aa --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-24.toml @@ -0,0 +1 @@ +flt8 = 224_617.445_991_228 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-25.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-25.json new file mode 100644 index 0000000..e500ab8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-25.json @@ -0,0 +1,8 @@ +{ + "sf1": {"type": "float", "value": "inf"}, + "sf2": {"type": "float", "value": "inf"}, + "sf3": {"type": "float", "value": "-inf"}, + "sf4": {"type": "float", "value": "nan"}, + "sf5": {"type": "float", "value": "nan"}, + "sf6": {"type": "float", "value": "nan"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-25.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-25.toml new file mode 100644 index 0000000..4cede55 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-25.toml @@ -0,0 +1,9 @@ +# infinity +sf1 = inf # positive infinity +sf2 = +inf # positive infinity +sf3 = -inf # negative infinity + +# not a number +sf4 = nan # actual sNaN/qNaN encoding is implementation-specific +sf5 = +nan # same as `nan` +sf6 = -nan # valid, actual encoding is implementation-specific diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-26.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-26.json new file mode 100644 index 0000000..38e9278 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-26.json @@ -0,0 +1,4 @@ +{ + "bool1": {"type": "bool", "value": "true"}, + "bool2": {"type": "bool", "value": "false"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-26.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-26.toml new file mode 100644 index 0000000..1f80fbd --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-26.toml @@ -0,0 +1,2 @@ +bool1 = true +bool2 = false diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-27.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-27.json new file mode 100644 index 0000000..b0e0d69 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-27.json @@ -0,0 +1,6 @@ +{ + "odt1": {"type": "datetime", "value": "1979-05-27T07:32:00Z"}, + "odt2": {"type": "datetime", "value": "1979-05-27T00:32:00-07:00"}, + "odt3": {"type": "datetime", "value": "1979-05-27T00:32:00.5-07:00"}, + "odt4": {"type": "datetime", "value": "1979-05-27T00:32:00.999-07:00"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-27.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-27.toml new file mode 100644 index 0000000..7435514 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-27.toml @@ -0,0 +1,4 @@ +odt1 = 1979-05-27T07:32:00Z +odt2 = 1979-05-27T00:32:00-07:00 +odt3 = 1979-05-27T00:32:00.5-07:00 +odt4 = 1979-05-27T00:32:00.999-07:00 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-28.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-28.json new file mode 100644 index 0000000..11aa8a3 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-28.json @@ -0,0 +1,3 @@ +{ + "odt4": {"type": "datetime", "value": "1979-05-27T07:32:00Z"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-28.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-28.toml new file mode 100644 index 0000000..da9bd3b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-28.toml @@ -0,0 +1 @@ +odt4 = 1979-05-27 07:32:00Z diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-29.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-29.json new file mode 100644 index 0000000..e652bb1 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-29.json @@ -0,0 +1,4 @@ +{ + "odt5": {"type": "datetime", "value": "1979-05-27T07:32:00Z"}, + "odt6": {"type": "datetime", "value": "1979-05-27T07:32:00-07:00"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-29.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-29.toml new file mode 100644 index 0000000..435ee11 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-29.toml @@ -0,0 +1,2 @@ +odt5 = 1979-05-27 07:32Z +odt6 = 1979-05-27 07:32-07:00 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-3.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-3.json new file mode 100644 index 0000000..59d81c1 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-3.json @@ -0,0 +1,6 @@ +{ + "1234": {"type": "string", "value": "value"}, + "bare-key": {"type": "string", "value": "value"}, + "bare_key": {"type": "string", "value": "value"}, + "key": {"type": "string", "value": "value"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-3.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-3.toml new file mode 100644 index 0000000..657ff24 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-3.toml @@ -0,0 +1,4 @@ +key = "value" +bare_key = "value" +bare-key = "value" +1234 = "value" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-30.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-30.json new file mode 100644 index 0000000..59622dd --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-30.json @@ -0,0 +1,5 @@ +{ + "ldt1": {"type": "datetime-local", "value": "1979-05-27T07:32:00"}, + "ldt2": {"type": "datetime-local", "value": "1979-05-27T07:32:00.5"}, + "ldt3": {"type": "datetime-local", "value": "1979-05-27T00:32:00.999"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-30.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-30.toml new file mode 100644 index 0000000..593ad75 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-30.toml @@ -0,0 +1,3 @@ +ldt1 = 1979-05-27T07:32:00 +ldt2 = 1979-05-27T07:32:00.5 +ldt3 = 1979-05-27T00:32:00.999 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-31.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-31.json new file mode 100644 index 0000000..2906e25 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-31.json @@ -0,0 +1,3 @@ +{ + "ldt3": {"type": "datetime-local", "value": "1979-05-27T07:32:00"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-31.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-31.toml new file mode 100644 index 0000000..ea9a7f8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-31.toml @@ -0,0 +1 @@ +ldt3 = 1979-05-27T07:32 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-32.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-32.json new file mode 100644 index 0000000..c539d77 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-32.json @@ -0,0 +1,3 @@ +{ + "ld1": {"type": "date-local", "value": "1979-05-27"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-32.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-32.toml new file mode 100644 index 0000000..6670e5d --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-32.toml @@ -0,0 +1 @@ +ld1 = 1979-05-27 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-33.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-33.json new file mode 100644 index 0000000..f937c22 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-33.json @@ -0,0 +1,5 @@ +{ + "lt1": {"type": "time-local", "value": "07:32:00"}, + "lt2": {"type": "time-local", "value": "00:32:00.5"}, + "lt3": {"type": "time-local", "value": "00:32:00.999"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-33.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-33.toml new file mode 100644 index 0000000..77e997c --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-33.toml @@ -0,0 +1,3 @@ +lt1 = 07:32:00 +lt2 = 00:32:00.5 +lt3 = 00:32:00.999 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-34.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-34.json new file mode 100644 index 0000000..a978fae --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-34.json @@ -0,0 +1,3 @@ +{ + "lt3": {"type": "time-local", "value": "07:32:00"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-34.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-34.toml new file mode 100644 index 0000000..96c943d --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-34.toml @@ -0,0 +1 @@ +lt3 = 07:32 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-35.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-35.json new file mode 100644 index 0000000..1474cc8 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-35.json @@ -0,0 +1,56 @@ +{ + "colors": [ + {"type": "string", "value": "red"}, + {"type": "string", "value": "yellow"}, + {"type": "string", "value": "green"} + ], + "contributors": [ + {"type": "string", "value": "Foo Bar \u003cfoo@example.com\u003e"}, + { + "email": {"type": "string", "value": "bazqux@example.com"}, + "name": {"type": "string", "value": "Baz Qux"}, + "url": {"type": "string", "value": "https://example.com/bazqux"} + } + ], + "integers": [ + {"type": "integer", "value": "1"}, + {"type": "integer", "value": "2"}, + {"type": "integer", "value": "3"} + ], + "nested_arrays_of_ints": [ + [ + {"type": "integer", "value": "1"}, + {"type": "integer", "value": "2"} + ], + [ + {"type": "integer", "value": "3"}, + {"type": "integer", "value": "4"}, + {"type": "integer", "value": "5"} + ] + ], + "nested_mixed_array": [ + [ + {"type": "integer", "value": "1"}, + {"type": "integer", "value": "2"} + ], + [ + {"type": "string", "value": "a"}, + {"type": "string", "value": "b"}, + {"type": "string", "value": "c"} + ] + ], + "numbers": [ + {"type": "float", "value": "0.1"}, + {"type": "float", "value": "0.2"}, + {"type": "float", "value": "0.5"}, + {"type": "integer", "value": "1"}, + {"type": "integer", "value": "2"}, + {"type": "integer", "value": "5"} + ], + "string_array": [ + {"type": "string", "value": "all"}, + {"type": "string", "value": "strings"}, + {"type": "string", "value": "are the same"}, + {"type": "string", "value": "type"} + ] +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-35.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-35.toml new file mode 100644 index 0000000..467a8bc --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-35.toml @@ -0,0 +1,12 @@ +integers = [ 1, 2, 3 ] +colors = [ "red", "yellow", "green" ] +nested_arrays_of_ints = [ [ 1, 2 ], [3, 4, 5] ] +nested_mixed_array = [ [ 1, 2 ], ["a", "b", "c"] ] +string_array = [ "all", 'strings', """are the same""", '''type''' ] + +# Mixed-type arrays are allowed +numbers = [ 0.1, 0.2, 0.5, 1, 2, 5 ] +contributors = [ + "Foo Bar ", + { name = "Baz Qux", email = "bazqux@example.com", url = "https://example.com/bazqux" } +] diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-36.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-36.json new file mode 100644 index 0000000..ff51937 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-36.json @@ -0,0 +1,11 @@ +{ + "integers2": [ + {"type": "integer", "value": "1"}, + {"type": "integer", "value": "2"}, + {"type": "integer", "value": "3"} + ], + "integers3": [ + {"type": "integer", "value": "1"}, + {"type": "integer", "value": "2"} + ] +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-36.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-36.toml new file mode 100644 index 0000000..6acd9ca --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-36.toml @@ -0,0 +1,8 @@ +integers2 = [ + 1, 2, 3 +] + +integers3 = [ + 1, + 2, # this is ok +] diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-37.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-37.json new file mode 100644 index 0000000..6e3fc85 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-37.json @@ -0,0 +1,3 @@ +{ + "table": {} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-37.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-37.toml new file mode 100644 index 0000000..f1098fd --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-37.toml @@ -0,0 +1 @@ +[table] diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-38.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-38.json new file mode 100644 index 0000000..a88de19 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-38.json @@ -0,0 +1,10 @@ +{ + "table-1": { + "key1": {"type": "string", "value": "some string"}, + "key2": {"type": "integer", "value": "123"} + }, + "table-2": { + "key1": {"type": "string", "value": "another string"}, + "key2": {"type": "integer", "value": "456"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-38.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-38.toml new file mode 100644 index 0000000..6b4884c --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-38.toml @@ -0,0 +1,7 @@ +[table-1] +key1 = "some string" +key2 = 123 + +[table-2] +key1 = "another string" +key2 = 456 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-39.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-39.json new file mode 100644 index 0000000..48eab39 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-39.json @@ -0,0 +1,9 @@ +{ + "dog": { + "tater.man": { + "type": { + "name": {"type": "string", "value": "pug"} + } + } + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-39.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-39.toml new file mode 100644 index 0000000..32cbe79 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-39.toml @@ -0,0 +1,2 @@ +[dog."tater.man"] +type.name = "pug" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-4.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-4.json new file mode 100644 index 0000000..1577c9b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-4.json @@ -0,0 +1,7 @@ +{ + "127.0.0.1": {"type": "string", "value": "value"}, + "character encoding": {"type": "string", "value": "value"}, + "key2": {"type": "string", "value": "value"}, + "quoted \"value\"": {"type": "string", "value": "value"}, + "ʎǝʞ": {"type": "string", "value": "value"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-4.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-4.toml new file mode 100644 index 0000000..cc2d1d0 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-4.toml @@ -0,0 +1,5 @@ +"127.0.0.1" = "value" +"character encoding" = "value" +"ʎǝʞ" = "value" +'key2' = "value" +'quoted "value"' = "value" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-40.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-40.json new file mode 100644 index 0000000..93f32a4 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-40.json @@ -0,0 +1,22 @@ +{ + "a": { + "b": { + "c": {} + } + }, + "d": { + "e": { + "f": {} + } + }, + "g": { + "h": { + "i": {} + } + }, + "j": { + "ʞ": { + "l": {} + } + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-40.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-40.toml new file mode 100644 index 0000000..0b10db3 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-40.toml @@ -0,0 +1,4 @@ +[a.b.c] # this is best practice +[ d.e.f ] # same as [d.e.f] +[ g . h . i ] # same as [g.h.i] +[ j . "ʞ" . 'l' ] # same as [j."ʞ".'l'] diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-41.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-41.json new file mode 100644 index 0000000..b184d79 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-41.json @@ -0,0 +1,9 @@ +{ + "x": { + "y": { + "z": { + "w": {} + } + } + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-41.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-41.toml new file mode 100644 index 0000000..256e6c0 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-41.toml @@ -0,0 +1,6 @@ +# [x] you +# [x.y] don't +# [x.y.z] need these +[x.y.z.w] # for this to work + +[x] # defining a super-table afterward is ok diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-42.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-42.json new file mode 100644 index 0000000..f3d310e --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-42.json @@ -0,0 +1,7 @@ +{ + "animal": {}, + "fruit": { + "apple": {}, + "orange": {} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-42.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-42.toml new file mode 100644 index 0000000..03fe3a3 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-42.toml @@ -0,0 +1,4 @@ +# VALID BUT DISCOURAGED +[fruit.apple] +[animal] +[fruit.orange] diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-43.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-43.json new file mode 100644 index 0000000..f3d310e --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-43.json @@ -0,0 +1,7 @@ +{ + "animal": {}, + "fruit": { + "apple": {}, + "orange": {} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-43.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-43.toml new file mode 100644 index 0000000..ef330e4 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-43.toml @@ -0,0 +1,4 @@ +# RECOMMENDED +[fruit.apple] +[fruit.orange] +[animal] diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-44.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-44.json new file mode 100644 index 0000000..51f85f3 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-44.json @@ -0,0 +1,8 @@ +{ + "breed": {"type": "string", "value": "pug"}, + "name": {"type": "string", "value": "Fido"}, + "owner": { + "member_since": {"type": "date-local", "value": "1999-08-04"}, + "name": {"type": "string", "value": "Regina Dogman"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-44.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-44.toml new file mode 100644 index 0000000..c57a229 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-44.toml @@ -0,0 +1,8 @@ +# Top-level table begins. +name = "Fido" +breed = "pug" + +# Top-level table ends. +[owner] +name = "Regina Dogman" +member_since = 1999-08-04 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-45.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-45.json new file mode 100644 index 0000000..14c3df7 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-45.json @@ -0,0 +1,10 @@ +{ + "fruit": { + "apple": { + "color": {"type": "string", "value": "red"}, + "taste": { + "sweet": {"type": "bool", "value": "true"} + } + } + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-45.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-45.toml new file mode 100644 index 0000000..d5a2c11 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-45.toml @@ -0,0 +1,7 @@ +fruit.apple.color = "red" +# Defines a table named fruit +# Defines a table named fruit.apple + +fruit.apple.taste.sweet = true +# Defines a table named fruit.apple.taste +# fruit and fruit.apple were already created diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-46.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-46.json new file mode 100644 index 0000000..6075e7b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-46.json @@ -0,0 +1,13 @@ +{ + "fruit": { + "apple": { + "color": {"type": "string", "value": "red"}, + "taste": { + "sweet": {"type": "bool", "value": "true"} + }, + "texture": { + "smooth": {"type": "bool", "value": "true"} + } + } + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-46.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-46.toml new file mode 100644 index 0000000..ae2d65b --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-46.toml @@ -0,0 +1,9 @@ +[fruit] +apple.color = "red" +apple.taste.sweet = true + +# [fruit.apple] # INVALID +# [fruit.apple.taste] # INVALID + +[fruit.apple.texture] # you can add sub-tables +smooth = true diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-47.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-47.json new file mode 100644 index 0000000..bcbd035 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-47.json @@ -0,0 +1,25 @@ +{ + "animal": { + "type": { + "name": {"type": "string", "value": "pug"} + } + }, + "contact": { + "personal": { + "email": {"type": "string", "value": "donald@duckburg.com"}, + "name": {"type": "string", "value": "Donald Duck"} + }, + "work": { + "email": {"type": "string", "value": "donald@ScroogeCorp.com"}, + "name": {"type": "string", "value": "Coin cleaner"} + } + }, + "name": { + "first": {"type": "string", "value": "Tom"}, + "last": {"type": "string", "value": "Preston-Werner"} + }, + "point": { + "x": {"type": "integer", "value": "1"}, + "y": {"type": "integer", "value": "2"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-47.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-47.toml new file mode 100644 index 0000000..e25a05d --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-47.toml @@ -0,0 +1,13 @@ +name = { first = "Tom", last = "Preston-Werner" } +point = {x=1, y=2} +animal = { type.name = "pug" } +contact = { + personal = { + name = "Donald Duck", + email = "donald@duckburg.com", + }, + work = { + name = "Coin cleaner", + email = "donald@ScroogeCorp.com", + }, +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-48.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-48.json new file mode 100644 index 0000000..bcbd035 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-48.json @@ -0,0 +1,25 @@ +{ + "animal": { + "type": { + "name": {"type": "string", "value": "pug"} + } + }, + "contact": { + "personal": { + "email": {"type": "string", "value": "donald@duckburg.com"}, + "name": {"type": "string", "value": "Donald Duck"} + }, + "work": { + "email": {"type": "string", "value": "donald@ScroogeCorp.com"}, + "name": {"type": "string", "value": "Coin cleaner"} + } + }, + "name": { + "first": {"type": "string", "value": "Tom"}, + "last": {"type": "string", "value": "Preston-Werner"} + }, + "point": { + "x": {"type": "integer", "value": "1"}, + "y": {"type": "integer", "value": "2"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-48.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-48.toml new file mode 100644 index 0000000..1e5ac12 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-48.toml @@ -0,0 +1,18 @@ +[name] +first = "Tom" +last = "Preston-Werner" + +[point] +x = 1 +y = 2 + +[animal] +type.name = "pug" + +[contact.personal] +name = "Donald Duck" +email = "donald@duckburg.com" + +[contact.work] +name = "Coin cleaner" +email = "donald@ScroogeCorp.com" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-49.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-49.json new file mode 100644 index 0000000..6e1956c --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-49.json @@ -0,0 +1,7 @@ +{ + "product": { + "type": { + "name": {"type": "string", "value": "Nail"} + } + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-49.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-49.toml new file mode 100644 index 0000000..aabb500 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-49.toml @@ -0,0 +1,3 @@ +[product] +type = { name = "Nail" } +# type.edible = false # INVALID diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-50.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-50.json new file mode 100644 index 0000000..6e1956c --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-50.json @@ -0,0 +1,7 @@ +{ + "product": { + "type": { + "name": {"type": "string", "value": "Nail"} + } + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-50.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-50.toml new file mode 100644 index 0000000..970949c --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-50.toml @@ -0,0 +1,3 @@ +[product] +type.name = "Nail" +# type = { edible = false } # INVALID diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-51.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-51.json new file mode 100644 index 0000000..1d3f2d4 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-51.json @@ -0,0 +1,14 @@ +{ + "product": [ + { + "name": {"type": "string", "value": "Hammer"}, + "sku": {"type": "integer", "value": "738594937"} + }, + {}, + { + "color": {"type": "string", "value": "gray"}, + "name": {"type": "string", "value": "Nail"}, + "sku": {"type": "integer", "value": "284758393"} + } + ] +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-51.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-51.toml new file mode 100644 index 0000000..adc6aa5 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-51.toml @@ -0,0 +1,11 @@ +[[product]] +name = "Hammer" +sku = 738594937 + +[[product]] # empty table within the array + +[[product]] +name = "Nail" +sku = 284758393 + +color = "gray" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-52.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-52.json new file mode 100644 index 0000000..d0bd4f3 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-52.json @@ -0,0 +1,25 @@ +{ + "fruits": [ + { + "name": {"type": "string", "value": "apple"}, + "physical": { + "color": {"type": "string", "value": "red"}, + "shape": {"type": "string", "value": "round"} + }, + "varieties": [ + { + "name": {"type": "string", "value": "red delicious"} + }, + { + "name": {"type": "string", "value": "granny smith"} + } + ] + }, + { + "name": {"type": "string", "value": "banana"}, + "varieties": [{ + "name": {"type": "string", "value": "plantain"} + }] + } + ] +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-52.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-52.toml new file mode 100644 index 0000000..7a3971f --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-52.toml @@ -0,0 +1,19 @@ +[[fruits]] +name = "apple" + +[fruits.physical] # subtable +color = "red" +shape = "round" + +[[fruits.varieties]] # nested array of tables +name = "red delicious" + +[[fruits.varieties]] +name = "granny smith" + + +[[fruits]] +name = "banana" + +[[fruits.varieties]] +name = "plantain" diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-53.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-53.json new file mode 100644 index 0000000..cc07841 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-53.json @@ -0,0 +1,19 @@ +{ + "points": [ + { + "x": {"type": "integer", "value": "1"}, + "y": {"type": "integer", "value": "2"}, + "z": {"type": "integer", "value": "3"} + }, + { + "x": {"type": "integer", "value": "7"}, + "y": {"type": "integer", "value": "8"}, + "z": {"type": "integer", "value": "9"} + }, + { + "x": {"type": "integer", "value": "2"}, + "y": {"type": "integer", "value": "4"}, + "z": {"type": "integer", "value": "8"} + } + ] +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-53.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-53.toml new file mode 100644 index 0000000..ba5584a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-53.toml @@ -0,0 +1,3 @@ +points = [ { x = 1, y = 2, z = 3 }, + { x = 7, y = 8, z = 9 }, + { x = 2, y = 4, z = 8 } ] diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-6.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-6.json new file mode 100644 index 0000000..51eadaf --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-6.json @@ -0,0 +1,10 @@ +{ + "name": {"type": "string", "value": "Orange"}, + "physical": { + "color": {"type": "string", "value": "orange"}, + "shape": {"type": "string", "value": "round"} + }, + "site": { + "google.com": {"type": "bool", "value": "true"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-6.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-6.toml new file mode 100644 index 0000000..8f83571 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-6.toml @@ -0,0 +1,4 @@ +name = "Orange" +physical.color = "orange" +physical.shape = "round" +site."google.com" = true diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-7.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-7.json new file mode 100644 index 0000000..efb1036 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-7.json @@ -0,0 +1,7 @@ +{ + "fruit": { + "color": {"type": "string", "value": "yellow"}, + "flavor": {"type": "string", "value": "banana"}, + "name": {"type": "string", "value": "banana"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-7.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-7.toml new file mode 100644 index 0000000..4629e39 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-7.toml @@ -0,0 +1,3 @@ +fruit.name = "banana" # this is best practice +fruit. color = "yellow" # same as fruit.color +fruit . flavor = "banana" # same as fruit.flavor diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-8.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-8.json new file mode 100644 index 0000000..81c42ef --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-8.json @@ -0,0 +1,8 @@ +{ + "fruit": { + "orange": {"type": "integer", "value": "2"}, + "apple": { + "smooth": {"type": "bool", "value": "true"} + } + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-8.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-8.toml new file mode 100644 index 0000000..b4d1b37 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-8.toml @@ -0,0 +1,5 @@ +# This makes the key "fruit" into a table. +fruit.apple.smooth = true + +# So then you can add to the table "fruit" like so: +fruit.orange = 2 diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-9.json b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-9.json new file mode 100644 index 0000000..3f4f298 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-9.json @@ -0,0 +1,12 @@ +{ + "apple": { + "color": {"type": "string", "value": "red"}, + "skin": {"type": "string", "value": "thin"}, + "type": {"type": "string", "value": "fruit"} + }, + "orange": { + "color": {"type": "string", "value": "orange"}, + "skin": {"type": "string", "value": "thick"}, + "type": {"type": "string", "value": "fruit"} + } +} diff --git a/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-9.toml b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-9.toml new file mode 100644 index 0000000..dc94a8c --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/spec-1.1.0/common-9.toml @@ -0,0 +1,10 @@ +# VALID BUT DISCOURAGED + +apple.type = "fruit" +orange.type = "fruit" + +apple.skin = "thin" +orange.skin = "thick" + +apple.color = "red" +orange.color = "orange" diff --git a/tests/CsToml.Tests/toml-test/valid/spec/float-0.json b/tests/CsToml.Tests/toml-test/valid/spec/float-0.json deleted file mode 100644 index 9817b41..0000000 --- a/tests/CsToml.Tests/toml-test/valid/spec/float-0.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "flt1": {"type": "float", "value": "1"}, - "flt2": {"type": "float", "value": "3.1415"}, - "flt3": {"type": "float", "value": "-0.01"}, - "flt4": {"type": "float", "value": "50000000000000000000000"}, - "flt5": {"type": "float", "value": "1000000"}, - "flt6": {"type": "float", "value": "-0.02"}, - "flt7": {"type": "float", "value": "0.0000000000000000000000000000000006626"} -} diff --git a/tests/CsToml.Tests/toml-test/valid/string/double-quote-escape.json b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-01.json similarity index 100% rename from tests/CsToml.Tests/toml-test/valid/string/double-quote-escape.json rename to tests/CsToml.Tests/toml-test/valid/string/basic-escape-01.json diff --git a/tests/CsToml.Tests/toml-test/valid/string/double-quote-escape.toml b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-01.toml similarity index 60% rename from tests/CsToml.Tests/toml-test/valid/string/double-quote-escape.toml rename to tests/CsToml.Tests/toml-test/valid/string/basic-escape-01.toml index 78e7e72..a8607f0 100644 --- a/tests/CsToml.Tests/toml-test/valid/string/double-quote-escape.toml +++ b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-01.toml @@ -1 +1,2 @@ +# Escape " test = "\"one\"" diff --git a/tests/CsToml.Tests/toml-test/valid/string/basic-escape-02.json b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-02.json new file mode 100644 index 0000000..96a7da5 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-02.json @@ -0,0 +1,3 @@ +{ + "test": {"type": "string", "value": "\\\"one"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/string/basic-escape-02.toml b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-02.toml new file mode 100644 index 0000000..dd74555 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-02.toml @@ -0,0 +1,2 @@ +# Escape \ and then " +test = "\\\"one" diff --git a/tests/CsToml.Tests/toml-test/valid/string/basic-escape-03.json b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-03.json new file mode 100644 index 0000000..ef40cee --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-03.json @@ -0,0 +1,3 @@ +{ + "test": {"type": "string", "value": "\\\\\\\\\"one"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/string/basic-escape-03.toml b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-03.toml new file mode 100644 index 0000000..238a0b7 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/string/basic-escape-03.toml @@ -0,0 +1,2 @@ +# Escape \ four times and then " +test = "\\\\\\\\\"one" diff --git a/tests/CsToml.Tests/toml-test/valid/string/multibyte-escape.json b/tests/CsToml.Tests/toml-test/valid/string/multibyte-escape.json new file mode 100644 index 0000000..4924122 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/string/multibyte-escape.json @@ -0,0 +1,6 @@ +{ + "basic-1": {"type": "string", "value": "ɑ € 𐫱 ɑ€𐫱"}, + "ml-basic-1": {"type": "string", "value": "ɑ € 𐫱 ɑ€𐫱"}, + "basic-2": {"type": "string", "value": "ɑ € 𐫱 ɑ€𐫱"}, + "ml-basic-2": {"type": "string", "value": "ɑ € 𐫱 ɑ€𐫱"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/string/multibyte-escape.toml b/tests/CsToml.Tests/toml-test/valid/string/multibyte-escape.toml new file mode 100644 index 0000000..cbaa550 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/string/multibyte-escape.toml @@ -0,0 +1,9 @@ +# Test each multibyte length: 2, 3, and 4 bytes: +# ɑ € 𐫱 + +basic-1 = "\u0251 \u20ac \U00010AF1 \u0251\u20ac\U00010AF1" +ml-basic-1 = """\u0251 \u20ac \U00010AF1 \u0251\u20ac\U00010AF1""" + +# Again, but only using \U +basic-2 = "\U00000251 \U000020ac \U00010AF1 \U00000251\U000020ac\U00010AF1" +ml-basic-2 = """\U00000251 \U000020ac \U00010AF1 \U00000251\U000020ac\U00010AF1""" diff --git a/tests/CsToml.Tests/toml-test/valid/string/multibyte.json b/tests/CsToml.Tests/toml-test/valid/string/multibyte.json new file mode 100644 index 0000000..a320f49 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/string/multibyte.json @@ -0,0 +1,6 @@ +{ + "basic": {"type": "string", "value": "ɑ € 𐫱 ɑ€𐫱"}, + "ml-basic": {"type": "string", "value": "ɑ € 𐫱 ɑ€𐫱"}, + "ml-raw": {"type": "string", "value": "ɑ € 𐫱 ɑ€𐫱"}, + "raw": {"type": "string", "value": "ɑ € 𐫱 ɑ€𐫱"} +} diff --git a/tests/CsToml.Tests/toml-test/valid/string/multibyte.toml b/tests/CsToml.Tests/toml-test/valid/string/multibyte.toml new file mode 100644 index 0000000..4a3ae68 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/string/multibyte.toml @@ -0,0 +1,7 @@ +# Test each multibyte length: 2, 3, and 4 bytes: +# ɑ € 𐫱 + +basic = "ɑ € 𐫱 ɑ€𐫱" +raw = 'ɑ € 𐫱 ɑ€𐫱' +ml-basic = """ɑ € 𐫱 ɑ€𐫱""" +ml-raw = '''ɑ € 𐫱 ɑ€𐫱''' diff --git a/tests/CsToml.Tests/toml-test/valid/string/raw-empty.json b/tests/CsToml.Tests/toml-test/valid/string/raw-empty.json new file mode 100644 index 0000000..c84a7ba --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/string/raw-empty.json @@ -0,0 +1,3 @@ +{ + "empty": {"type": "string", "value": ""} +} diff --git a/tests/CsToml.Tests/toml-test/valid/string/raw-empty.toml b/tests/CsToml.Tests/toml-test/valid/string/raw-empty.toml new file mode 100644 index 0000000..fec185a --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/string/raw-empty.toml @@ -0,0 +1 @@ +empty = '' diff --git a/tests/CsToml.Tests/toml-test/valid/string/unicode-literal.json b/tests/CsToml.Tests/toml-test/valid/string/unicode-literal.json deleted file mode 100644 index 00aa2f8..0000000 --- a/tests/CsToml.Tests/toml-test/valid/string/unicode-literal.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "answer": {"type": "string", "value": "δ"} -} diff --git a/tests/CsToml.Tests/toml-test/valid/string/unicode-literal.toml b/tests/CsToml.Tests/toml-test/valid/string/unicode-literal.toml deleted file mode 100644 index c65723c..0000000 --- a/tests/CsToml.Tests/toml-test/valid/string/unicode-literal.toml +++ /dev/null @@ -1 +0,0 @@ -answer = "δ" diff --git a/tests/CsToml.Tests/toml-test/valid/table/array-empty-name.json b/tests/CsToml.Tests/toml-test/valid/table/array-empty-name.json new file mode 100644 index 0000000..c850227 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/table/array-empty-name.json @@ -0,0 +1,6 @@ +{ + "": [ + {"a": {"type": "integer", "value": "1"}}, + {"a": {"type": "integer", "value": "2"}} + ] +} diff --git a/tests/CsToml.Tests/toml-test/valid/table/array-empty-name.toml b/tests/CsToml.Tests/toml-test/valid/table/array-empty-name.toml new file mode 100644 index 0000000..0004681 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/table/array-empty-name.toml @@ -0,0 +1,6 @@ +# Silly thing to do, but valid. + +[['']] +a = 1 +[['']] +a = 2 diff --git a/tests/CsToml.Tests/toml-test/valid/table/array-empty.json b/tests/CsToml.Tests/toml-test/valid/table/array-empty.json new file mode 100644 index 0000000..8aadea9 --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/table/array-empty.json @@ -0,0 +1,3 @@ +{ + "a": [{}] +} diff --git a/tests/CsToml.Tests/toml-test/valid/table/array-empty.toml b/tests/CsToml.Tests/toml-test/valid/table/array-empty.toml new file mode 100644 index 0000000..f7e428e --- /dev/null +++ b/tests/CsToml.Tests/toml-test/valid/table/array-empty.toml @@ -0,0 +1 @@ +[[a]]