diff options
Diffstat (limited to 'src/StardewModdingAPI.Tests')
-rw-r--r-- | src/StardewModdingAPI.Tests/TranslationTests.cs | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/StardewModdingAPI.Tests/TranslationTests.cs b/src/StardewModdingAPI.Tests/TranslationTests.cs index a2fef2b7..6a430aa7 100644 --- a/src/StardewModdingAPI.Tests/TranslationTests.cs +++ b/src/StardewModdingAPI.Tests/TranslationTests.cs @@ -180,7 +180,7 @@ namespace StardewModdingAPI.Tests ** Translation tokens ****/ [Test(Description = "Assert that multiple translation tokens are replaced correctly regardless of the token structure.")] - public void Translation_Tokens([Values("anonymous object", "IDictionary<string, object>", "IDictionary<string, string>")] string structure) + public void Translation_Tokens([Values("anonymous object", "class", "IDictionary<string, object>", "IDictionary<string, string>")] string structure) { // arrange string start = Guid.NewGuid().ToString("N"); @@ -197,6 +197,10 @@ namespace StardewModdingAPI.Tests translation = translation.Tokens(new { start, middle, end }); break; + case "class": + translation = translation.Tokens(new TokenModel { Start = start, Middle = middle, End = end }); + break; + case "IDictionary<string, object>": translation = translation.Tokens(new Dictionary<string, object> { ["start"] = start, ["middle"] = middle, ["end"] = end }); break; @@ -323,5 +327,22 @@ namespace StardewModdingAPI.Tests { return string.Format(Translation.PlaceholderText, key); } + + + /********* + ** Test models + *********/ + /// <summary>A model used to test token support.</summary> + private class TokenModel + { + /// <summary>A sample token property.</summary> + public string Start { get; set; } + + /// <summary>A sample token property.</summary> + public string Middle { get; set; } + + /// <summary>A sample token field.</summary> + public string End; + } } } |