private static void ValidateFlags <T>(T value, ISet <string> expected) where T : struct { ISet <string> actual = FlagsEnumMap <T> .ToApiValues(value); // Assert.Equal(ISet, ISet) is order dependant. Assert.Subset(expected, actual); Assert.Superset(expected, actual); }
public void InvalidConversion() { Assert.Throws <ArgumentException>(() => EnumMap <WriteDisposition> .ToValue("WRITEIFEMPTY")); Assert.Throws <ArgumentException>(() => EnumMap <WriteDisposition> .ToValue("Bogus")); Assert.Throws <ArgumentException>(() => EnumMap <WriteDisposition> .ToValue("Write_Empty")); Assert.Throws <ArgumentException>(() => EnumMap <WriteDisposition> .ToApiValue((WriteDisposition)100)); Assert.Throws <TypeInitializationException>(() => EnumMap <SchemaUpdateOption> .ToApiValue(SchemaUpdateOption.AllowFieldAddition)); Assert.Throws <ArgumentException>(() => FlagsEnumMap <SchemaUpdateOption> .ToApiValues((SchemaUpdateOption)100)); Assert.Throws <TypeInitializationException>(() => FlagsEnumMap <WriteDisposition> .ToApiValues(WriteDisposition.WriteAppend)); }