com.wallstop-studios.unity-helpers 2.0.0-rc58 → 2.0.0-rc59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.config/dotnet-tools.json +9 -9
- package/.editorconfig +184 -184
- package/.gitattributes +63 -63
- package/.github/workflows/npm-publish.yml +66 -66
- package/.pre-commit-config.yaml +21 -21
- package/Editor/AnimationCopier.cs +181 -181
- package/Editor/AnimationCopier.cs.meta +2 -2
- package/Editor/AnimationCreator.cs +253 -253
- package/Editor/AnimationCreator.cs.meta +11 -11
- package/Editor/AnimationEventEditor.cs +887 -887
- package/Editor/AnimatorControllerCopier.cs +162 -162
- package/Editor/AnimatorControllerCopier.cs.meta +2 -2
- package/Editor/CustomEditors/MatchColliderToSpriteEditor.cs +34 -34
- package/Editor/CustomEditors/MatchColliderToSpriteEditor.cs.meta +2 -2
- package/Editor/CustomEditors.meta +2 -2
- package/Editor/FitTextureSizeWizard.cs +147 -147
- package/Editor/FitTextureSizeWizard.cs.meta +2 -2
- package/Editor/PrefabCheckWizard.cs +170 -170
- package/Editor/PrefabCheckWizard.cs.meta +11 -11
- package/Editor/SpriteSettingsApplier.cs +272 -272
- package/Editor/SpriteSettingsApplier.cs.meta +2 -2
- package/Editor/StringInListeDrawer.cs +56 -56
- package/Editor/TextureResizerWizard.cs +181 -181
- package/Editor/TextureResizerWizard.cs.meta +2 -2
- package/Editor/TextureSettingsApplier.cs +178 -178
- package/Editor/TextureSettingsApplier.cs.meta +2 -2
- package/Editor/Utils/DxReadOnlyPropertyDrawer.cs +26 -26
- package/Editor/Utils/DxReadOnlyPropertyDrawer.cs.meta +11 -11
- package/Editor/Utils/EditorUtilities.cs +22 -22
- package/Editor/Utils/EditorUtilities.cs.meta +11 -11
- package/Editor/Utils.meta +8 -8
- package/Editor/WShowIfPropertyDrawer.cs +63 -63
- package/Editor/WallstopStudios.UnityHelpers.Editor.asmdef +17 -17
- package/Editor/WallstopStudios.UnityHelpers.Editor.asmdef.meta +7 -7
- package/LICENSE +21 -21
- package/LICENSE.md +6 -6
- package/LICENSE.meta +7 -7
- package/README.md +177 -177
- package/Runtime/Binaries/Microsoft.Bcl.AsyncInterfaces.dll.meta +33 -33
- package/Runtime/Binaries/Microsoft.Bcl.AsyncInterfaces.xml +223 -223
- package/Runtime/Binaries/Microsoft.Bcl.AsyncInterfaces.xml.meta +7 -7
- package/Runtime/Binaries/System.Text.Encodings.Web.dll.meta +33 -33
- package/Runtime/Binaries/System.Text.Encodings.Web.xml +935 -935
- package/Runtime/Binaries/System.Text.Encodings.Web.xml.meta +7 -7
- package/Runtime/Binaries/System.Text.Json.dll.meta +33 -33
- package/Runtime/Binaries/System.Text.Json.xml +4829 -4829
- package/Runtime/Binaries/System.Text.Json.xml.meta +7 -7
- package/Runtime/Binaries.meta +8 -8
- package/Runtime/Core/Attributes/AnimationEventAttribute.cs +131 -131
- package/Runtime/Core/Attributes/ChildComponentAttribute.cs +209 -209
- package/Runtime/Core/Attributes/DxReadOnlyAttribute.cs +6 -6
- package/Runtime/Core/Attributes/KSerializableAttribute.cs +19 -19
- package/Runtime/Core/Attributes/NotNullAttribute.cs +32 -32
- package/Runtime/Core/Attributes/ParentComponent.cs +185 -185
- package/Runtime/Core/Attributes/RelationalComponentExtensions.cs +14 -14
- package/Runtime/Core/Attributes/SiblingComponentAttribute.cs +117 -117
- package/Runtime/Core/Attributes/SiblingComponentAttribute.cs.meta +11 -11
- package/Runtime/Core/Attributes/ValidateAssignmentAttribute.cs +101 -101
- package/Runtime/Core/Attributes/ValidateAssignmentAttribute.cs.meta +11 -11
- package/Runtime/Core/Attributes/WShowIfAttribute.cs +16 -16
- package/Runtime/Core/Attributes.meta +8 -8
- package/Runtime/Core/DataStructure/Adapters/FastVector2Int.cs +92 -92
- package/Runtime/Core/DataStructure/Adapters/FastVector3Int.cs +185 -185
- package/Runtime/Core/DataStructure/Adapters/KGuid.cs +305 -305
- package/Runtime/Core/DataStructure/Adapters/KVector2.cs +80 -80
- package/Runtime/Core/DataStructure/Circle.cs +50 -50
- package/Runtime/Core/DataStructure/CyclicBuffer.cs +193 -153
- package/Runtime/Core/DataStructure/ISpatialTree.cs +60 -60
- package/Runtime/Core/DataStructure/ISpatialTree.cs.meta +11 -11
- package/Runtime/Core/DataStructure/KDTree.cs +292 -292
- package/Runtime/Core/DataStructure/KDTree.cs.meta +11 -11
- package/Runtime/Core/DataStructure/QuadTree.cs +287 -287
- package/Runtime/Core/DataStructure/RTree.cs +346 -346
- package/Runtime/Core/DataStructure/RTree.cs.meta +11 -11
- package/Runtime/Core/DataStructure/StringWrapper.cs +91 -91
- package/Runtime/Core/DataStructure/TimedCache.cs +66 -66
- package/Runtime/Core/Extension/AnimatorExtensions.cs +25 -25
- package/Runtime/Core/Extension/AsyncOperationExtensions.cs +110 -110
- package/Runtime/Core/Extension/CircleExtensions.cs +25 -25
- package/Runtime/Core/Extension/ColorExtensions.cs +629 -629
- package/Runtime/Core/Extension/DictionaryExtensions.cs +279 -279
- package/Runtime/Core/Extension/DirectionExtensions.cs +213 -213
- package/Runtime/Core/Extension/EnumExtensions.cs +37 -37
- package/Runtime/Core/Extension/EnumExtensions.cs.meta +2 -2
- package/Runtime/Core/Extension/HashSetExtensions.cs +12 -12
- package/Runtime/Core/Extension/IEnumerableExtensions.cs +122 -122
- package/Runtime/Core/Extension/IListExtensions.cs +146 -106
- package/Runtime/Core/Extension/LoggingExtensions.cs +258 -258
- package/Runtime/Core/Extension/RandomExtensions.cs +109 -109
- package/Runtime/Core/Extension/SerializedPropertyExtensions.cs +157 -157
- package/Runtime/Core/Extension/StringExtensions.cs +180 -151
- package/Runtime/Core/Extension/UnityExtensions.cs +1608 -1608
- package/Runtime/Core/Helper/ArrayConverter.cs +39 -39
- package/Runtime/Core/Helper/ArrayConverter.cs.meta +2 -2
- package/Runtime/Core/Helper/AssignUtilities.cs +14 -14
- package/Runtime/Core/Helper/AssignUtilities.cs.meta +11 -11
- package/Runtime/Core/Helper/DirectoryHelper.cs +132 -0
- package/Runtime/Core/Helper/DirectoryHelper.cs.meta +3 -0
- package/Runtime/Core/Helper/Enumerables.cs +17 -17
- package/Runtime/Core/Helper/FormattingHelpers.cs +32 -32
- package/Runtime/Core/Helper/Geometry.cs +43 -43
- package/Runtime/Core/Helper/Helpers.cs +722 -722
- package/Runtime/Core/Helper/Helpers.cs.meta +11 -11
- package/Runtime/Core/Helper/IterationHelpers.cs +32 -32
- package/Runtime/Core/Helper/IterationHelpers.cs.meta +11 -11
- package/Runtime/Core/Helper/LifetimeHelpers.cs +13 -13
- package/Runtime/Core/Helper/Objects.cs +769 -769
- package/Runtime/Core/Helper/Partials/LogHelpers.cs +13 -13
- package/Runtime/Core/Helper/Partials/LogHelpers.cs.meta +2 -2
- package/Runtime/Core/Helper/Partials/MathHelpers.cs +30 -30
- package/Runtime/Core/Helper/Partials/MathHelpers.cs.meta +2 -2
- package/Runtime/Core/Helper/Partials/ObjectHelpers.cs +388 -388
- package/Runtime/Core/Helper/Partials/ObjectHelpers.cs.meta +2 -2
- package/Runtime/Core/Helper/Partials/TransformHelpers.cs +189 -189
- package/Runtime/Core/Helper/Partials/TransformHelpers.cs.meta +2 -2
- package/Runtime/Core/Helper/Partials.meta +2 -2
- package/Runtime/Core/Helper/ReflectionHelpers.cs +452 -452
- package/Runtime/Core/Helper/ReflectionHelpers.cs.meta +2 -2
- package/Runtime/Core/Helper/SceneHelper.cs +209 -209
- package/Runtime/Core/Helper/SpriteHelpers.cs +41 -41
- package/Runtime/Core/Helper/SpriteHelpers.cs.meta +11 -11
- package/Runtime/Core/Helper/StringInList.cs +31 -31
- package/Runtime/Core/Helper/StringInList.cs.meta +11 -11
- package/Runtime/Core/Helper/UnityMainThreadDispatcher.cs +82 -82
- package/Runtime/Core/Helper/WallMath.cs +166 -166
- package/Runtime/Core/Math/Line.cs +55 -55
- package/Runtime/Core/Math/Parabola.cs +47 -47
- package/Runtime/Core/Math/PointPolygonCheck.cs +36 -36
- package/Runtime/Core/Math/PointPolygonCheck.cs.meta +11 -11
- package/Runtime/Core/Math/Range.cs +92 -92
- package/Runtime/Core/Math/XXHash.cs +310 -310
- package/Runtime/Core/Math/XXHash.cs.meta +11 -11
- package/Runtime/Core/Model/Direction.cs +43 -43
- package/Runtime/Core/OneOf/FastOneOf.cs +152 -152
- package/Runtime/Core/OneOf/None.cs +4 -4
- package/Runtime/Core/Random/AbstractRandom.cs +585 -585
- package/Runtime/Core/Random/DotNetRandom.cs +54 -54
- package/Runtime/Core/Random/DotNetRandom.cs.meta +2 -2
- package/Runtime/Core/Random/IRandom.cs +161 -161
- package/Runtime/Core/Random/LinearCongruentialGenerator.cs +49 -49
- package/Runtime/Core/Random/NativePcgRandom.cs +97 -97
- package/Runtime/Core/Random/PRNG.cs +7 -7
- package/Runtime/Core/Random/PRNG.cs.meta +2 -2
- package/Runtime/Core/Random/PcgRandom.cs +149 -149
- package/Runtime/Core/Random/PerlinNoise.cs +369 -369
- package/Runtime/Core/Random/PerlinNoise.cs.meta +2 -2
- package/Runtime/Core/Random/RandomState.cs +131 -131
- package/Runtime/Core/Random/RandomUtilities.cs +26 -26
- package/Runtime/Core/Random/RandomUtilities.cs.meta +11 -11
- package/Runtime/Core/Random/RomuDuo.cs +116 -116
- package/Runtime/Core/Random/RomuDuo.cs.meta +2 -2
- package/Runtime/Core/Random/SplitMix64.cs +94 -94
- package/Runtime/Core/Random/SplitMix64.cs.meta +2 -2
- package/Runtime/Core/Random/SquirrelRandom.cs +84 -84
- package/Runtime/Core/Random/SystemRandom.cs +162 -162
- package/Runtime/Core/Random/ThreadLocalRandom.cs +12 -12
- package/Runtime/Core/Random/UnityRandom.cs +57 -57
- package/Runtime/Core/Random/UnityRandom.cs.meta +11 -11
- package/Runtime/Core/Random/WyRandom.cs +121 -121
- package/Runtime/Core/Random/WyRandom.cs.meta +2 -2
- package/Runtime/Core/Random/XorShiftRandom.cs +52 -52
- package/Runtime/Core/Random/XorShiftRandom.cs.meta +11 -11
- package/Runtime/Core/Random/XorShiroRandom.cs +119 -119
- package/Runtime/Core/Random/XorShiroRandom.cs.meta +2 -2
- package/Runtime/Core/Serialization/JsonConverters/ColorConverter.cs +88 -88
- package/Runtime/Core/Serialization/JsonConverters/GameObjectConverter.cs +37 -37
- package/Runtime/Core/Serialization/JsonConverters/Matrix4x4Converter.cs +218 -218
- package/Runtime/Core/Serialization/JsonConverters/TypeConverter.cs +28 -28
- package/Runtime/Core/Serialization/JsonConverters/Vector2Converter.cs +74 -74
- package/Runtime/Core/Serialization/JsonConverters/Vector3Converter.cs +81 -81
- package/Runtime/Core/Serialization/JsonConverters/Vector4Converter.cs +88 -88
- package/Runtime/Core/Serialization/Serializer.cs +195 -195
- package/Runtime/Core/Threading/SingleThreadedThreadPool.cs +113 -113
- package/Runtime/Protobuf-Net/System.Buffers.dll.meta +33 -33
- package/Runtime/Protobuf-Net/System.Collections.Immutable.dll.meta +33 -33
- package/Runtime/Protobuf-Net/System.Collections.Immutable.xml +5379 -5379
- package/Runtime/Protobuf-Net/System.Collections.Immutable.xml.meta +7 -7
- package/Runtime/Protobuf-Net/System.Numerics.Vectors.dll.meta +33 -33
- package/Runtime/Protobuf-Net/System.Runtime.CompilerServices.Unsafe.dll.meta +33 -33
- package/Runtime/Protobuf-Net/System.Runtime.CompilerServices.Unsafe.xml +290 -290
- package/Runtime/Protobuf-Net/System.Runtime.CompilerServices.Unsafe.xml.meta +7 -7
- package/Runtime/Protobuf-Net/protobuf-net.Core.dll.meta +33 -33
- package/Runtime/Protobuf-Net/protobuf-net.dll.meta +33 -33
- package/Runtime/UI/LayeredImage.cs +364 -364
- package/Runtime/UI/LayeredImage.cs.meta +2 -2
- package/Runtime/UI.meta +2 -2
- package/Runtime/Utils/AnimationEventEqualityComparer.cs +161 -161
- package/Runtime/Utils/AnimatorEnumStateMachine.cs +88 -88
- package/Runtime/Utils/Buffers.cs +33 -33
- package/Runtime/Utils/CenterPointOffset.cs +30 -30
- package/Runtime/Utils/CenterPointOffset.cs.meta +2 -2
- package/Runtime/Utils/CircleLineRenderer.cs +134 -134
- package/Runtime/Utils/CoroutineHandler.cs +4 -4
- package/Runtime/Utils/CoroutineHandler.cs.meta +2 -2
- package/Runtime/Utils/DeferredDisposalResult.cs +23 -23
- package/Runtime/Utils/MatchColliderToSprite.cs +94 -94
- package/Runtime/Utils/MatchColliderToSprite.cs.meta +2 -2
- package/Runtime/Utils/Oscillator.cs +27 -27
- package/Runtime/Utils/RuntimeSingleton.cs +69 -69
- package/Runtime/Utils/RuntimeSingleton.cs.meta +11 -11
- package/Runtime/Utils/SetTextureImportData.cs +69 -69
- package/Runtime/Utils/SpriteRendererMetadata.cs +374 -374
- package/Runtime/Utils/SpriteRendererMetadata.cs.meta +2 -2
- package/Runtime/Utils/SpriteRendererSyncer.cs +100 -100
- package/Runtime/Utils/SpriteRendererSyncer.cs.meta +2 -2
- package/Runtime/Utils/StartTracker.cs +15 -0
- package/Runtime/Utils/StartTracker.cs.meta +3 -0
- package/Runtime/Utils/TextureScale.cs +179 -179
- package/Runtime/Utils/TextureScale.cs.meta +2 -2
- package/Runtime/Utils/UnityObjectNameComparer.cs +33 -0
- package/Runtime/Utils/UnityObjectNameComparer.cs.meta +3 -0
- package/Runtime/WallstopStudios.UnityHelpers.asmdef +13 -13
- package/Tests/Runtime/Attributes/ChildComponentTests.cs +81 -81
- package/Tests/Runtime/Attributes/Components/ExpectChildSpriteRenderers.cs +28 -28
- package/Tests/Runtime/Attributes/Components/ExpectParentSpriteRenderers.cs +28 -28
- package/Tests/Runtime/Attributes/ParentComponentTests.cs +68 -68
- package/Tests/Runtime/Components/RelationalComponentTesterComplex.cs +34 -34
- package/Tests/Runtime/Components/RelationalComponentTesterComplex.cs.meta +2 -2
- package/Tests/Runtime/Components/RelationalComponentsTesterSimple.cs +40 -40
- package/Tests/Runtime/Components.meta +2 -2
- package/Tests/Runtime/DataStructures/BalancedKDTreeTests.cs +14 -14
- package/Tests/Runtime/DataStructures/BalancedKDTreeTests.cs.meta +11 -11
- package/Tests/Runtime/DataStructures/CyclicBufferTests.cs +324 -324
- package/Tests/Runtime/DataStructures/QuadTreeTests.cs +14 -14
- package/Tests/Runtime/DataStructures/QuadTreeTests.cs.meta +11 -11
- package/Tests/Runtime/DataStructures/SpatialTreeTests.cs +130 -130
- package/Tests/Runtime/DataStructures/SpatialTreeTests.cs.meta +11 -11
- package/Tests/Runtime/DataStructures/UnbalancedKDTreeTests.cs +14 -14
- package/Tests/Runtime/DataStructures/UnbalancedKDTreeTests.cs.meta +11 -11
- package/Tests/Runtime/DataStructures.meta +8 -8
- package/Tests/Runtime/Extensions/DictionaryExtensionTests.cs +439 -439
- package/Tests/Runtime/Extensions/DictionaryExtensionTests.cs.meta +2 -2
- package/Tests/Runtime/Extensions/EnumExtensionTests.cs +128 -128
- package/Tests/Runtime/Extensions/EnumExtensionTests.cs.meta +2 -2
- package/Tests/Runtime/Extensions/IListExtensionTests.cs +104 -104
- package/Tests/Runtime/Extensions/RandomExtensionTests.cs +27 -27
- package/Tests/Runtime/Extensions/RandomExtensionTests.cs.meta +2 -2
- package/Tests/Runtime/Extensions/StringExtensionTests.cs +31 -31
- package/Tests/Runtime/Extensions/StringExtensionTests.cs.meta +2 -2
- package/Tests/Runtime/Extensions.meta +2 -2
- package/Tests/Runtime/Helper/ArrayConverterTests.cs +19 -19
- package/Tests/Runtime/Helper/ArrayConverterTests.cs.meta +2 -2
- package/Tests/Runtime/Helper/FormattingHelperTests.cs +129 -129
- package/Tests/Runtime/Helper/FormattingHelperTests.cs.meta +2 -2
- package/Tests/Runtime/Helper/ObjectHelperTests.cs +402 -402
- package/Tests/Runtime/Helper/ObjectHelperTests.cs.meta +2 -2
- package/Tests/Runtime/Helper/ReflectionHelperTests.cs +536 -536
- package/Tests/Runtime/Helper/SceneHelperTests.cs +94 -94
- package/Tests/Runtime/Helper/WallMathTests.cs +233 -233
- package/Tests/Runtime/Helper/WallMathTests.cs.meta +2 -2
- package/Tests/Runtime/Helper.meta +2 -2
- package/Tests/Runtime/Performance/KDTreePerformanceTests.cs +14 -14
- package/Tests/Runtime/Performance/KDTreePerformanceTests.cs.meta +11 -11
- package/Tests/Runtime/Performance/QuadTreePerformanceTests.cs +14 -14
- package/Tests/Runtime/Performance/QuadTreePerformanceTests.cs.meta +11 -11
- package/Tests/Runtime/Performance/RandomPerformanceTests.cs +157 -157
- package/Tests/Runtime/Performance/RandomPerformanceTests.cs.meta +11 -11
- package/Tests/Runtime/Performance/RelationComponentPerformanceTests.cs +61 -61
- package/Tests/Runtime/Performance/RelationComponentPerformanceTests.cs.meta +2 -2
- package/Tests/Runtime/Performance/SpatialTreePerformanceTest.cs +154 -154
- package/Tests/Runtime/Performance/SpatialTreePerformanceTest.cs.meta +11 -11
- package/Tests/Runtime/Performance/UnbalancedKDTreeTests.cs +14 -14
- package/Tests/Runtime/Performance/UnbalancedKDTreeTests.cs.meta +11 -11
- package/Tests/Runtime/Performance.meta +8 -8
- package/Tests/Runtime/Random/DotNetRandomTests.cs +9 -9
- package/Tests/Runtime/Random/DotNetRandomTests.cs.meta +2 -2
- package/Tests/Runtime/Random/LinearCongruentialGeneratorTests.cs +12 -12
- package/Tests/Runtime/Random/PcgRandomTests.cs +9 -9
- package/Tests/Runtime/Random/PcgRandomTests.cs.meta +11 -11
- package/Tests/Runtime/Random/RandomTestBase.cs +787 -787
- package/Tests/Runtime/Random/RandomTestBase.cs.meta +11 -11
- package/Tests/Runtime/Random/RomuDuoRandomTests.cs +9 -9
- package/Tests/Runtime/Random/RomuDuoRandomTests.cs.meta +2 -2
- package/Tests/Runtime/Random/SplitMix64RandomTests.cs +9 -9
- package/Tests/Runtime/Random/SplitMix64RandomTests.cs.meta +2 -2
- package/Tests/Runtime/Random/SquirrelRandomTests.cs +14 -14
- package/Tests/Runtime/Random/SquirrelRandomTests.cs.meta +11 -11
- package/Tests/Runtime/Random/SystemRandomTests.cs +10 -10
- package/Tests/Runtime/Random/SystemRandomTests.cs.meta +11 -11
- package/Tests/Runtime/Random/UnityRandomTests.cs +9 -9
- package/Tests/Runtime/Random/UnityRandomTests.cs.meta +11 -11
- package/Tests/Runtime/Random/WyRandomTests.cs +9 -9
- package/Tests/Runtime/Random/WyRandomTests.cs.meta +2 -2
- package/Tests/Runtime/Random/XorShiftRandomTests.cs +9 -9
- package/Tests/Runtime/Random/XorShiftRandomTests.cs.meta +11 -11
- package/Tests/Runtime/Random/XorShiroRandomTests.cs +9 -9
- package/Tests/Runtime/Random/XorShiroRandomTests.cs.meta +2 -2
- package/Tests/Runtime/Random.meta +8 -8
- package/Tests/Runtime/Serialization/JsonSerializationTest.cs +156 -156
- package/Tests/Runtime/Serialization/JsonSerializationTest.cs.meta +2 -2
- package/Tests/Runtime/Serialization.meta +2 -2
- package/Tests/Runtime/Utils/SpriteRendererMetadataTests.cs +399 -399
- package/Tests/Runtime/Utils/SpriteRendererMetadataTests.cs.meta +2 -2
- package/Tests/Runtime/Utils.meta +2 -2
- package/Tests/Runtime/WallstopStudios.UnityHelpers.Tests.Runtime.asmdef +22 -22
- package/Tests/Runtime/WallstopStudios.UnityHelpers.Tests.Runtime.asmdef.meta +7 -7
- package/Tests/Runtime.meta +8 -8
- package/package.json +38 -38
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 7742eba2bde9bee4192ce9349334b67a
|
|
3
|
-
MonoImporter:
|
|
4
|
-
externalObjects: {}
|
|
5
|
-
serializedVersion: 2
|
|
6
|
-
defaultReferences: []
|
|
7
|
-
executionOrder: 0
|
|
8
|
-
icon: {instanceID: 0}
|
|
9
|
-
userData:
|
|
10
|
-
assetBundleName:
|
|
11
|
-
assetBundleVariant:
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 7742eba2bde9bee4192ce9349334b67a
|
|
3
|
+
MonoImporter:
|
|
4
|
+
externalObjects: {}
|
|
5
|
+
serializedVersion: 2
|
|
6
|
+
defaultReferences: []
|
|
7
|
+
executionOrder: 0
|
|
8
|
+
icon: {instanceID: 0}
|
|
9
|
+
userData:
|
|
10
|
+
assetBundleName:
|
|
11
|
+
assetBundleVariant:
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
namespace UnityHelpers.Tests.Random
|
|
2
|
-
{
|
|
3
|
-
using Core.Random;
|
|
4
|
-
|
|
5
|
-
public sealed class RomuDuoRandomTests : RandomTestBase
|
|
6
|
-
{
|
|
7
|
-
protected override IRandom NewRandom() => new RomuDuo();
|
|
8
|
-
}
|
|
9
|
-
}
|
|
1
|
+
namespace UnityHelpers.Tests.Random
|
|
2
|
+
{
|
|
3
|
+
using Core.Random;
|
|
4
|
+
|
|
5
|
+
public sealed class RomuDuoRandomTests : RandomTestBase
|
|
6
|
+
{
|
|
7
|
+
protected override IRandom NewRandom() => new RomuDuo();
|
|
8
|
+
}
|
|
9
|
+
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 6998ef56b2d04d58977cd95f226c6f50
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 6998ef56b2d04d58977cd95f226c6f50
|
|
3
3
|
timeCreated: 1735610612
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
namespace UnityHelpers.Tests.Random
|
|
2
|
-
{
|
|
3
|
-
using Core.Random;
|
|
4
|
-
|
|
5
|
-
public sealed class SplitMix64RandomTests : RandomTestBase
|
|
6
|
-
{
|
|
7
|
-
protected override IRandom NewRandom() => new SplitMix64();
|
|
8
|
-
}
|
|
9
|
-
}
|
|
1
|
+
namespace UnityHelpers.Tests.Random
|
|
2
|
+
{
|
|
3
|
+
using Core.Random;
|
|
4
|
+
|
|
5
|
+
public sealed class SplitMix64RandomTests : RandomTestBase
|
|
6
|
+
{
|
|
7
|
+
protected override IRandom NewRandom() => new SplitMix64();
|
|
8
|
+
}
|
|
9
|
+
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 9c07a25c515041908a3920ff7d2c2607
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 9c07a25c515041908a3920ff7d2c2607
|
|
3
3
|
timeCreated: 1735606130
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
namespace UnityHelpers.Tests.Random
|
|
2
|
-
{
|
|
3
|
-
using UnityHelpers.Core.Random;
|
|
4
|
-
|
|
5
|
-
public sealed class SquirrelRandomTests : RandomTestBase
|
|
6
|
-
{
|
|
7
|
-
protected override IRandom NewRandom() => new SquirrelRandom();
|
|
8
|
-
|
|
9
|
-
protected override double GetDeviationFor(string caller)
|
|
10
|
-
{
|
|
11
|
-
return 0.075;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
}
|
|
1
|
+
namespace UnityHelpers.Tests.Random
|
|
2
|
+
{
|
|
3
|
+
using UnityHelpers.Core.Random;
|
|
4
|
+
|
|
5
|
+
public sealed class SquirrelRandomTests : RandomTestBase
|
|
6
|
+
{
|
|
7
|
+
protected override IRandom NewRandom() => new SquirrelRandom();
|
|
8
|
+
|
|
9
|
+
protected override double GetDeviationFor(string caller)
|
|
10
|
+
{
|
|
11
|
+
return 0.075;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 1b42060f8efe0774ca7a1b5e67045d80
|
|
3
|
-
MonoImporter:
|
|
4
|
-
externalObjects: {}
|
|
5
|
-
serializedVersion: 2
|
|
6
|
-
defaultReferences: []
|
|
7
|
-
executionOrder: 0
|
|
8
|
-
icon: {instanceID: 0}
|
|
9
|
-
userData:
|
|
10
|
-
assetBundleName:
|
|
11
|
-
assetBundleVariant:
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 1b42060f8efe0774ca7a1b5e67045d80
|
|
3
|
+
MonoImporter:
|
|
4
|
+
externalObjects: {}
|
|
5
|
+
serializedVersion: 2
|
|
6
|
+
defaultReferences: []
|
|
7
|
+
executionOrder: 0
|
|
8
|
+
icon: {instanceID: 0}
|
|
9
|
+
userData:
|
|
10
|
+
assetBundleName:
|
|
11
|
+
assetBundleVariant:
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
namespace UnityHelpers.Tests.Random
|
|
2
|
-
{
|
|
3
|
-
using System;
|
|
4
|
-
using UnityHelpers.Core.Random;
|
|
5
|
-
|
|
6
|
-
public sealed class SystemRandomTests : RandomTestBase
|
|
7
|
-
{
|
|
8
|
-
protected override IRandom NewRandom() => new SystemRandom(Guid.NewGuid().GetHashCode());
|
|
9
|
-
}
|
|
10
|
-
}
|
|
1
|
+
namespace UnityHelpers.Tests.Random
|
|
2
|
+
{
|
|
3
|
+
using System;
|
|
4
|
+
using UnityHelpers.Core.Random;
|
|
5
|
+
|
|
6
|
+
public sealed class SystemRandomTests : RandomTestBase
|
|
7
|
+
{
|
|
8
|
+
protected override IRandom NewRandom() => new SystemRandom(Guid.NewGuid().GetHashCode());
|
|
9
|
+
}
|
|
10
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: b1bf4a5418dceec448e21fae5085a84b
|
|
3
|
-
MonoImporter:
|
|
4
|
-
externalObjects: {}
|
|
5
|
-
serializedVersion: 2
|
|
6
|
-
defaultReferences: []
|
|
7
|
-
executionOrder: 0
|
|
8
|
-
icon: {instanceID: 0}
|
|
9
|
-
userData:
|
|
10
|
-
assetBundleName:
|
|
11
|
-
assetBundleVariant:
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: b1bf4a5418dceec448e21fae5085a84b
|
|
3
|
+
MonoImporter:
|
|
4
|
+
externalObjects: {}
|
|
5
|
+
serializedVersion: 2
|
|
6
|
+
defaultReferences: []
|
|
7
|
+
executionOrder: 0
|
|
8
|
+
icon: {instanceID: 0}
|
|
9
|
+
userData:
|
|
10
|
+
assetBundleName:
|
|
11
|
+
assetBundleVariant:
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
namespace UnityHelpers.Tests.Random
|
|
2
|
-
{
|
|
3
|
-
using UnityHelpers.Core.Random;
|
|
4
|
-
|
|
5
|
-
public sealed class UnityRandomTests : RandomTestBase
|
|
6
|
-
{
|
|
7
|
-
protected override IRandom NewRandom() => UnityRandom.Instance;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
1
|
+
namespace UnityHelpers.Tests.Random
|
|
2
|
+
{
|
|
3
|
+
using UnityHelpers.Core.Random;
|
|
4
|
+
|
|
5
|
+
public sealed class UnityRandomTests : RandomTestBase
|
|
6
|
+
{
|
|
7
|
+
protected override IRandom NewRandom() => UnityRandom.Instance;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 0a9fbbd8614951b4589f2e188cae6c67
|
|
3
|
-
MonoImporter:
|
|
4
|
-
externalObjects: {}
|
|
5
|
-
serializedVersion: 2
|
|
6
|
-
defaultReferences: []
|
|
7
|
-
executionOrder: 0
|
|
8
|
-
icon: {instanceID: 0}
|
|
9
|
-
userData:
|
|
10
|
-
assetBundleName:
|
|
11
|
-
assetBundleVariant:
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 0a9fbbd8614951b4589f2e188cae6c67
|
|
3
|
+
MonoImporter:
|
|
4
|
+
externalObjects: {}
|
|
5
|
+
serializedVersion: 2
|
|
6
|
+
defaultReferences: []
|
|
7
|
+
executionOrder: 0
|
|
8
|
+
icon: {instanceID: 0}
|
|
9
|
+
userData:
|
|
10
|
+
assetBundleName:
|
|
11
|
+
assetBundleVariant:
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
namespace UnityHelpers.Tests.Random
|
|
2
|
-
{
|
|
3
|
-
using Core.Random;
|
|
4
|
-
|
|
5
|
-
public sealed class WyRandomTests : RandomTestBase
|
|
6
|
-
{
|
|
7
|
-
protected override IRandom NewRandom() => new WyRandom();
|
|
8
|
-
}
|
|
9
|
-
}
|
|
1
|
+
namespace UnityHelpers.Tests.Random
|
|
2
|
+
{
|
|
3
|
+
using Core.Random;
|
|
4
|
+
|
|
5
|
+
public sealed class WyRandomTests : RandomTestBase
|
|
6
|
+
{
|
|
7
|
+
protected override IRandom NewRandom() => new WyRandom();
|
|
8
|
+
}
|
|
9
|
+
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 700b0f9e94074d7fb2177d37ff9bcd4f
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 700b0f9e94074d7fb2177d37ff9bcd4f
|
|
3
3
|
timeCreated: 1732481488
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
namespace UnityHelpers.Tests.Random
|
|
2
|
-
{
|
|
3
|
-
using UnityHelpers.Core.Random;
|
|
4
|
-
|
|
5
|
-
public sealed class XorShiftRandomTests : RandomTestBase
|
|
6
|
-
{
|
|
7
|
-
protected override IRandom NewRandom() => new XorShiftRandom();
|
|
8
|
-
}
|
|
9
|
-
}
|
|
1
|
+
namespace UnityHelpers.Tests.Random
|
|
2
|
+
{
|
|
3
|
+
using UnityHelpers.Core.Random;
|
|
4
|
+
|
|
5
|
+
public sealed class XorShiftRandomTests : RandomTestBase
|
|
6
|
+
{
|
|
7
|
+
protected override IRandom NewRandom() => new XorShiftRandom();
|
|
8
|
+
}
|
|
9
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 4b361546907045347b95286d8b448782
|
|
3
|
-
MonoImporter:
|
|
4
|
-
externalObjects: {}
|
|
5
|
-
serializedVersion: 2
|
|
6
|
-
defaultReferences: []
|
|
7
|
-
executionOrder: 0
|
|
8
|
-
icon: {instanceID: 0}
|
|
9
|
-
userData:
|
|
10
|
-
assetBundleName:
|
|
11
|
-
assetBundleVariant:
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 4b361546907045347b95286d8b448782
|
|
3
|
+
MonoImporter:
|
|
4
|
+
externalObjects: {}
|
|
5
|
+
serializedVersion: 2
|
|
6
|
+
defaultReferences: []
|
|
7
|
+
executionOrder: 0
|
|
8
|
+
icon: {instanceID: 0}
|
|
9
|
+
userData:
|
|
10
|
+
assetBundleName:
|
|
11
|
+
assetBundleVariant:
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
namespace UnityHelpers.Tests.Random
|
|
2
|
-
{
|
|
3
|
-
using Core.Random;
|
|
4
|
-
|
|
5
|
-
public sealed class XorShiroRandomTests : RandomTestBase
|
|
6
|
-
{
|
|
7
|
-
protected override IRandom NewRandom() => new XorShiroRandom();
|
|
8
|
-
}
|
|
9
|
-
}
|
|
1
|
+
namespace UnityHelpers.Tests.Random
|
|
2
|
+
{
|
|
3
|
+
using Core.Random;
|
|
4
|
+
|
|
5
|
+
public sealed class XorShiroRandomTests : RandomTestBase
|
|
6
|
+
{
|
|
7
|
+
protected override IRandom NewRandom() => new XorShiroRandom();
|
|
8
|
+
}
|
|
9
|
+
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 533b6ecf4c3d4115ad733f59afa8618f
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 533b6ecf4c3d4115ad733f59afa8618f
|
|
3
3
|
timeCreated: 1735610645
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: d7c51a2d6a5acd044a78d4aa60f711c0
|
|
3
|
-
folderAsset: yes
|
|
4
|
-
DefaultImporter:
|
|
5
|
-
externalObjects: {}
|
|
6
|
-
userData:
|
|
7
|
-
assetBundleName:
|
|
8
|
-
assetBundleVariant:
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: d7c51a2d6a5acd044a78d4aa60f711c0
|
|
3
|
+
folderAsset: yes
|
|
4
|
+
DefaultImporter:
|
|
5
|
+
externalObjects: {}
|
|
6
|
+
userData:
|
|
7
|
+
assetBundleName:
|
|
8
|
+
assetBundleVariant:
|
|
@@ -1,156 +1,156 @@
|
|
|
1
|
-
namespace UnityHelpers.Tests.Serialization
|
|
2
|
-
{
|
|
3
|
-
using System;
|
|
4
|
-
using System.Collections.Generic;
|
|
5
|
-
using System.Linq;
|
|
6
|
-
using System.Runtime.Serialization;
|
|
7
|
-
using System.Text.Json.Serialization;
|
|
8
|
-
using Core.Extension;
|
|
9
|
-
using Core.Helper;
|
|
10
|
-
using Core.Random;
|
|
11
|
-
using Core.Serialization;
|
|
12
|
-
using NUnit.Framework;
|
|
13
|
-
using UnityEngine;
|
|
14
|
-
|
|
15
|
-
[DataContract]
|
|
16
|
-
public sealed class TestDataObject
|
|
17
|
-
{
|
|
18
|
-
public string field;
|
|
19
|
-
public int Property { get; set; }
|
|
20
|
-
|
|
21
|
-
[JsonPropertyName("DifferentPropertyName")]
|
|
22
|
-
public float NamedProperty { get; set; }
|
|
23
|
-
|
|
24
|
-
public Dictionary<string, bool> DictionaryProperty { get; set; } = new();
|
|
25
|
-
|
|
26
|
-
public List<int> ListProperty { get; set; } = new();
|
|
27
|
-
|
|
28
|
-
public List<Type> TypeProperties { get; set; } = new();
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
public sealed class JsonSerializationTest
|
|
32
|
-
{
|
|
33
|
-
[Test]
|
|
34
|
-
public void UnityEngineObjectSerializationWorks()
|
|
35
|
-
{
|
|
36
|
-
GameObject testGo = new("Test GameObject", typeof(SpriteRenderer));
|
|
37
|
-
string json = testGo.ToJson();
|
|
38
|
-
Assert.IsFalse(string.IsNullOrWhiteSpace(json), json);
|
|
39
|
-
Assert.AreNotEqual("{}", json);
|
|
40
|
-
Assert.IsTrue(json.Contains("name = Test GameObject"), json);
|
|
41
|
-
Assert.IsTrue(json.Contains("type = UnityEngine.GameObject"), json);
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
[Test]
|
|
45
|
-
public void NullGameObjectSerializationWorks()
|
|
46
|
-
{
|
|
47
|
-
GameObject testGo = null;
|
|
48
|
-
string json = testGo.ToJson();
|
|
49
|
-
Assert.AreEqual("null", json);
|
|
50
|
-
|
|
51
|
-
testGo = new GameObject();
|
|
52
|
-
testGo.Destroy();
|
|
53
|
-
Assert.IsFalse(string.IsNullOrWhiteSpace(json), json);
|
|
54
|
-
Assert.AreEqual("null", json);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
[Test]
|
|
58
|
-
public void TransformSerializationWorks()
|
|
59
|
-
{
|
|
60
|
-
GameObject testGo = new("Test GameObject", typeof(SpriteRenderer));
|
|
61
|
-
Transform transform = testGo.transform;
|
|
62
|
-
string json = transform.ToJson();
|
|
63
|
-
Assert.AreEqual("[]", json);
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
[Test]
|
|
67
|
-
public void ColorSerializationWorks()
|
|
68
|
-
{
|
|
69
|
-
Color color = new(0.5f, 0.5f, 0.5f, 0.5f);
|
|
70
|
-
string json = color.ToJson();
|
|
71
|
-
Color deserialized = Serializer.JsonDeserialize<Color>(json);
|
|
72
|
-
Assert.AreEqual(color, deserialized);
|
|
73
|
-
|
|
74
|
-
color = new Color(0.7f, 0.1f, 0.3f);
|
|
75
|
-
json = color.ToJson();
|
|
76
|
-
deserialized = Serializer.JsonDeserialize<Color>(json);
|
|
77
|
-
Assert.AreEqual(color, deserialized);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
[Test]
|
|
81
|
-
public void Vector4SerializationWorks()
|
|
82
|
-
{
|
|
83
|
-
Vector4 vector = new(0.5f, 0.5f, 0.5f, 0.5f);
|
|
84
|
-
string json = vector.ToJson();
|
|
85
|
-
Vector4 deserialized = Serializer.JsonDeserialize<Vector4>(json);
|
|
86
|
-
Assert.AreEqual(vector, deserialized);
|
|
87
|
-
|
|
88
|
-
vector = new Vector4(0.7f, 0.1f, 0.3f);
|
|
89
|
-
json = vector.ToJson();
|
|
90
|
-
deserialized = Serializer.JsonDeserialize<Vector4>(json);
|
|
91
|
-
Assert.AreEqual(vector, deserialized);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
[Test]
|
|
95
|
-
public void SerializationWorks()
|
|
96
|
-
{
|
|
97
|
-
IRandom random = PRNG.Instance;
|
|
98
|
-
TestDataObject input = new()
|
|
99
|
-
{
|
|
100
|
-
field = Guid.NewGuid().ToString(),
|
|
101
|
-
Property = random.Next(),
|
|
102
|
-
NamedProperty = random.NextFloat(),
|
|
103
|
-
TypeProperties = new List<Type>()
|
|
104
|
-
{
|
|
105
|
-
typeof(int),
|
|
106
|
-
typeof(Serializer),
|
|
107
|
-
typeof(TestDataObject),
|
|
108
|
-
},
|
|
109
|
-
};
|
|
110
|
-
|
|
111
|
-
int dictionaryProperties = random.Next(4, 10);
|
|
112
|
-
for (int i = 0; i < dictionaryProperties; ++i)
|
|
113
|
-
{
|
|
114
|
-
input.DictionaryProperty[Guid.NewGuid().ToString()] = random.NextBool();
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
int listProperties = random.Next(4, 10);
|
|
118
|
-
for (int i = 0; i < listProperties; ++i)
|
|
119
|
-
{
|
|
120
|
-
input.ListProperty.Add(random.Next());
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
string json = input.ToJson();
|
|
124
|
-
Assert.IsTrue(
|
|
125
|
-
json.Contains("DifferentPropertyName"),
|
|
126
|
-
$"DifferentPropertyName failed to serialize! JSON: {json}"
|
|
127
|
-
);
|
|
128
|
-
|
|
129
|
-
TestDataObject deserialized = Serializer.JsonDeserialize<TestDataObject>(json);
|
|
130
|
-
Assert.AreEqual(
|
|
131
|
-
input.field,
|
|
132
|
-
deserialized.field,
|
|
133
|
-
$"Unexpected {nameof(deserialized.field)}! JSON: {json}"
|
|
134
|
-
);
|
|
135
|
-
Assert.AreEqual(
|
|
136
|
-
input.Property,
|
|
137
|
-
deserialized.Property,
|
|
138
|
-
$"Unexpected {nameof(deserialized.Property)}! JSON: {json}"
|
|
139
|
-
);
|
|
140
|
-
Assert.AreEqual(
|
|
141
|
-
input.NamedProperty,
|
|
142
|
-
deserialized.NamedProperty,
|
|
143
|
-
$"Unexpected {nameof(deserialized.NamedProperty)}! JSON: {json}"
|
|
144
|
-
);
|
|
145
|
-
Assert.IsTrue(
|
|
146
|
-
input.DictionaryProperty.ContentEquals(deserialized.DictionaryProperty),
|
|
147
|
-
$"Unexpected {nameof(deserialized.DictionaryProperty)}! JSON: {json}"
|
|
148
|
-
);
|
|
149
|
-
Assert.IsTrue(
|
|
150
|
-
input.ListProperty.SequenceEqual(deserialized.ListProperty),
|
|
151
|
-
$"Unexpected {nameof(deserialized.ListProperty)}! JSON: {json}"
|
|
152
|
-
);
|
|
153
|
-
Assert.That(input.TypeProperties, Is.EquivalentTo(deserialized.TypeProperties));
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
}
|
|
1
|
+
namespace UnityHelpers.Tests.Serialization
|
|
2
|
+
{
|
|
3
|
+
using System;
|
|
4
|
+
using System.Collections.Generic;
|
|
5
|
+
using System.Linq;
|
|
6
|
+
using System.Runtime.Serialization;
|
|
7
|
+
using System.Text.Json.Serialization;
|
|
8
|
+
using Core.Extension;
|
|
9
|
+
using Core.Helper;
|
|
10
|
+
using Core.Random;
|
|
11
|
+
using Core.Serialization;
|
|
12
|
+
using NUnit.Framework;
|
|
13
|
+
using UnityEngine;
|
|
14
|
+
|
|
15
|
+
[DataContract]
|
|
16
|
+
public sealed class TestDataObject
|
|
17
|
+
{
|
|
18
|
+
public string field;
|
|
19
|
+
public int Property { get; set; }
|
|
20
|
+
|
|
21
|
+
[JsonPropertyName("DifferentPropertyName")]
|
|
22
|
+
public float NamedProperty { get; set; }
|
|
23
|
+
|
|
24
|
+
public Dictionary<string, bool> DictionaryProperty { get; set; } = new();
|
|
25
|
+
|
|
26
|
+
public List<int> ListProperty { get; set; } = new();
|
|
27
|
+
|
|
28
|
+
public List<Type> TypeProperties { get; set; } = new();
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
public sealed class JsonSerializationTest
|
|
32
|
+
{
|
|
33
|
+
[Test]
|
|
34
|
+
public void UnityEngineObjectSerializationWorks()
|
|
35
|
+
{
|
|
36
|
+
GameObject testGo = new("Test GameObject", typeof(SpriteRenderer));
|
|
37
|
+
string json = testGo.ToJson();
|
|
38
|
+
Assert.IsFalse(string.IsNullOrWhiteSpace(json), json);
|
|
39
|
+
Assert.AreNotEqual("{}", json);
|
|
40
|
+
Assert.IsTrue(json.Contains("name = Test GameObject"), json);
|
|
41
|
+
Assert.IsTrue(json.Contains("type = UnityEngine.GameObject"), json);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
[Test]
|
|
45
|
+
public void NullGameObjectSerializationWorks()
|
|
46
|
+
{
|
|
47
|
+
GameObject testGo = null;
|
|
48
|
+
string json = testGo.ToJson();
|
|
49
|
+
Assert.AreEqual("null", json);
|
|
50
|
+
|
|
51
|
+
testGo = new GameObject();
|
|
52
|
+
testGo.Destroy();
|
|
53
|
+
Assert.IsFalse(string.IsNullOrWhiteSpace(json), json);
|
|
54
|
+
Assert.AreEqual("null", json);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
[Test]
|
|
58
|
+
public void TransformSerializationWorks()
|
|
59
|
+
{
|
|
60
|
+
GameObject testGo = new("Test GameObject", typeof(SpriteRenderer));
|
|
61
|
+
Transform transform = testGo.transform;
|
|
62
|
+
string json = transform.ToJson();
|
|
63
|
+
Assert.AreEqual("[]", json);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
[Test]
|
|
67
|
+
public void ColorSerializationWorks()
|
|
68
|
+
{
|
|
69
|
+
Color color = new(0.5f, 0.5f, 0.5f, 0.5f);
|
|
70
|
+
string json = color.ToJson();
|
|
71
|
+
Color deserialized = Serializer.JsonDeserialize<Color>(json);
|
|
72
|
+
Assert.AreEqual(color, deserialized);
|
|
73
|
+
|
|
74
|
+
color = new Color(0.7f, 0.1f, 0.3f);
|
|
75
|
+
json = color.ToJson();
|
|
76
|
+
deserialized = Serializer.JsonDeserialize<Color>(json);
|
|
77
|
+
Assert.AreEqual(color, deserialized);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
[Test]
|
|
81
|
+
public void Vector4SerializationWorks()
|
|
82
|
+
{
|
|
83
|
+
Vector4 vector = new(0.5f, 0.5f, 0.5f, 0.5f);
|
|
84
|
+
string json = vector.ToJson();
|
|
85
|
+
Vector4 deserialized = Serializer.JsonDeserialize<Vector4>(json);
|
|
86
|
+
Assert.AreEqual(vector, deserialized);
|
|
87
|
+
|
|
88
|
+
vector = new Vector4(0.7f, 0.1f, 0.3f);
|
|
89
|
+
json = vector.ToJson();
|
|
90
|
+
deserialized = Serializer.JsonDeserialize<Vector4>(json);
|
|
91
|
+
Assert.AreEqual(vector, deserialized);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
[Test]
|
|
95
|
+
public void SerializationWorks()
|
|
96
|
+
{
|
|
97
|
+
IRandom random = PRNG.Instance;
|
|
98
|
+
TestDataObject input = new()
|
|
99
|
+
{
|
|
100
|
+
field = Guid.NewGuid().ToString(),
|
|
101
|
+
Property = random.Next(),
|
|
102
|
+
NamedProperty = random.NextFloat(),
|
|
103
|
+
TypeProperties = new List<Type>()
|
|
104
|
+
{
|
|
105
|
+
typeof(int),
|
|
106
|
+
typeof(Serializer),
|
|
107
|
+
typeof(TestDataObject),
|
|
108
|
+
},
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
int dictionaryProperties = random.Next(4, 10);
|
|
112
|
+
for (int i = 0; i < dictionaryProperties; ++i)
|
|
113
|
+
{
|
|
114
|
+
input.DictionaryProperty[Guid.NewGuid().ToString()] = random.NextBool();
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
int listProperties = random.Next(4, 10);
|
|
118
|
+
for (int i = 0; i < listProperties; ++i)
|
|
119
|
+
{
|
|
120
|
+
input.ListProperty.Add(random.Next());
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
string json = input.ToJson();
|
|
124
|
+
Assert.IsTrue(
|
|
125
|
+
json.Contains("DifferentPropertyName"),
|
|
126
|
+
$"DifferentPropertyName failed to serialize! JSON: {json}"
|
|
127
|
+
);
|
|
128
|
+
|
|
129
|
+
TestDataObject deserialized = Serializer.JsonDeserialize<TestDataObject>(json);
|
|
130
|
+
Assert.AreEqual(
|
|
131
|
+
input.field,
|
|
132
|
+
deserialized.field,
|
|
133
|
+
$"Unexpected {nameof(deserialized.field)}! JSON: {json}"
|
|
134
|
+
);
|
|
135
|
+
Assert.AreEqual(
|
|
136
|
+
input.Property,
|
|
137
|
+
deserialized.Property,
|
|
138
|
+
$"Unexpected {nameof(deserialized.Property)}! JSON: {json}"
|
|
139
|
+
);
|
|
140
|
+
Assert.AreEqual(
|
|
141
|
+
input.NamedProperty,
|
|
142
|
+
deserialized.NamedProperty,
|
|
143
|
+
$"Unexpected {nameof(deserialized.NamedProperty)}! JSON: {json}"
|
|
144
|
+
);
|
|
145
|
+
Assert.IsTrue(
|
|
146
|
+
input.DictionaryProperty.ContentEquals(deserialized.DictionaryProperty),
|
|
147
|
+
$"Unexpected {nameof(deserialized.DictionaryProperty)}! JSON: {json}"
|
|
148
|
+
);
|
|
149
|
+
Assert.IsTrue(
|
|
150
|
+
input.ListProperty.SequenceEqual(deserialized.ListProperty),
|
|
151
|
+
$"Unexpected {nameof(deserialized.ListProperty)}! JSON: {json}"
|
|
152
|
+
);
|
|
153
|
+
Assert.That(input.TypeProperties, Is.EquivalentTo(deserialized.TypeProperties));
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: 6ccca5065f724d8d8c35a8228317e5ea
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: 6ccca5065f724d8d8c35a8228317e5ea
|
|
3
3
|
timeCreated: 1730847840
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
fileFormatVersion: 2
|
|
2
|
-
guid: f8d204ab204344dc9099d505a15f872f
|
|
1
|
+
fileFormatVersion: 2
|
|
2
|
+
guid: f8d204ab204344dc9099d505a15f872f
|
|
3
3
|
timeCreated: 1730847832
|