Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 6 additions & 5 deletions .BinaryPrefs/Packages/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,14 @@
"com.appegy.binary-prefs": "file:../..",
"com.boundfoxstudios.fluentassertions": "6.8.0",
"com.unity.2d.sprite": "1.0.0",
"com.unity.ide.rider": "3.0.31",
"com.unity.mobile.android-logcat": "1.4.3",
"com.unity.test-framework": "2.0.1-pre.18",
"com.unity.textmeshpro": "3.0.9",
"com.unity.ugui": "1.0.0",
"com.unity.ide.rider": "3.0.36",
"com.unity.mobile.android-logcat": "1.4.5",
"com.unity.multiplayer.center": "1.0.0",
"com.unity.test-framework": "1.5.1",
"com.unity.ugui": "2.0.0",
"com.yasirkula.ingamedebugconsole": "https://github.com/yasirkula/UnityIngameDebugConsole.git",
"net.tnrd.nsubstitute": "5.1.0",
"com.unity.modules.accessibility": "1.0.0",
"com.unity.modules.androidjni": "1.0.0",
"com.unity.modules.animation": "1.0.0",
"com.unity.modules.audio": "1.0.0",
Expand Down
62 changes: 41 additions & 21 deletions .BinaryPrefs/Packages/packages-lock.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,13 @@
"dependencies": {}
},
"com.unity.ext.nunit": {
"version": "2.0.2",
"version": "2.0.5",
"depth": 1,
"source": "registry",
"dependencies": {},
"url": "https://packages.unity.com"
"source": "builtin",
"dependencies": {}
},
"com.unity.ide.rider": {
"version": "3.0.31",
"version": "3.0.36",
"depth": 0,
"source": "registry",
"dependencies": {
Expand All @@ -36,34 +35,32 @@
"url": "https://packages.unity.com"
},
"com.unity.mobile.android-logcat": {
"version": "1.4.3",
"version": "1.4.5",
"depth": 0,
"source": "registry",
"dependencies": {},
"url": "https://packages.unity.com"
},
"com.unity.test-framework": {
"version": "2.0.1-pre.18",
"com.unity.multiplayer.center": {
"version": "1.0.0",
"depth": 0,
"source": "registry",
"source": "builtin",
"dependencies": {
"com.unity.ext.nunit": "2.0.2",
"com.unity.modules.imgui": "1.0.0",
"com.unity.modules.jsonserialize": "1.0.0"
},
"url": "https://packages.unity.com"
"com.unity.modules.uielements": "1.0.0"
}
},
"com.unity.textmeshpro": {
"version": "3.0.9",
"com.unity.test-framework": {
"version": "1.5.1",
"depth": 0,
"source": "registry",
"source": "builtin",
"dependencies": {
"com.unity.ugui": "1.0.0"
},
"url": "https://packages.unity.com"
"com.unity.ext.nunit": "2.0.3",
"com.unity.modules.imgui": "1.0.0",
"com.unity.modules.jsonserialize": "1.0.0"
}
},
"com.unity.ugui": {
"version": "1.0.0",
"version": "2.0.0",
"depth": 0,
"source": "builtin",
"dependencies": {
Expand All @@ -85,6 +82,12 @@
"dependencies": {},
"url": "https://package.openupm.com"
},
"com.unity.modules.accessibility": {
"version": "1.0.0",
"depth": 0,
"source": "builtin",
"dependencies": {}
},
"com.unity.modules.androidjni": {
"version": "1.0.0",
"depth": 0,
Expand All @@ -103,6 +106,12 @@
"source": "builtin",
"dependencies": {}
},
"com.unity.modules.hierarchycore": {
"version": "1.0.0",
"depth": 2,
"source": "builtin",
"dependencies": {}
},
"com.unity.modules.imgui": {
"version": "1.0.0",
"depth": 0,
Expand All @@ -120,6 +129,17 @@
"depth": 0,
"source": "builtin",
"dependencies": {}
},
"com.unity.modules.uielements": {
"version": "1.0.0",
"depth": 1,
"source": "builtin",
"dependencies": {
"com.unity.modules.ui": "1.0.0",
"com.unity.modules.imgui": "1.0.0",
"com.unity.modules.jsonserialize": "1.0.0",
"com.unity.modules.hierarchycore": "1.0.0"
}
}
}
}
7 changes: 7 additions & 0 deletions .BinaryPrefs/ProjectSettings/MultiplayerManager.asset
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!655991488 &1
MultiplayerManager:
m_ObjectHideFlags: 0
m_EnableMultiplayerRoles: 0
m_StrippingTypes: {}
4 changes: 2 additions & 2 deletions .BinaryPrefs/ProjectSettings/ProjectVersion.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
m_EditorVersion: 2022.3.42f1
m_EditorVersionWithRevision: 2022.3.42f1 (2dcb6a0abc42)
m_EditorVersion: 6000.0.51f1
m_EditorVersionWithRevision: 6000.0.51f1 (01c3ff5872c5)
9 changes: 5 additions & 4 deletions Tests/TypeSerializers/BooleanSerializer.cs
Original file line number Diff line number Diff line change
@@ -1,18 +1,19 @@
using NUnit.Framework;
using System.Collections.Generic;

