public void SdkResultItem_Equal_CtorParam_MetadataNull() { var sdkResultItem1 = new SdkResultItem("anyspec", new Dictionary <string, string>()); var sdkResultItem2 = new SdkResultItem("anyspec", null); // Should not be the same, because passing metadata = null is allowed and the Metadata property value allows null. sdkResultItem1.ShouldNotBe(sdkResultItem2); }
public void SdkResultItem_Equal_WithDefaultCtor() { var sdkResultItem1 = new SdkResultItem(); sdkResultItem1.ItemSpec = "AnySpec"; sdkResultItem1.Metadata.Add("key1", "value1"); sdkResultItem1.Metadata.Add("key2", "value2"); var sdkResultItem2 = new SdkResultItem(); sdkResultItem2.ItemSpec = "AnySpec"; sdkResultItem2.Metadata.Add("key2", "value2"); sdkResultItem2.Metadata.Add("key1", "value1"); sdkResultItem1.ShouldBe(sdkResultItem2); }
public void SdkResultItem_GetHashCode_Compare_MetadataIgnoreKeyOrder() { var sdkResultItem1 = new SdkResultItem(); sdkResultItem1.ItemSpec = "AnySpec"; sdkResultItem1.Metadata.Add("key1", "value1"); sdkResultItem1.Metadata.Add("key2", "value2"); var hashSdkItem1 = sdkResultItem1.GetHashCode(); var sdkResultItem2 = new SdkResultItem(); sdkResultItem2.ItemSpec = "AnySpec"; sdkResultItem2.Metadata.Add("key2", "value2"); sdkResultItem2.Metadata.Add("key1", "value1"); var hashSdkItem2 = sdkResultItem2.GetHashCode(); hashSdkItem1.ShouldBe(hashSdkItem2); }
public static void Translate(this ITranslator t, ref SdkResultItem item) { string itemSpec = null; Dictionary <string, string> metadata = null; if (t.Mode == TranslationDirection.WriteToStream) { itemSpec = item.ItemSpec; metadata = item.Metadata; } t.Translate(ref itemSpec); t.TranslateDictionary(ref metadata, StringComparer.InvariantCultureIgnoreCase); if (t.Mode == TranslationDirection.ReadFromStream) { item = new SdkResultItem(itemSpec, metadata); } }