public void Test_EnumTypeException_constructor_type() { // Arrange var type = typeof(int); // Act var ex = new EnumTypeException(type); // Assert ex.ShouldNotBeNull(); ex.Type.ShouldBe(type); }
public void Test_EnumTypeException_constructor_type_messageTemplate() { // Arrange var messageTemplate = "Customer message about: {0}"; var type = typeof(int); // Act var ex = new EnumTypeException(type, messageTemplate); // Assert ex.ShouldNotBeNull(); ex.Type.ShouldBe(type); ex.Message.ShouldBe(ex.Message.Replace("{0}", type.Name)); }
/// <summary> /// Enums the is subset. /// </summary> /// <returns><c>true</c>, if is subset was enumed, <c>false</c> otherwise.</returns> /// <typeparam name="TSuperset">The 1st type parameter.</typeparam> /// <typeparam name="TSubset">The 2nd type parameter.</typeparam> public static bool EnumIsSubset <TSuperset, TSubset>() where TSuperset : struct, IConvertible where TSubset : struct, IConvertible { EnumTypeException <TSuperset> .VerifyEnum(); EnumTypeException <TSubset> .VerifyEnum(); foreach (var value in Enum.GetValues(typeof(TSubset)).Cast <TSubset>()) { TSuperset e; if (!Enum.TryParse(value.ToString(), out e)) { return(false); } } return(true); }