public static void IntrinsicTypes() { var sample = new IntrinsicsSample(); var sample2 = new IntrinsicsSample(); sample.boolArray_ = new bool[] { false, true }; sample.bool_ = true; sample.byteArray_ = new byte[] { 1, 2, 3 }; sample.byte_ = 42; sample.doubleArray_ = new double[] { -1.1, 2.2, double.MaxValue, double.MinValue }; sample.double_ = double.MaxValue; sample.floatArray_ = new float[] { -1.1f, 2.2f, float.MaxValue, float.MinValue }; sample.float_ = float.MaxValue; sample.intArray_ = new int[] { -1, 0, 1, 2, int.MaxValue, int.MinValue }; sample.int_ = int.MaxValue; sample.longArray_ = new long[] { -1, 0, 2, long.MaxValue, long.MinValue }; sample.long_ = long.MinValue; sample.stringArray_ = new string[] { "hello", "world" }; sample.string_ = "foobar"; sample.uintArray_ = new uint[] { 0, 1, 2, uint.MaxValue, uint.MinValue }; sample.uint_ = uint.MaxValue; sample.ulongArray_ = new ulong[] { 0, 2, ulong.MaxValue, ulong.MinValue }; sample.ulong_ = ulong.MaxValue; WriteAndRead(ref sample, ref sample2, true); AssertEqual(sample2.boolArray_, sample2.boolArray_); AssertEqual(sample.byteArray_, sample2.byteArray_); AssertEqual(sample.doubleArray_, sample2.doubleArray_); AssertEqual(sample.floatArray_, sample2.floatArray_); AssertEqual(sample.intArray_, sample2.intArray_); AssertEqual(sample.longArray_, sample2.longArray_); AssertEqual(sample.stringArray_, sample2.stringArray_); AssertEqual(sample.uintArray_, sample2.uintArray_); AssertEqual(sample.ulongArray_, sample2.ulongArray_); AssertEqual(sample2.bool_, sample2.bool_); AssertEqual(sample.byte_, sample2.byte_); AssertEqual(sample.double_, sample2.double_); AssertEqual(sample.float_, sample2.float_); AssertEqual(sample.int_, sample2.int_); AssertEqual(sample.long_, sample2.long_); AssertEqual(sample.string_, sample2.string_); AssertEqual(sample.uint_, sample2.uint_); AssertEqual(sample.ulong_, sample2.ulong_); }
public static void IntrinsicTypesTest() { var sample = new IntrinsicsSample(); var sample2 = new IntrinsicsSample(); sample.boolArray_ = new bool[] { false, true }; sample.boolList_ = sample.boolArray_.ToList(); sample.bool_ = true; sample.byteArray_ = new byte[] { 1, 2, 3 }; sample.byteList_ = sample.byteArray_.ToList(); sample.byte_ = 42; sample.doubleArray_ = new double[] { -1.1, 2.2, double.MaxValue, double.MinValue }; sample.doubleList_ = sample.doubleArray_.ToList(); sample.double_ = double.MaxValue; sample.floatArray_ = new float[] { -1.1f, 2.2f, float.MaxValue, float.MinValue }; sample.floatList_ = sample.floatArray_.ToList(); sample.float_ = float.MaxValue; sample.intArray_ = new int[] { -1, 0, 1, 2, int.MaxValue, int.MinValue }; sample.intList_ = sample.intArray_.ToList(); sample.int_ = int.MaxValue; sample.longArray_ = new long[] { -1, 0, 2, long.MaxValue, long.MinValue }; sample.longList_ = sample.longArray_.ToList(); sample.long_ = long.MinValue; sample.stringArray_ = new string[] { "hello", "world" }; sample.stringList_ = sample.stringArray_.ToList(); sample.string_ = "foobar"; sample.uintArray_ = new uint[] { 0, 1, 2, uint.MaxValue, uint.MinValue }; sample.uintList_ = sample.uintArray_.ToList(); sample.uint_ = uint.MaxValue; sample.ulongArray_ = new ulong[] { 0, 2, ulong.MaxValue, ulong.MinValue }; sample.ulongList_ = sample.ulongArray_.ToList(); sample.ulong_ = ulong.MaxValue; sample2.dict = new Dictionary <string, object>(); sample.dict = new Dictionary <string, object>(); sample.dict["Foo"] = 1.2; sample2.dictTyped = new Dictionary <string, string>(); sample.dictTyped = new Dictionary <string, string>(); sample.dictTyped["Bar"] = "baz"; sample2.dictVertexData = new Dictionary <string, float[]>(); sample.dictVertexData = new Dictionary <string, float[]>(); sample.dictVertexData["VertexData"] = new float[] { 42.3f }; sample2.dictPrimvar = new Dictionary <string, USD.NET.Primvar <float[]> >(); sample.dictPrimvar = new Dictionary <string, USD.NET.Primvar <float[]> >(); var pv = new USD.NET.Primvar <float[]>(); pv.value = new float[] { 423.2f }; pv.interpolation = USD.NET.PrimvarInterpolation.FaceVarying; sample.dictPrimvar["PrimvarValue"] = pv; try { // We don't know how to serialize an IntPtr, should throw an exception. sample2.dictUnknown = new Dictionary <string, IntPtr>(); sample.dictUnknown = new Dictionary <string, IntPtr>(); sample.dictUnknown["Quz"] = new IntPtr(34292); WriteAndRead(ref sample, ref sample2, true); throw new Exception("Expected exception"); } catch (ArgumentException) { Console.WriteLine("Caught expected exception"); } sample2.dictUnknown = null; sample.dictUnknown = null; WriteAndRead(ref sample, ref sample2, true); TestVariability(sample); AssertEqual(sample.dict, sample2.dict); AssertEqual(sample.dict["Foo"], sample2.dict["Foo"]); AssertEqual(sample.dictTyped, sample2.dictTyped); AssertEqual(sample.dictTyped["Bar"], sample2.dictTyped["Bar"]); AssertEqual(sample.dictVertexData, sample2.dictVertexData); AssertEqual(sample.dictVertexData["VertexData"], sample2.dictVertexData["VertexData"]); AssertEqual(sample.dictPrimvar["PrimvarValue"].value, sample2.dictPrimvar["PrimvarValue"].value); AssertEqual(sample.dictPrimvar["PrimvarValue"].interpolation, sample2.dictPrimvar["PrimvarValue"].interpolation); AssertEqual(sample.dictPrimvar["PrimvarValue"].indices, sample2.dictPrimvar["PrimvarValue"].indices); AssertEqual(sample.boolArray_, sample2.boolArray_); AssertEqual(sample.byteArray_, sample2.byteArray_); AssertEqual(sample.doubleArray_, sample2.doubleArray_); AssertEqual(sample.floatArray_, sample2.floatArray_); AssertEqual(sample.intArray_, sample2.intArray_); AssertEqual(sample.longArray_, sample2.longArray_); AssertEqual(sample.stringArray_, sample2.stringArray_); AssertEqual(sample.uintArray_, sample2.uintArray_); AssertEqual(sample.ulongArray_, sample2.ulongArray_); AssertEqual(sample2.boolList_, sample2.boolList_); AssertEqual(sample.byteList_, sample2.byteList_); AssertEqual(sample.doubleList_, sample2.doubleList_); AssertEqual(sample.floatList_, sample2.floatList_); AssertEqual(sample.intList_, sample2.intList_); AssertEqual(sample.longList_, sample2.longList_); AssertEqual(sample.stringList_, sample2.stringList_); AssertEqual(sample.uintList_, sample2.uintList_); AssertEqual(sample.ulongList_, sample2.ulongList_); AssertEqual(sample2.bool_, sample2.bool_); AssertEqual(sample.byte_, sample2.byte_); AssertEqual(sample.double_, sample2.double_); AssertEqual(sample.float_, sample2.float_); AssertEqual(sample.int_, sample2.int_); AssertEqual(sample.long_, sample2.long_); AssertEqual(sample.string_, sample2.string_); AssertEqual(sample.uint_, sample2.uint_); AssertEqual(sample.ulong_, sample2.ulong_); }