protected void RunTest(string cSharpCode, params GeneratedType[] generatedTypes) { var(isSuccess, compilerMessages) = TestCompiler.Compile(cSharpCode, new [] { typeof(Unity.Entities.SystemBase), typeof(Unity.Burst.BurstCompileAttribute), typeof(Unity.Mathematics.float3), typeof(Unity.Collections.ReadOnlyAttribute), typeof(Unity.Collections.LowLevel.Unsafe.UnsafeUtility) }); if (!isSuccess) { Assert.Fail($"Compilation failed with errors {string.Join(Environment.NewLine, compilerMessages.Select(msg => msg.message))}"); } RunSourceGenerationTest(generatedTypes, Path.Combine(TestCompiler.DirectoryForTestDll, TestCompiler.OutputDllName)); TestCompiler.CleanUp(); }