Esempio n. 1
0
        public void TestEasingTypeConverter()
        {
            var converter = new EasingTypeConverter();

            Assert.True(converter.CanConvertFrom(typeof(string)));
            Assert.Null(converter.ConvertFromInvariantString(null));
            Assert.Null(converter.ConvertFromInvariantString(string.Empty));
            Assert.AreEqual(Easing.Linear, converter.ConvertFromInvariantString("Linear"));
            Assert.AreEqual(Easing.Linear, converter.ConvertFromInvariantString("linear"));
            Assert.AreEqual(Easing.Linear, converter.ConvertFromInvariantString("Easing.Linear"));
            Assert.AreEqual(Easing.SinOut, converter.ConvertFromInvariantString("SinOut"));
            Assert.AreEqual(Easing.SinOut, converter.ConvertFromInvariantString("sinout"));
            Assert.AreEqual(Easing.SinOut, converter.ConvertFromInvariantString("Easing.SinOut"));
            Assert.AreEqual(Easing.SinIn, converter.ConvertFromInvariantString("SinIn"));
            Assert.AreEqual(Easing.SinIn, converter.ConvertFromInvariantString("sinin"));
            Assert.AreEqual(Easing.SinIn, converter.ConvertFromInvariantString("Easing.SinIn"));
            Assert.AreEqual(Easing.SinInOut, converter.ConvertFromInvariantString("SinInOut"));
            Assert.AreEqual(Easing.SinInOut, converter.ConvertFromInvariantString("sininout"));
            Assert.AreEqual(Easing.SinInOut, converter.ConvertFromInvariantString("Easing.SinInOut"));
            Assert.AreEqual(Easing.CubicOut, converter.ConvertFromInvariantString("CubicOut"));
            Assert.AreEqual(Easing.CubicOut, converter.ConvertFromInvariantString("cubicout"));
            Assert.AreEqual(Easing.CubicOut, converter.ConvertFromInvariantString("Easing.CubicOut"));
            Assert.AreEqual(Easing.CubicIn, converter.ConvertFromInvariantString("CubicIn"));
            Assert.AreEqual(Easing.CubicIn, converter.ConvertFromInvariantString("cubicin"));
            Assert.AreEqual(Easing.CubicIn, converter.ConvertFromInvariantString("Easing.CubicIn"));
            Assert.AreEqual(Easing.CubicInOut, converter.ConvertFromInvariantString("CubicInOut"));
            Assert.AreEqual(Easing.CubicInOut, converter.ConvertFromInvariantString("cubicinout"));
            Assert.AreEqual(Easing.CubicInOut, converter.ConvertFromInvariantString("Easing.CubicInOut"));
            Assert.AreEqual(Easing.BounceOut, converter.ConvertFromInvariantString("BounceOut"));
            Assert.AreEqual(Easing.BounceOut, converter.ConvertFromInvariantString("bounceout"));
            Assert.AreEqual(Easing.BounceOut, converter.ConvertFromInvariantString("Easing.BounceOut"));
            Assert.AreEqual(Easing.BounceIn, converter.ConvertFromInvariantString("BounceIn"));
            Assert.AreEqual(Easing.BounceIn, converter.ConvertFromInvariantString("bouncein"));
            Assert.AreEqual(Easing.BounceIn, converter.ConvertFromInvariantString("Easing.BounceIn"));
            Assert.AreEqual(Easing.SpringOut, converter.ConvertFromInvariantString("SpringOut"));
            Assert.AreEqual(Easing.SpringOut, converter.ConvertFromInvariantString("springout"));
            Assert.AreEqual(Easing.SpringOut, converter.ConvertFromInvariantString("Easing.SpringOut"));
            Assert.AreEqual(Easing.SpringIn, converter.ConvertFromInvariantString("SpringIn"));
            Assert.AreEqual(Easing.SpringIn, converter.ConvertFromInvariantString("springin"));
            Assert.AreEqual(Easing.SpringIn, converter.ConvertFromInvariantString("Easing.SpringIn"));
            Assert.Throws <InvalidOperationException>(() => converter.ConvertFromInvariantString("WrongEasingName"));
            Assert.Throws <InvalidOperationException>(() => converter.ConvertFromInvariantString("Easing.Linear.SinInOut"));
        }
Esempio n. 2
0
 private static T GenerateEasingType <T>(EasingMethod easingMethod, bool enableIn, bool enableOut, EasingTypeConverter <T> converter, T defaultValue = default)
 {
     if (easingMethod > EasingMethod.None && easingMethod <= LastEasingMethod)
     {
         if (enableIn || enableOut)
         {
             return(converter(easingMethod, enableIn, enableOut));
         }
         else
         {
             throw new ArgumentException("The easing in and out parameters were both false which is invalid.");
         }
     }
     else if (easingMethod == EasingMethod.None)
     {
         return(defaultValue);
     }
     else
     {
         throw new ArgumentException("The easing type value was beyond the easing type range.");
     }
 }