public void Fail_NestedWithNonPrimitiveType() { string source; List <string> errors; bool success = CSharpToHLSL.GenerateHLSL(typeof(FailureTypes.NestedWithNonPrimitiveType), new GenerateHLSL(PackingRules.Exact), out source, out errors); Assert.IsFalse(success); Assert.IsTrue(HasErrorString(errors, "contains a non-primitive field type")); }
public void Fail_MergeCrossBoundary() { string source; List <string> errors; bool success = CSharpToHLSL.GenerateHLSL(typeof(FailureTypes.MergeCrossBoundary), new GenerateHLSL(PackingRules.Aggressive), out source, out errors); Assert.IsFalse(success); Assert.IsTrue(HasErrorString(errors, "cross register boundary")); }
public void Fail_TooManyFields() { string source; List <string> errors; bool success = CSharpToHLSL.GenerateHLSL(typeof(FailureTypes.TooManyFields), new GenerateHLSL(PackingRules.Exact), out source, out errors); Assert.IsFalse(success); Assert.IsTrue(HasErrorString(errors, "more than 4 fields")); }
public void Fail_MergeIncompatibleTypes() { string source; List <string> errors; bool success = CSharpToHLSL.GenerateHLSL(typeof(FailureTypes.MergeIncompatibleTypes), new GenerateHLSL(PackingRules.Aggressive), out source, out errors); Assert.IsFalse(success); Assert.IsTrue(HasErrorString(errors, "incompatible types")); }
public void Fail_MixedTypesInNestedStruct() { string source; List <string> errors; bool success = CSharpToHLSL.GenerateHLSL(typeof(FailureTypes.MixedTypesInNestedStruct), new GenerateHLSL(PackingRules.Exact), out source, out errors); Assert.IsFalse(success); Assert.IsTrue(HasErrorString(errors, "contains mixed basic types")); }