-
-
Notifications
You must be signed in to change notification settings - Fork 25
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #104 from hadashiA/ku/more-builtin-formatters
Add to support some builtin types
- Loading branch information
Showing
38 changed files
with
1,581 additions
and
59 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
using NUnit.Framework; | ||
using VYaml.Tests.Serialization; | ||
|
||
namespace VYaml.Tests | ||
{ | ||
[TestFixture] | ||
public class MultiDimentionalArrayFormatterTest : FormatterTestBase | ||
{ | ||
[Test] | ||
public void TwoDimention() | ||
{ | ||
var value = new int[2, 3] { { 1, 2, 3 }, { 4, 5, 6 } }; | ||
var serialized = Serialize(value); | ||
Assert.That(serialized, Is.EqualTo( | ||
"- \n" + | ||
" - 1\n" + | ||
" - 2\n" + | ||
" - 3\n" + | ||
"- \n" + | ||
" - 4\n" + | ||
" - 5\n" + | ||
" - 6\n")); | ||
|
||
var deserialized = Deserialize<int[,]>(serialized); | ||
Assert.That(deserialized.GetLength(0), Is.EqualTo(2)); | ||
Assert.That(deserialized.GetLength(1), Is.EqualTo(3)); | ||
Assert.That(deserialized[0, 0], Is.EqualTo(1)); | ||
Assert.That(deserialized[0, 1], Is.EqualTo(2)); | ||
Assert.That(deserialized[0, 2], Is.EqualTo(3)); | ||
Assert.That(deserialized[1, 0], Is.EqualTo(4)); | ||
Assert.That(deserialized[1, 1], Is.EqualTo(5)); | ||
Assert.That(deserialized[1, 2], Is.EqualTo(6)); | ||
} | ||
|
||
[Test] | ||
public void ThreeDimention() | ||
{ | ||
var value = new int[4, 3, 2] | ||
{ | ||
{ { 1, 2 }, { 3, 4 }, { 5, 6 } }, | ||
{ { 7, 8 }, { 9, 0 }, { 1, 2 } }, | ||
{ { 3, 4 }, { 5, 6 }, { 7, 8 } }, | ||
{ { 9, 0 }, { 1, 2 }, { 3, 4 } }, | ||
}; | ||
var serialized = Serialize(value); | ||
Assert.That(serialized, Is.EqualTo( | ||
"- \n" + | ||
" - \n" + | ||
" - 1\n" + | ||
" - 2\n" + | ||
" - \n" + | ||
" - 3\n" + | ||
" - 4\n" + | ||
" - \n" + | ||
" - 5\n" + | ||
" - 6\n" + | ||
"- \n" + | ||
" - \n" + | ||
" - 7\n" + | ||
" - 8\n" + | ||
" - \n" + | ||
" - 9\n" + | ||
" - 0\n" + | ||
" - \n" + | ||
" - 1\n" + | ||
" - 2\n" + | ||
"- \n" + | ||
" - \n" + | ||
" - 3\n" + | ||
" - 4\n" + | ||
" - \n" + | ||
" - 5\n" + | ||
" - 6\n" + | ||
" - \n" + | ||
" - 7\n" + | ||
" - 8\n" + | ||
"- \n" + | ||
" - \n" + | ||
" - 9\n" + | ||
" - 0\n" + | ||
" - \n" + | ||
" - 1\n" + | ||
" - 2\n" + | ||
" - \n" + | ||
" - 3\n" + | ||
" - 4\n" | ||
)); | ||
|
||
var deserialized = Deserialize<int[,,]>(serialized); | ||
Assert.That(deserialized.GetLength(0), Is.EqualTo(4)); | ||
Assert.That(deserialized.GetLength(1), Is.EqualTo(3)); | ||
Assert.That(deserialized.GetLength(2), Is.EqualTo(2)); | ||
Assert.That(deserialized[0, 0, 0], Is.EqualTo(1)); | ||
Assert.That(deserialized[0, 1, 1], Is.EqualTo(4)); | ||
Assert.That(deserialized[2, 1, 1], Is.EqualTo(6)); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
using System.Collections.Generic; | ||
using NUnit.Framework; | ||
|
||
namespace VYaml.Tests.Serialization | ||
{ | ||
public class QueueFormatterTest : FormatterTestBase | ||
{ | ||
[Test] | ||
public void Serialize() | ||
{ | ||
var value = new Queue<int>(); | ||
value.Enqueue(111); | ||
value.Enqueue(222); | ||
value.Enqueue(333); | ||
var serialied = Serialize(value); | ||
Assert.That(serialied, Is.EqualTo("- 111\n- 222\n- 333\n")); | ||
|
||
var deserialized = Deserialize<Queue<int>>(serialied); | ||
Assert.That(deserialized.Count, Is.EqualTo(3)); | ||
Assert.That(deserialized.Dequeue(), Is.EqualTo(111)); | ||
Assert.That(deserialized.Dequeue(), Is.EqualTo(222)); | ||
Assert.That(deserialized.Dequeue(), Is.EqualTo(333)); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
using System.Collections; | ||
using NUnit.Framework; | ||
|
||
namespace VYaml.Tests.Serialization | ||
{ | ||
[TestFixture] | ||
public class BitArrayFormatterTest : FormatterTestBase | ||
{ | ||
[Test] | ||
public void Serialize() | ||
{ | ||
var value = new BitArray(new[] { true, false, true, false, false }); | ||
var result = Serialize(value); | ||
Assert.That(result, Is.EqualTo("10100")); | ||
} | ||
|
||
[Test] | ||
public void Deserialize() | ||
{ | ||
var result = Deserialize<BitArray>("111000"); | ||
Assert.That(result, Is.EquivalentTo(new BitArray(new[] { true, true, true, false, false, false }))); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
using System.Collections.Generic; | ||
using NUnit.Framework; | ||
|
||
namespace VYaml.Tests.Serialization | ||
{ | ||
public class StackFormatterTest : FormatterTestBase | ||
{ | ||
[Test] | ||
public void Serialize() | ||
{ | ||
var value = new Stack<int>(); | ||
value.Push(111); | ||
value.Push(222); | ||
value.Push(333); | ||
var serialied = Serialize(value); | ||
Assert.That(serialied, Is.EqualTo("- 333\n- 222\n- 111\n")); | ||
|
||
var deserialized = Deserialize<Stack<int>>(serialied); | ||
Assert.That(deserialized.Count, Is.EqualTo(3)); | ||
Assert.That(deserialized.Pop(), Is.EqualTo(333)); | ||
Assert.That(deserialized.Pop(), Is.EqualTo(222)); | ||
Assert.That(deserialized.Pop(), Is.EqualTo(111)); | ||
} | ||
} | ||
} |
98 changes: 98 additions & 0 deletions
98
VYaml.Unity/Assets/Tests/MultiDimentionalArrayFormatterTest.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
using NUnit.Framework; | ||
using VYaml.Tests.Serialization; | ||
|
||
namespace VYaml.Tests | ||
{ | ||
[TestFixture] | ||
public class MultiDimentionalArrayFormatterTest : FormatterTestBase | ||
{ | ||
[Test] | ||
public void TwoDimention() | ||
{ | ||
var value = new int[2, 3] { { 1, 2, 3 }, { 4, 5, 6 } }; | ||
var serialized = Serialize(value); | ||
Assert.That(serialized, Is.EqualTo( | ||
"- \n" + | ||
" - 1\n" + | ||
" - 2\n" + | ||
" - 3\n" + | ||
"- \n" + | ||
" - 4\n" + | ||
" - 5\n" + | ||
" - 6\n")); | ||
|
||
var deserialized = Deserialize<int[,]>(serialized); | ||
Assert.That(deserialized.GetLength(0), Is.EqualTo(2)); | ||
Assert.That(deserialized.GetLength(1), Is.EqualTo(3)); | ||
Assert.That(deserialized[0, 0], Is.EqualTo(1)); | ||
Assert.That(deserialized[0, 1], Is.EqualTo(2)); | ||
Assert.That(deserialized[0, 2], Is.EqualTo(3)); | ||
Assert.That(deserialized[1, 0], Is.EqualTo(4)); | ||
Assert.That(deserialized[1, 1], Is.EqualTo(5)); | ||
Assert.That(deserialized[1, 2], Is.EqualTo(6)); | ||
} | ||
|
||
[Test] | ||
public void ThreeDimention() | ||
{ | ||
var value = new int[4, 3, 2] | ||
{ | ||
{ { 1, 2 }, { 3, 4 }, { 5, 6 } }, | ||
{ { 7, 8 }, { 9, 0 }, { 1, 2 } }, | ||
{ { 3, 4 }, { 5, 6 }, { 7, 8 } }, | ||
{ { 9, 0 }, { 1, 2 }, { 3, 4 } }, | ||
}; | ||
var serialized = Serialize(value); | ||
Assert.That(serialized, Is.EqualTo( | ||
"- \n" + | ||
" - \n" + | ||
" - 1\n" + | ||
" - 2\n" + | ||
" - \n" + | ||
" - 3\n" + | ||
" - 4\n" + | ||
" - \n" + | ||
" - 5\n" + | ||
" - 6\n" + | ||
"- \n" + | ||
" - \n" + | ||
" - 7\n" + | ||
" - 8\n" + | ||
" - \n" + | ||
" - 9\n" + | ||
" - 0\n" + | ||
" - \n" + | ||
" - 1\n" + | ||
" - 2\n" + | ||
"- \n" + | ||
" - \n" + | ||
" - 3\n" + | ||
" - 4\n" + | ||
" - \n" + | ||
" - 5\n" + | ||
" - 6\n" + | ||
" - \n" + | ||
" - 7\n" + | ||
" - 8\n" + | ||
"- \n" + | ||
" - \n" + | ||
" - 9\n" + | ||
" - 0\n" + | ||
" - \n" + | ||
" - 1\n" + | ||
" - 2\n" + | ||
" - \n" + | ||
" - 3\n" + | ||
" - 4\n" | ||
)); | ||
|
||
var deserialized = Deserialize<int[,,]>(serialized); | ||
Assert.That(deserialized.GetLength(0), Is.EqualTo(4)); | ||
Assert.That(deserialized.GetLength(1), Is.EqualTo(3)); | ||
Assert.That(deserialized.GetLength(2), Is.EqualTo(2)); | ||
Assert.That(deserialized[0, 0, 0], Is.EqualTo(1)); | ||
Assert.That(deserialized[0, 1, 1], Is.EqualTo(4)); | ||
Assert.That(deserialized[2, 1, 1], Is.EqualTo(6)); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
using System.Collections.Generic; | ||
using NUnit.Framework; | ||
|
||
namespace VYaml.Tests.Serialization | ||
{ | ||
public class QueueFormatterTest : FormatterTestBase | ||
{ | ||
[Test] | ||
public void Serialize() | ||
{ | ||
var value = new Queue<int>(); | ||
value.Enqueue(111); | ||
value.Enqueue(222); | ||
value.Enqueue(333); | ||
var serialied = Serialize(value); | ||
Assert.That(serialied, Is.EqualTo("- 111\n- 222\n- 333\n")); | ||
|
||
var deserialized = Deserialize<Queue<int>>(serialied); | ||
Assert.That(deserialized.Count, Is.EqualTo(3)); | ||
Assert.That(deserialized.Dequeue(), Is.EqualTo(111)); | ||
Assert.That(deserialized.Dequeue(), Is.EqualTo(222)); | ||
Assert.That(deserialized.Dequeue(), Is.EqualTo(333)); | ||
} | ||
} | ||
} |
24 changes: 24 additions & 0 deletions
24
VYaml.Unity/Assets/Tests/Serialization/BitArrayFormatterTest.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
using System.Collections; | ||
using NUnit.Framework; | ||
|
||
namespace VYaml.Tests.Serialization | ||
{ | ||
[TestFixture] | ||
public class BitArrayFormatterTest : FormatterTestBase | ||
{ | ||
[Test] | ||
public void Serialize() | ||
{ | ||
var value = new BitArray(new[] { true, false, true, false, false }); | ||
var result = Serialize(value); | ||
Assert.That(result, Is.EqualTo("10100")); | ||
} | ||
|
||
[Test] | ||
public void Deserialize() | ||
{ | ||
var result = Deserialize<BitArray>("111000"); | ||
Assert.That(result, Is.EquivalentTo(new BitArray(new[] { true, true, true, false, false, false }))); | ||
} | ||
} | ||
} |
25 changes: 25 additions & 0 deletions
25
VYaml.Unity/Assets/Tests/Serialization/StackFormatterTest.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
using System.Collections.Generic; | ||
using NUnit.Framework; | ||
|
||
namespace VYaml.Tests.Serialization | ||
{ | ||
public class StackFormatterTest : FormatterTestBase | ||
{ | ||
[Test] | ||
public void Serialize() | ||
{ | ||
var value = new Stack<int>(); | ||
value.Push(111); | ||
value.Push(222); | ||
value.Push(333); | ||
var serialied = Serialize(value); | ||
Assert.That(serialied, Is.EqualTo("- 333\n- 222\n- 111\n")); | ||
|
||
var deserialized = Deserialize<Stack<int>>(serialied); | ||
Assert.That(deserialized.Count, Is.EqualTo(3)); | ||
Assert.That(deserialized.Pop(), Is.EqualTo(333)); | ||
Assert.That(deserialized.Pop(), Is.EqualTo(222)); | ||
Assert.That(deserialized.Pop(), Is.EqualTo(111)); | ||
} | ||
} | ||
} |
1 change: 0 additions & 1 deletion
1
VYaml.Unity/Assets/VYaml/Runtime/Serialization/Formatters/ArrayFormatter.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,3 @@ | ||
#nullable enable | ||
using System.Collections.Generic; | ||
using VYaml.Emitter; | ||
using VYaml.Parser; | ||
|
Oops, something went wrong.