private static void TestEquality(IEnumerable <OperationDescriptor> actualDescriptors, IEnumerable <MyOperationDescriptor> expectedDescriptors)
        {
            IEnumerable <OperationDescriptor>   orderedActualDescriptors   = actualDescriptors.OrderBy(od => od.Title);
            IEnumerable <MyOperationDescriptor> orderedExpectedDescriptors = expectedDescriptors.OrderBy(od => od.Title);

            IEnumerator <OperationDescriptor>   actualEnumerator   = orderedActualDescriptors.GetEnumerator();
            IEnumerator <MyOperationDescriptor> expectedEnumerator = orderedExpectedDescriptors.GetEnumerator();

            while (expectedEnumerator.MoveNext())
            {
                Assert.IsTrue(actualEnumerator.MoveNext());
                MyOperationDescriptor actualDescriptor   = new MyOperationDescriptor((OperationDescriptor)actualEnumerator.Current);
                MyOperationDescriptor expectedDescriptor = expectedEnumerator.Current;

                Assert.AreEqual(expectedDescriptor.Metadata, actualDescriptor.Metadata);
                Assert.AreEqual(expectedDescriptor.Target, actualDescriptor.Target);
                Assert.AreEqual(expectedDescriptor.Title, actualDescriptor.Title);
            }
        }
        private static void TestEquality(IEnumerable<OperationDescriptor> actualDescriptors, IEnumerable<MyOperationDescriptor> expectedDescriptors)
        {
            IEnumerable<OperationDescriptor> orderedActualDescriptors = actualDescriptors.OrderBy(od => od.Title);
            IEnumerable<MyOperationDescriptor> orderedExpectedDescriptors = expectedDescriptors.OrderBy(od => od.Title);

            IEnumerator<OperationDescriptor> actualEnumerator = orderedActualDescriptors.GetEnumerator();
            IEnumerator<MyOperationDescriptor> expectedEnumerator = orderedExpectedDescriptors.GetEnumerator();

            while(expectedEnumerator.MoveNext())
            {
                Assert.IsTrue(actualEnumerator.MoveNext());
                MyOperationDescriptor actualDescriptor = new MyOperationDescriptor((OperationDescriptor)actualEnumerator.Current);
                MyOperationDescriptor expectedDescriptor = expectedEnumerator.Current;

                Assert.AreEqual(expectedDescriptor.Metadata, actualDescriptor.Metadata);
                Assert.AreEqual(expectedDescriptor.Target, actualDescriptor.Target);
                Assert.AreEqual(expectedDescriptor.Title, actualDescriptor.Title);
            }
        }