namespace Appegy.Storage.TypeSerializers
{
[TestFixture]
[TestFixtureSource(nameof(Inputs))]
internal class BooleanTypeSerializerTests : BaseTypeSerializerTests<bool, BooleanSerializer>
{
private static bool[] Inputs => new[]
private static IEnumerable<object[]> Inputs => new[]
{
true, // true boolean value
false, // false boolean value
new object[] { true, "true" },
new object[] { false, "false" }
};

public BooleanTypeSerializerTests(bool value) : base(value)
public BooleanTypeSerializerTests(bool value, string _) : base(value)
{
}
}
Expand Down
23 changes: 12 additions & 11 deletions Tests/TypeSerializers/ByteTypeSerializerTests.cs
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
using NUnit.Framework;
using System.Collections.Generic;

namespace Appegy.Storage.TypeSerializers
{
[TestFixture]
[TestFixtureSource(nameof(Inputs))]
internal class ByteTypeSerializerTests : BaseTypeSerializerTests<byte, ByteSerializer>
{
private static byte[] Inputs => new[]
private static IEnumerable<object[]> Inputs => new[]
{
byte.MinValue, // 0
byte.MaxValue, // 255
(byte)1, // Smallest positive byte
(byte)127, // Middle value
(byte)64, // Power of two
(byte)3, // Just below a power of two
(byte)10, // Random small value
(byte)100, // Random middle value
(byte)200, // Random large value
new object[] { byte.MinValue, "min" },
new object[] { byte.MaxValue, "max" },
new object[] { (byte)1, "one" },
new object[] { (byte)127, "mid" },
new object[] { (byte)64, "pow2" },
new object[] { (byte)3, "below_pow2" },
new object[] { (byte)10, "small" },
new object[] { (byte)100, "middle" },
new object[] { (byte)200, "large" }
};

public ByteTypeSerializerTests(byte value) : base(value)
public ByteTypeSerializerTests(byte value, string _) : base(value)
{
}
}
Expand Down
44 changes: 21 additions & 23 deletions Tests/TypeSerializers/CharTypeSerializerTests.cs
Original file line number Diff line number Diff line change
@@ -1,37 +1,35 @@
using NUnit.Framework;
using System.Collections.Generic;

namespace Appegy.Storage.TypeSerializers
{
[TestFixture]
[TestFixtureSource(nameof(Inputs))]
internal class CharTypeSerializerTests : BaseTypeSerializerTests<char, CharSerializer>
{
private static char[] Inputs => new[]
private static IEnumerable<object[]> Inputs => new[]
{
'\t', // tab
'\n', // newline
'\r', // carriage return
'\u00E9', // Unicode character é
'\u20AC', // Euro sign €
'\u3042', // Hiragana letter A
//'\uD83D', // Emoji
'\u0001', // ASCII control character (Start of Heading)
'\u4E9C', // Han character 亜
'a', // lowercase letter
'Z', // uppercase letter
'5', // digit
' ', // space
'!', // exclamation mark
'g', // latin
'ў', // cyrillic
'里', // chinese simplified
'爾', // chinese traditional
'ة', // arabic
// TODO: this one currently breaks tests
//'\0',
new object[] { '\t', "tab" },
new object[] { '\n', "newline" },
new object[] { '\r', "carriage_return" },
new object[] { '\u00E9', "unicode_e" },
new object[] { '\u20AC', "euro" },
new object[] { '\u3042', "hiragana_a" },
new object[] { '\u0001', "ctrl_soh" },
new object[] { '\u4E9C', "han_1" },
new object[] { 'a', "a" },
new object[] { 'Z', "Z" },
new object[] { '5', "5" },
new object[] { ' ', "space" },
new object[] { '!', "exclamation" },
new object[] { 'g', "g" },
new object[] { 'ў', "cyrillic" },
new object[] { '里', "chinese_simple" },
new object[] { '爾', "chinese_trad" },
new object[] { 'ة', "arabic" }
};

public CharTypeSerializerTests(char value) : base(value)
public CharTypeSerializerTests(char value, string _) : base(value)
{
}
}
Expand Down
27 changes: 14 additions & 13 deletions Tests/TypeSerializers/DateTimeTypeSerializerTests.cs
Original file line number Diff line number Diff line change
@@ -1,28 +1,29 @@
using System;
using NUnit.Framework;
using System.Collections.Generic;

namespace Appegy.Storage.TypeSerializers
{
[TestFixture]
[TestFixtureSource(nameof(Inputs))]
internal class DateTimeTypeSerializerTests : BaseTypeSerializerTests<DateTime, DateTimeSerializer>
{
private static DateTime[] Inputs => new[]
private static IEnumerable<object[]> Inputs => new[]
{
DateTime.MinValue, // 0001-01-01 00:00:00
DateTime.MaxValue, // 9999-12-31 23:59:59
new DateTime(638542591551251841L, DateTimeKind.Local),
new DateTime(638542519494481194L, DateTimeKind.Utc),
new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc),
new DateTime(2024, 6, 17, 0, 0, 0, DateTimeKind.Local),
new DateTime(2023, 6, 1, 12, 0, 0), // 2023-06-01 12:00:00
new DateTime(1995, 7, 26, 8, 0, 0), // 1995-07-26 08:00:00
new DateTime(2030, 1, 15, 17, 30, 0), // 2030-01-15 17:30:00
new DateTime(1980, 5, 10, 3, 45, 0), // 1980-05-10 03:45:00
new DateTime(2024, 12, 31, 23, 59, 59), // 2024-12-31 23:59:59
new object[] { DateTime.MinValue, "min" },
new object[] { DateTime.MaxValue, "max" },
new object[] { new DateTime(638542591551251841L, DateTimeKind.Local), "ticks_local_1" },
new object[] { new DateTime(638542519494481194L, DateTimeKind.Utc), "ticks_utc_1" },
new object[] { new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc), "epoch_utc" },
new object[] { new DateTime(2024, 6, 17, 0, 0, 0, DateTimeKind.Local), "2024_06_17_local" },
new object[] { new DateTime(2023, 6, 1, 12, 0, 0), "2023_06_01_12_00" },
new object[] { new DateTime(1995, 7, 26, 8, 0, 0), "1995_07_26_08_00" },
new object[] { new DateTime(2030, 1, 15, 17, 30, 0), "2030_01_15_17_30" },
new object[] { new DateTime(1980, 5, 10, 3, 45, 0), "1980_05_10_03_45" },
new object[] { new DateTime(2024, 12, 31, 23, 59, 59), "2024_12_31_23_59_59" }
};

public DateTimeTypeSerializerTests(DateTime value) : base(value)
public DateTimeTypeSerializerTests(DateTime value, string _) : base(value)
{
}
}
Expand Down
27 changes: 14 additions & 13 deletions Tests/TypeSerializers/DecimalTypeSerializerTests.cs
Original file line number Diff line number Diff line change
@@ -1,27 +1,28 @@
using NUnit.Framework;
using System.Collections.Generic;

namespace Appegy.Storage.TypeSerializers
{
[TestFixture]
[TestFixtureSource(nameof(Inputs))]
internal class DecimalTypeSerializerTests : BaseTypeSerializerTests<decimal, DecimalSerializer>
{
private static decimal[] Inputs => new[]
private static IEnumerable<object[]> Inputs => new[]
{
decimal.MinValue, // -79228162514264337593543950335
decimal.MaxValue, // 79228162514264337593543950335
0.0m, // zero
1.0m, // smallest positive decimal
-1.0m, // smallest negative decimal
3.1415926535897932384626433832m, // pi
-3.1415926535897932384626433832m, // negative pi
1234567890123456789012345678.9m, // random positive value
-1234567890123456789012345678.9m, // random negative value
1234.5678901234567890123456789m, // random positive value
-1234.5678901234567890123456789m // random negative value
new object[] { decimal.MinValue, "min" },
new object[] { decimal.MaxValue, "max" },
new object[] { 0.0m, "zero" },
new object[] { 1.0m, "one" },
new object[] { -1.0m, "minus_one" },
new object[] { 3.1415926535897932384626433832m, "pi" },
new object[] { -3.1415926535897932384626433832m, "minus_pi" },
new object[] { 1234567890123456789012345678.9m, "big_pos" },
new object[] { -1234567890123456789012345678.9m, "big_neg" },
new object[] { 1234.5678901234567890123456789m, "rnd_pos" },
new object[] { -1234.5678901234567890123456789m, "rnd_neg" }
};

public DecimalTypeSerializerTests(decimal value) : base(value)
public DecimalTypeSerializerTests(decimal value, string _) : base(value)
{
}
}
Expand Down
25 changes: 13 additions & 12 deletions Tests/TypeSerializers/DoubleTypeSerializerTests.cs
Original file line number Diff line number Diff line change
@@ -1,26 +1,27 @@
using NUnit.Framework;
using System.Collections.Generic;

namespace Appegy.Storage.TypeSerializers
{
[TestFixture]
[TestFixtureSource(nameof(Inputs))]
internal class DoubleTypeSerializerTests : BaseTypeSerializerTests<double, DoubleSerializer>
{
private static double[] Inputs => new[]
private static IEnumerable<object[]> Inputs => new[]
{
double.MinValue, // -1.7976931348623157E+308
double.MaxValue, // 1.7976931348623157E+308
double.Epsilon, // 4.94065645841247E-324
double.NegativeInfinity, // Negative infinity
double.PositiveInfinity, // Positive infinity
0.0, // zero
1.0, // smallest positive double
-1.0, // smallest negative double
3.14159265358979, // pi
-3.14159265358979 // negative pi
new object[] { double.MinValue, "min" },
new object[] { double.MaxValue, "max" },
new object[] { double.Epsilon, "epsilon" },
new object[] { double.NegativeInfinity, "neg_inf" },
new object[] { double.PositiveInfinity, "pos_inf" },
new object[] { 0.0, "zero" },
new object[] { 1.0, "one" },
new object[] { -1.0, "minus_one" },
new object[] { 3.14159265358979, "pi" },
new object[] { -3.14159265358979, "minus_pi" }
};

public DoubleTypeSerializerTests(double value) : base(value)
public DoubleTypeSerializerTests(double value, string _) : base(value)
{
}
}
Expand Down
Loading