|
2 | 2 | using Robust.Shared.IoC; |
3 | 3 | using Robust.Shared.Reflection; |
4 | 4 | using System.Collections.Generic; |
| 5 | +using JetBrains.Annotations; |
5 | 6 |
|
6 | 7 | namespace Robust.UnitTesting.Shared.Reflection |
7 | 8 | { |
@@ -77,9 +78,36 @@ public void ReflectionManager_TestGetType() |
77 | 78 | Assert.That(reflectionManager.GetType("Shared.Reflection.ITestGetType3"), Is.EqualTo(typeof(ITestGetType3))); |
78 | 79 | }); |
79 | 80 | } |
| 81 | + |
| 82 | + [Test] |
| 83 | + public void ReflectionManager_TestTryParseEnumReference() |
| 84 | + { |
| 85 | + IReflectionManager reflectionManager = IoCManager.Resolve<IReflectionManager>(); |
| 86 | + reflectionManager.TryParseEnumReference("enum.TestParseEnumReferenceType1.Value", out var out1); |
| 87 | + reflectionManager.TryParseEnumReference("enum.TestParseEnumReferenceType2.InnerValue", out var out2); |
| 88 | + reflectionManager.TryParseEnumReference("enum.TestParseEnumReferenceType3.OuterValue", out var out3); |
| 89 | + reflectionManager.TryParseEnumReference("enum.TestParseEnumReferenceTypeClass+TestParseEnumReferenceType2.InnerValue", out var out4); |
| 90 | + Assert.Multiple(() => |
| 91 | + { |
| 92 | + Assert.That(out1, Is.EqualTo(TestParseEnumReferenceType1.Value)); |
| 93 | + Assert.That(out2, Is.EqualTo(TestParseEnumReferenceTypeClass.TestParseEnumReferenceType2.InnerValue)); |
| 94 | + Assert.That(out3, Is.EqualTo(TestParseEnumReferenceType3.OuterValue)); |
| 95 | + Assert.That(out4, Is.EqualTo(TestParseEnumReferenceTypeClass.TestParseEnumReferenceType2.InnerValue)); |
| 96 | + }); |
| 97 | + } |
80 | 98 | } |
81 | 99 |
|
82 | 100 | public sealed class TestGetType1 { } |
83 | 101 | public abstract class TestGetType2 { } |
84 | 102 | public interface ITestGetType3 { } |
| 103 | + |
| 104 | + public enum TestParseEnumReferenceType1 { Value } |
| 105 | + |
| 106 | + [UsedImplicitly] |
| 107 | + public sealed class TestParseEnumReferenceTypeClass |
| 108 | + { |
| 109 | + public enum TestParseEnumReferenceType2 { InnerValue } |
| 110 | + } |
85 | 111 | } |
| 112 | + |
| 113 | +public enum TestParseEnumReferenceType3 { OuterValue } |
0 commit comments