aboutsummaryrefslogtreecommitdiff
path: root/src/ProtocolBuffers.Test/TestUtil.cs
diff options
context:
space:
mode:
authorcsharptest <roger@csharptest.net>2011-10-04 13:43:26 -0500
committerrogerk <devnull@localhost>2011-10-04 13:43:26 -0500
commiteac64a5f7afdfca32476534fd8d0bf69d77002ca (patch)
tree03a38e9992afd1ffb929f3f830d6054009a9cba2 /src/ProtocolBuffers.Test/TestUtil.cs
parent5e48fef659b571db38be18afb61bea0cffcdfdca (diff)
downloadprotobuf-eac64a5f7afdfca32476534fd8d0bf69d77002ca.tar.gz
protobuf-eac64a5f7afdfca32476534fd8d0bf69d77002ca.tar.bz2
protobuf-eac64a5f7afdfca32476534fd8d0bf69d77002ca.zip
- Upgraded NUnit
- Added StatLight and Silverlight unit testing - Added copies of all projects for Silverlight - Integrated Silverlight unit tests in build
Diffstat (limited to 'src/ProtocolBuffers.Test/TestUtil.cs')
-rw-r--r--src/ProtocolBuffers.Test/TestUtil.cs224
1 files changed, 136 insertions, 88 deletions
diff --git a/src/ProtocolBuffers.Test/TestUtil.cs b/src/ProtocolBuffers.Test/TestUtil.cs
index ae2c1164..dd1c981d 100644
--- a/src/ProtocolBuffers.Test/TestUtil.cs
+++ b/src/ProtocolBuffers.Test/TestUtil.cs
@@ -41,14 +41,21 @@ using System.IO;
using System.Text;
using System.Threading;
using Google.ProtocolBuffers.TestProtos;
-using NUnit.Framework;
+#if SILVERLIGHT
+using TestClass = Microsoft.VisualStudio.TestTools.UnitTesting.TestClassAttribute;
+using Test = Microsoft.VisualStudio.TestTools.UnitTesting.TestMethodAttribute;
+using Assert = Microsoft.VisualStudio.TestTools.UnitTesting.Assert;
+#else
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+#endif
+
namespace Google.ProtocolBuffers
{
internal static class TestUtil
{
+#if !SILVERLIGHT
private static string testDataDirectory;
- private static ByteString goldenMessage = null;
internal static string TestDataDirectory
{
@@ -76,6 +83,8 @@ namespace Google.ProtocolBuffers
}
}
+ private static ByteString goldenMessage = null;
+
internal static ByteString GoldenMessage
{
get
@@ -88,6 +97,36 @@ namespace Google.ProtocolBuffers
}
}
+ internal static string ReadTextFromFile(string filePath)
+ {
+ return ReadBytesFromFile(filePath).ToStringUtf8();
+ }
+
+ internal static ByteString ReadBytesFromFile(String filename)
+ {
+ byte[] data = File.ReadAllBytes(Path.Combine(TestDataDirectory, filename));
+ return ByteString.CopyFrom(data);
+ }
+
+ private static ByteString goldenPackedFieldsMessage = null;
+
+ /// <summary>
+ /// Get the bytes of the "golden packed fields message". This is a serialized
+ /// TestPackedTypes with all fields set as they would be by SetPackedFields,
+ /// but it is loaded from a file on disk rather than generated dynamically.
+ /// The file is actually generated by C++ code, so testing against it verifies compatibility
+ /// with C++.
+ /// </summary>
+ public static ByteString GetGoldenPackedFieldsMessage()
+ {
+ if (goldenPackedFieldsMessage == null)
+ {
+ goldenPackedFieldsMessage = ReadBytesFromFile("golden_packed_fields_message");
+ }
+ return goldenPackedFieldsMessage;
+ }
+
+#endif
/// <summary>
/// Creates an unmodifiable ExtensionRegistry containing all the extensions
/// of TestAllExtensions.
@@ -193,17 +232,6 @@ namespace Google.ProtocolBuffers
registry.Add(UnitTestProtoFile.PackedEnumExtension);
}
- internal static string ReadTextFromFile(string filePath)
- {
- return ReadBytesFromFile(filePath).ToStringUtf8();
- }
-
- internal static ByteString ReadBytesFromFile(String filename)
- {
- byte[] data = File.ReadAllBytes(Path.Combine(TestDataDirectory, filename));
- return ByteString.CopyFrom(data);
- }
-
/// <summary>
/// Helper to convert a String to ByteString.
/// </summary>
@@ -379,12 +407,12 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(101, message.OptionalInt32);
Assert.AreEqual(102, message.OptionalInt64);
- Assert.AreEqual(103, message.OptionalUint32);
- Assert.AreEqual(104, message.OptionalUint64);
+ Assert.AreEqual(103u, message.OptionalUint32);
+ Assert.AreEqual(104u, message.OptionalUint64);
Assert.AreEqual(105, message.OptionalSint32);
Assert.AreEqual(106, message.OptionalSint64);
- Assert.AreEqual(107, message.OptionalFixed32);
- Assert.AreEqual(108, message.OptionalFixed64);
+ Assert.AreEqual(107u, message.OptionalFixed32);
+ Assert.AreEqual(108u, message.OptionalFixed64);
Assert.AreEqual(109, message.OptionalSfixed32);
Assert.AreEqual(110, message.OptionalSfixed64);
Assert.AreEqual(111, message.OptionalFloat);
@@ -436,12 +464,12 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(201, message.GetRepeatedInt32(0));
Assert.AreEqual(202, message.GetRepeatedInt64(0));
- Assert.AreEqual(203, message.GetRepeatedUint32(0));
- Assert.AreEqual(204, message.GetRepeatedUint64(0));
+ Assert.AreEqual(203u, message.GetRepeatedUint32(0));
+ Assert.AreEqual(204u, message.GetRepeatedUint64(0));
Assert.AreEqual(205, message.GetRepeatedSint32(0));
Assert.AreEqual(206, message.GetRepeatedSint64(0));
- Assert.AreEqual(207, message.GetRepeatedFixed32(0));
- Assert.AreEqual(208, message.GetRepeatedFixed64(0));
+ Assert.AreEqual(207u, message.GetRepeatedFixed32(0));
+ Assert.AreEqual(208u, message.GetRepeatedFixed64(0));
Assert.AreEqual(209, message.GetRepeatedSfixed32(0));
Assert.AreEqual(210, message.GetRepeatedSfixed64(0));
Assert.AreEqual(211, message.GetRepeatedFloat(0));
@@ -464,12 +492,12 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(301, message.GetRepeatedInt32(1));
Assert.AreEqual(302, message.GetRepeatedInt64(1));
- Assert.AreEqual(303, message.GetRepeatedUint32(1));
- Assert.AreEqual(304, message.GetRepeatedUint64(1));
+ Assert.AreEqual(303u, message.GetRepeatedUint32(1));
+ Assert.AreEqual(304u, message.GetRepeatedUint64(1));
Assert.AreEqual(305, message.GetRepeatedSint32(1));
Assert.AreEqual(306, message.GetRepeatedSint64(1));
- Assert.AreEqual(307, message.GetRepeatedFixed32(1));
- Assert.AreEqual(308, message.GetRepeatedFixed64(1));
+ Assert.AreEqual(307u, message.GetRepeatedFixed32(1));
+ Assert.AreEqual(308u, message.GetRepeatedFixed64(1));
Assert.AreEqual(309, message.GetRepeatedSfixed32(1));
Assert.AreEqual(310, message.GetRepeatedSfixed64(1));
Assert.AreEqual(311, message.GetRepeatedFloat(1), 0.0);
@@ -517,12 +545,12 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(401, message.DefaultInt32);
Assert.AreEqual(402, message.DefaultInt64);
- Assert.AreEqual(403, message.DefaultUint32);
- Assert.AreEqual(404, message.DefaultUint64);
+ Assert.AreEqual(403u, message.DefaultUint32);
+ Assert.AreEqual(404u, message.DefaultUint64);
Assert.AreEqual(405, message.DefaultSint32);
Assert.AreEqual(406, message.DefaultSint64);
- Assert.AreEqual(407, message.DefaultFixed32);
- Assert.AreEqual(408, message.DefaultFixed64);
+ Assert.AreEqual(407u, message.DefaultFixed32);
+ Assert.AreEqual(408u, message.DefaultFixed64);
Assert.AreEqual(409, message.DefaultSfixed32);
Assert.AreEqual(410, message.DefaultSfixed64);
Assert.AreEqual(411, message.DefaultFloat);
@@ -573,12 +601,12 @@ namespace Google.ProtocolBuffers
// Optional fields without defaults are set to zero or something like it.
Assert.AreEqual(0, message.OptionalInt32);
Assert.AreEqual(0, message.OptionalInt64);
- Assert.AreEqual(0, message.OptionalUint32);
- Assert.AreEqual(0, message.OptionalUint64);
+ Assert.AreEqual(0u, message.OptionalUint32);
+ Assert.AreEqual(0u, message.OptionalUint64);
Assert.AreEqual(0, message.OptionalSint32);
Assert.AreEqual(0, message.OptionalSint64);
- Assert.AreEqual(0, message.OptionalFixed32);
- Assert.AreEqual(0, message.OptionalFixed64);
+ Assert.AreEqual(0u, message.OptionalFixed32);
+ Assert.AreEqual(0u, message.OptionalFixed64);
Assert.AreEqual(0, message.OptionalSfixed32);
Assert.AreEqual(0, message.OptionalSfixed64);
Assert.AreEqual(0, message.OptionalFloat);
@@ -661,12 +689,12 @@ namespace Google.ProtocolBuffers
// Fields with defaults have their default values (duh).
Assert.AreEqual(41, message.DefaultInt32);
Assert.AreEqual(42, message.DefaultInt64);
- Assert.AreEqual(43, message.DefaultUint32);
- Assert.AreEqual(44, message.DefaultUint64);
+ Assert.AreEqual(43u, message.DefaultUint32);
+ Assert.AreEqual(44u, message.DefaultUint64);
Assert.AreEqual(-45, message.DefaultSint32);
Assert.AreEqual(46, message.DefaultSint64);
- Assert.AreEqual(47, message.DefaultFixed32);
- Assert.AreEqual(48, message.DefaultFixed64);
+ Assert.AreEqual(47u, message.DefaultFixed32);
+ Assert.AreEqual(48u, message.DefaultFixed64);
Assert.AreEqual(49, message.DefaultSfixed32);
Assert.AreEqual(-50, message.DefaultSfixed64);
Assert.AreEqual(51.5, message.DefaultFloat, 0.0);
@@ -1531,12 +1559,12 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(2, message.PackedEnumCount);
Assert.AreEqual(601, message.GetPackedInt32(0));
Assert.AreEqual(602, message.GetPackedInt64(0));
- Assert.AreEqual(603, message.GetPackedUint32(0));
- Assert.AreEqual(604, message.GetPackedUint64(0));
+ Assert.AreEqual(603u, message.GetPackedUint32(0));
+ Assert.AreEqual(604u, message.GetPackedUint64(0));
Assert.AreEqual(605, message.GetPackedSint32(0));
Assert.AreEqual(606, message.GetPackedSint64(0));
- Assert.AreEqual(607, message.GetPackedFixed32(0));
- Assert.AreEqual(608, message.GetPackedFixed64(0));
+ Assert.AreEqual(607u, message.GetPackedFixed32(0));
+ Assert.AreEqual(608u, message.GetPackedFixed64(0));
Assert.AreEqual(609, message.GetPackedSfixed32(0));
Assert.AreEqual(610, message.GetPackedSfixed64(0));
Assert.AreEqual(611, message.GetPackedFloat(0), 0.0);
@@ -1545,12 +1573,12 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(ForeignEnum.FOREIGN_BAR, message.GetPackedEnum(0));
Assert.AreEqual(701, message.GetPackedInt32(1));
Assert.AreEqual(702, message.GetPackedInt64(1));
- Assert.AreEqual(703, message.GetPackedUint32(1));
- Assert.AreEqual(704, message.GetPackedUint64(1));
+ Assert.AreEqual(703u, message.GetPackedUint32(1));
+ Assert.AreEqual(704u, message.GetPackedUint64(1));
Assert.AreEqual(705, message.GetPackedSint32(1));
Assert.AreEqual(706, message.GetPackedSint64(1));
- Assert.AreEqual(707, message.GetPackedFixed32(1));
- Assert.AreEqual(708, message.GetPackedFixed64(1));
+ Assert.AreEqual(707u, message.GetPackedFixed32(1));
+ Assert.AreEqual(708u, message.GetPackedFixed64(1));
Assert.AreEqual(709, message.GetPackedSfixed32(1));
Assert.AreEqual(710, message.GetPackedSfixed64(1));
Assert.AreEqual(711, message.GetPackedFloat(1), 0.0);
@@ -1580,12 +1608,12 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(2, message.UnpackedEnumCount);
Assert.AreEqual(601, message.GetUnpackedInt32(0));
Assert.AreEqual(602, message.GetUnpackedInt64(0));
- Assert.AreEqual(603, message.GetUnpackedUint32(0));
- Assert.AreEqual(604, message.GetUnpackedUint64(0));
+ Assert.AreEqual(603u, message.GetUnpackedUint32(0));
+ Assert.AreEqual(604u, message.GetUnpackedUint64(0));
Assert.AreEqual(605, message.GetUnpackedSint32(0));
Assert.AreEqual(606, message.GetUnpackedSint64(0));
- Assert.AreEqual(607, message.GetUnpackedFixed32(0));
- Assert.AreEqual(608, message.GetUnpackedFixed64(0));
+ Assert.AreEqual(607u, message.GetUnpackedFixed32(0));
+ Assert.AreEqual(608u, message.GetUnpackedFixed64(0));
Assert.AreEqual(609, message.GetUnpackedSfixed32(0));
Assert.AreEqual(610, message.GetUnpackedSfixed64(0));
Assert.AreEqual(611, message.GetUnpackedFloat(0), 0.0);
@@ -1594,12 +1622,12 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(ForeignEnum.FOREIGN_BAR, message.GetUnpackedEnum(0));
Assert.AreEqual(701, message.GetUnpackedInt32(1));
Assert.AreEqual(702, message.GetUnpackedInt64(1));
- Assert.AreEqual(703, message.GetUnpackedUint32(1));
- Assert.AreEqual(704, message.GetUnpackedUint64(1));
+ Assert.AreEqual(703u, message.GetUnpackedUint32(1));
+ Assert.AreEqual(704u, message.GetUnpackedUint64(1));
Assert.AreEqual(705, message.GetUnpackedSint32(1));
Assert.AreEqual(706, message.GetUnpackedSint64(1));
- Assert.AreEqual(707, message.GetUnpackedFixed32(1));
- Assert.AreEqual(708, message.GetUnpackedFixed64(1));
+ Assert.AreEqual(707u, message.GetUnpackedFixed32(1));
+ Assert.AreEqual(708u, message.GetUnpackedFixed64(1));
Assert.AreEqual(709, message.GetUnpackedSfixed32(1));
Assert.AreEqual(710, message.GetUnpackedSfixed64(1));
Assert.AreEqual(711, message.GetUnpackedFloat(1), 0.0);
@@ -1659,12 +1687,12 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(2, message.GetExtensionCount(UnitTestProtoFile.PackedEnumExtension));
Assert.AreEqual(601, message.GetExtension(UnitTestProtoFile.PackedInt32Extension, 0));
Assert.AreEqual(602L, message.GetExtension(UnitTestProtoFile.PackedInt64Extension, 0));
- Assert.AreEqual(603, message.GetExtension(UnitTestProtoFile.PackedUint32Extension, 0));
- Assert.AreEqual(604L, message.GetExtension(UnitTestProtoFile.PackedUint64Extension, 0));
+ Assert.AreEqual(603u, message.GetExtension(UnitTestProtoFile.PackedUint32Extension, 0));
+ Assert.AreEqual(604uL, message.GetExtension(UnitTestProtoFile.PackedUint64Extension, 0));
Assert.AreEqual(605, message.GetExtension(UnitTestProtoFile.PackedSint32Extension, 0));
Assert.AreEqual(606L, message.GetExtension(UnitTestProtoFile.PackedSint64Extension, 0));
- Assert.AreEqual(607, message.GetExtension(UnitTestProtoFile.PackedFixed32Extension, 0));
- Assert.AreEqual(608L, message.GetExtension(UnitTestProtoFile.PackedFixed64Extension, 0));
+ Assert.AreEqual(607u, message.GetExtension(UnitTestProtoFile.PackedFixed32Extension, 0));
+ Assert.AreEqual(608uL, message.GetExtension(UnitTestProtoFile.PackedFixed64Extension, 0));
Assert.AreEqual(609, message.GetExtension(UnitTestProtoFile.PackedSfixed32Extension, 0));
Assert.AreEqual(610L, message.GetExtension(UnitTestProtoFile.PackedSfixed64Extension, 0));
Assert.AreEqual(611F, message.GetExtension(UnitTestProtoFile.PackedFloatExtension, 0));
@@ -1674,12 +1702,12 @@ namespace Google.ProtocolBuffers
message.GetExtension(UnitTestProtoFile.PackedEnumExtension, 0));
Assert.AreEqual(701, message.GetExtension(UnitTestProtoFile.PackedInt32Extension, 1));
Assert.AreEqual(702L, message.GetExtension(UnitTestProtoFile.PackedInt64Extension, 1));
- Assert.AreEqual(703, message.GetExtension(UnitTestProtoFile.PackedUint32Extension, 1));
- Assert.AreEqual(704L, message.GetExtension(UnitTestProtoFile.PackedUint64Extension, 1));
+ Assert.AreEqual(703u, message.GetExtension(UnitTestProtoFile.PackedUint32Extension, 1));
+ Assert.AreEqual(704uL, message.GetExtension(UnitTestProtoFile.PackedUint64Extension, 1));
Assert.AreEqual(705, message.GetExtension(UnitTestProtoFile.PackedSint32Extension, 1));
Assert.AreEqual(706L, message.GetExtension(UnitTestProtoFile.PackedSint64Extension, 1));
- Assert.AreEqual(707, message.GetExtension(UnitTestProtoFile.PackedFixed32Extension, 1));
- Assert.AreEqual(708L, message.GetExtension(UnitTestProtoFile.PackedFixed64Extension, 1));
+ Assert.AreEqual(707u, message.GetExtension(UnitTestProtoFile.PackedFixed32Extension, 1));
+ Assert.AreEqual(708uL, message.GetExtension(UnitTestProtoFile.PackedFixed64Extension, 1));
Assert.AreEqual(709, message.GetExtension(UnitTestProtoFile.PackedSfixed32Extension, 1));
Assert.AreEqual(710L, message.GetExtension(UnitTestProtoFile.PackedSfixed64Extension, 1));
Assert.AreEqual(711F, message.GetExtension(UnitTestProtoFile.PackedFloatExtension, 1));
@@ -1706,12 +1734,12 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(2, message.GetExtensionCount(UnitTestExtrasProtoFile.UnpackedEnumExtension));
Assert.AreEqual(601, message.GetExtension(UnitTestExtrasProtoFile.UnpackedInt32Extension, 0));
Assert.AreEqual(602L, message.GetExtension(UnitTestExtrasProtoFile.UnpackedInt64Extension, 0));
- Assert.AreEqual(603, message.GetExtension(UnitTestExtrasProtoFile.UnpackedUint32Extension, 0));
- Assert.AreEqual(604L, message.GetExtension(UnitTestExtrasProtoFile.UnpackedUint64Extension, 0));
+ Assert.AreEqual(603u, message.GetExtension(UnitTestExtrasProtoFile.UnpackedUint32Extension, 0));
+ Assert.AreEqual(604uL, message.GetExtension(UnitTestExtrasProtoFile.UnpackedUint64Extension, 0));
Assert.AreEqual(605, message.GetExtension(UnitTestExtrasProtoFile.UnpackedSint32Extension, 0));
Assert.AreEqual(606L, message.GetExtension(UnitTestExtrasProtoFile.UnpackedSint64Extension, 0));
- Assert.AreEqual(607, message.GetExtension(UnitTestExtrasProtoFile.UnpackedFixed32Extension, 0));
- Assert.AreEqual(608L, message.GetExtension(UnitTestExtrasProtoFile.UnpackedFixed64Extension, 0));
+ Assert.AreEqual(607u, message.GetExtension(UnitTestExtrasProtoFile.UnpackedFixed32Extension, 0));
+ Assert.AreEqual(608uL, message.GetExtension(UnitTestExtrasProtoFile.UnpackedFixed64Extension, 0));
Assert.AreEqual(609, message.GetExtension(UnitTestExtrasProtoFile.UnpackedSfixed32Extension, 0));
Assert.AreEqual(610L, message.GetExtension(UnitTestExtrasProtoFile.UnpackedSfixed64Extension, 0));
Assert.AreEqual(611F, message.GetExtension(UnitTestExtrasProtoFile.UnpackedFloatExtension, 0));
@@ -1721,12 +1749,12 @@ namespace Google.ProtocolBuffers
message.GetExtension(UnitTestExtrasProtoFile.UnpackedEnumExtension, 0));
Assert.AreEqual(701, message.GetExtension(UnitTestExtrasProtoFile.UnpackedInt32Extension, 1));
Assert.AreEqual(702L, message.GetExtension(UnitTestExtrasProtoFile.UnpackedInt64Extension, 1));
- Assert.AreEqual(703, message.GetExtension(UnitTestExtrasProtoFile.UnpackedUint32Extension, 1));
- Assert.AreEqual(704L, message.GetExtension(UnitTestExtrasProtoFile.UnpackedUint64Extension, 1));
+ Assert.AreEqual(703u, message.GetExtension(UnitTestExtrasProtoFile.UnpackedUint32Extension, 1));
+ Assert.AreEqual(704uL, message.GetExtension(UnitTestExtrasProtoFile.UnpackedUint64Extension, 1));
Assert.AreEqual(705, message.GetExtension(UnitTestExtrasProtoFile.UnpackedSint32Extension, 1));
Assert.AreEqual(706L, message.GetExtension(UnitTestExtrasProtoFile.UnpackedSint64Extension, 1));
- Assert.AreEqual(707, message.GetExtension(UnitTestExtrasProtoFile.UnpackedFixed32Extension, 1));
- Assert.AreEqual(708L, message.GetExtension(UnitTestExtrasProtoFile.UnpackedFixed64Extension, 1));
+ Assert.AreEqual(707u, message.GetExtension(UnitTestExtrasProtoFile.UnpackedFixed32Extension, 1));
+ Assert.AreEqual(708uL, message.GetExtension(UnitTestExtrasProtoFile.UnpackedFixed64Extension, 1));
Assert.AreEqual(709, message.GetExtension(UnitTestExtrasProtoFile.UnpackedSfixed32Extension, 1));
Assert.AreEqual(710L, message.GetExtension(UnitTestExtrasProtoFile.UnpackedSfixed64Extension, 1));
Assert.AreEqual(711F, message.GetExtension(UnitTestExtrasProtoFile.UnpackedFloatExtension, 1));
@@ -1735,27 +1763,11 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(UnpackedExtensionsForeignEnum.FOREIGN_BAZ, message.GetExtension(UnitTestExtrasProtoFile.UnpackedEnumExtension, 1));
}
- private static ByteString goldenPackedFieldsMessage = null;
-
- /// <summary>
- /// Get the bytes of the "golden packed fields message". This is a serialized
- /// TestPackedTypes with all fields set as they would be by SetPackedFields,
- /// but it is loaded from a file on disk rather than generated dynamically.
- /// The file is actually generated by C++ code, so testing against it verifies compatibility
- /// with C++.
- /// </summary>
- public static ByteString GetGoldenPackedFieldsMessage()
- {
- if (goldenPackedFieldsMessage == null)
- {
- goldenPackedFieldsMessage = ReadBytesFromFile("golden_packed_fields_message");
- }
- return goldenPackedFieldsMessage;
- }
-
private static readonly string[] TestCultures = {"en-US", "en-GB", "fr-FR", "de-DE"};
- public static void TestInMultipleCultures(Action test)
+ public delegate void CultureAction();
+
+ public static void TestInMultipleCultures(CultureAction test)
{
CultureInfo originalCulture = Thread.CurrentThread.CurrentCulture;
foreach (string culture in TestCultures)
@@ -1785,6 +1797,22 @@ namespace Google.ProtocolBuffers
return bytes;
}
+
+ internal delegate void Action();
+
+ internal static void AssertNotSupported(Action action)
+ {
+ try
+ {
+ action();
+ Assert.Fail("Expected NotSupportedException");
+ }
+ catch (NotSupportedException)
+ {
+ // Expected
+ }
+ }
+
internal static void AssertArgumentNullException(Action action)
{
try
@@ -1797,5 +1825,25 @@ namespace Google.ProtocolBuffers
// We expect this exception.
}
}
+
+ internal static void AssertBytesEqual(byte[] a, byte[]b)
+ {
+ if (a == null || b == null)
+ {
+ Assert.AreEqual<object>(a, b);
+ }
+ else
+ {
+ Assert.AreEqual(a.Length, b.Length, "The byte[] is not of the expected length.");
+
+ for (int i = 0; i < a.Length; i++)
+ {
+ if (a[i] != b[i])
+ {
+ Assert.AreEqual(a[i], b[i], "Byte[] differs at index " + i);
+ }
+ }
+ }
+ }
}
} \ No newline at end of file