Tests: Add Enums field offsets test (#62)
This commit is contained in:
@@ -83,7 +83,11 @@
|
||||
<Content Include="TestExpectedResults\PartialGenericTypes-ARM64.cs" />
|
||||
<Content Include="TestExpectedResults\VTablesAndLayout-ARMv7.cs" />
|
||||
<Content Include="TestExpectedResults\VTablesAndLayout-ARM64.cs" />
|
||||
|
||||
<Content Include="TestExpectedResults\GameAssembly-Enums-x64.cs" />
|
||||
<Content Include="TestExpectedResults\GameAssembly-Enums-x86.cs" />
|
||||
<Content Include="TestExpectedResults\Enums-ARMv7.cs" />
|
||||
<Content Include="TestExpectedResults\Enums-ARM64.cs" />
|
||||
|
||||
<Content Include="TestExpectedResults\ExplicitInterfaces-ARMv7.json" />
|
||||
<Content Include="TestExpectedResults\ExplicitInterfaces-ARM64.json" />
|
||||
<Content Include="TestExpectedResults\GameAssembly-ExplicitInterfaces-x64.json" />
|
||||
@@ -136,6 +140,11 @@
|
||||
<Content Include="TestExpectedResults\PartialGenericTypes-ARM64.json" />
|
||||
<Content Include="TestExpectedResults\VTablesAndLayout-ARMv7.json" />
|
||||
<Content Include="TestExpectedResults\VTablesAndLayout-ARM64.json" />
|
||||
<Content Include="TestExpectedResults\GameAssembly-Enums-x64.json" />
|
||||
<Content Include="TestExpectedResults\GameAssembly-Enums-x86.json" />
|
||||
<Content Include="TestExpectedResults\Enums-ARMv7.json" />
|
||||
<Content Include="TestExpectedResults\Enums-ARM64.json" />
|
||||
|
||||
|
||||
<Content Include="TestExpectedResults\ExplicitInterfaces-ARMv7.h" />
|
||||
<Content Include="TestExpectedResults\ExplicitInterfaces-ARM64.h" />
|
||||
@@ -189,6 +198,10 @@
|
||||
<Content Include="TestExpectedResults\PartialGenericTypes-ARM64.h" />
|
||||
<Content Include="TestExpectedResults\VTablesAndLayout-ARMv7.h" />
|
||||
<Content Include="TestExpectedResults\VTablesAndLayout-ARM64.h" />
|
||||
<Content Include="TestExpectedResults\GameAssembly-Enums-x64.h" />
|
||||
<Content Include="TestExpectedResults\GameAssembly-Enums-x86.h" />
|
||||
<Content Include="TestExpectedResults\Enums-ARMv7.h" />
|
||||
<Content Include="TestExpectedResults\Enums-ARM64.h" />
|
||||
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
1046
Il2CppTests/TestExpectedResults/Enums-ARM64.cs
Normal file
1046
Il2CppTests/TestExpectedResults/Enums-ARM64.cs
Normal file
File diff suppressed because it is too large
Load Diff
191725
Il2CppTests/TestExpectedResults/Enums-ARM64.h
Normal file
191725
Il2CppTests/TestExpectedResults/Enums-ARM64.h
Normal file
File diff suppressed because it is too large
Load Diff
393724
Il2CppTests/TestExpectedResults/Enums-ARM64.json
Normal file
393724
Il2CppTests/TestExpectedResults/Enums-ARM64.json
Normal file
File diff suppressed because it is too large
Load Diff
1046
Il2CppTests/TestExpectedResults/Enums-ARMv7.cs
Normal file
1046
Il2CppTests/TestExpectedResults/Enums-ARMv7.cs
Normal file
File diff suppressed because it is too large
Load Diff
191726
Il2CppTests/TestExpectedResults/Enums-ARMv7.h
Normal file
191726
Il2CppTests/TestExpectedResults/Enums-ARMv7.h
Normal file
File diff suppressed because it is too large
Load Diff
394964
Il2CppTests/TestExpectedResults/Enums-ARMv7.json
Normal file
394964
Il2CppTests/TestExpectedResults/Enums-ARMv7.json
Normal file
File diff suppressed because it is too large
Load Diff
1046
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x64.cs
Normal file
1046
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x64.cs
Normal file
File diff suppressed because it is too large
Load Diff
191864
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x64.h
Normal file
191864
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x64.h
Normal file
File diff suppressed because it is too large
Load Diff
354720
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x64.json
Normal file
354720
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x64.json
Normal file
File diff suppressed because it is too large
Load Diff
1046
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x86.cs
Normal file
1046
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x86.cs
Normal file
File diff suppressed because it is too large
Load Diff
191865
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x86.h
Normal file
191865
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x86.h
Normal file
File diff suppressed because it is too large
Load Diff
354499
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x86.json
Normal file
354499
Il2CppTests/TestExpectedResults/GameAssembly-Enums-x86.json
Normal file
File diff suppressed because it is too large
Load Diff
79
Il2CppTests/TestSources/Enums.cs
Normal file
79
Il2CppTests/TestSources/Enums.cs
Normal file
@@ -0,0 +1,79 @@
|
||||
/*
|
||||
Copyright 2020 Katy Coe - http://www.djkaty.com - https://github.com/djkaty
|
||||
|
||||
All rights reserved.
|
||||
*/
|
||||
|
||||
namespace Il2CppTests.TestSources
|
||||
{
|
||||
// Test to ensure that offsets in structs and classes are calculated correctly for various enum field sizes
|
||||
|
||||
#pragma warning disable CS0169
|
||||
public enum EnumOfSize1 : byte
|
||||
{
|
||||
Option1,
|
||||
Option2,
|
||||
Option3
|
||||
}
|
||||
|
||||
public enum EnumOfSize2 : ushort
|
||||
{
|
||||
Option1,
|
||||
Option2,
|
||||
Option3
|
||||
}
|
||||
|
||||
public enum EnumOfSize4 : int
|
||||
{
|
||||
Option1,
|
||||
Option2,
|
||||
Option3
|
||||
}
|
||||
|
||||
public enum EnumOfSize8 : ulong
|
||||
{
|
||||
Option1,
|
||||
Option2,
|
||||
Option3
|
||||
}
|
||||
|
||||
public struct StructWithEnumFields
|
||||
{
|
||||
ushort a;
|
||||
EnumOfSize1 b;
|
||||
ushort c;
|
||||
EnumOfSize2 d;
|
||||
ushort e;
|
||||
EnumOfSize4 f;
|
||||
ushort g;
|
||||
EnumOfSize8 h;
|
||||
ushort i;
|
||||
}
|
||||
|
||||
public class ClassWithEnumFields
|
||||
{
|
||||
ushort a;
|
||||
EnumOfSize1 b;
|
||||
ushort c;
|
||||
EnumOfSize2 d;
|
||||
ushort e;
|
||||
EnumOfSize4 f;
|
||||
ushort g;
|
||||
EnumOfSize8 h;
|
||||
ushort i;
|
||||
}
|
||||
|
||||
public class ClassWithEnumAutoProperties
|
||||
{
|
||||
ushort a { get; }
|
||||
EnumOfSize1 b { get; }
|
||||
ushort c { get; }
|
||||
EnumOfSize2 d { get; }
|
||||
ushort e { get; }
|
||||
EnumOfSize4 f { get; }
|
||||
ushort g { get; }
|
||||
EnumOfSize8 h { get; }
|
||||
ushort i { get; }
|
||||
}
|
||||
#pragma warning disable CS0169
|
||||
}
|
||||
Reference in New Issue
Block a user