public void GetValueWhenNullDefault() { var value = Get.ValueOrDefault(() => Fake.Next.Value); Assert.AreEqual(0, value); value = Get.ValueOrDefault(this, x => Fake.Next.Value); Assert.AreEqual(0, value); }
public void GetValueWhenNullExplicit() { var value = Get.ValueOrDefault(() => Fake.Next.Value, int.MinValue); Assert.AreEqual(int.MinValue, value); value = Get.ValueOrDefault(this, x => Fake.Next.Value, int.MinValue); Assert.AreEqual(int.MinValue, value); }
public void GetNameWhenNullExplicitDefaultValue() { var name = Get.ValueOrDefault(() => Fake.Next.Name, "null"); Assert.AreEqual("null", name); name = Get.ValueOrDefault(this, x => Fake.Next.Name, "null"); Assert.AreEqual("null", name); }
public void GetWithMethod() { var name = Get.ValueOrDefault(() => Fake.Method().Next.Method().Name); Assert.AreEqual(null, name); name = Get.ValueOrDefault(this, x => Fake.Method().Next.Method().Name); Assert.AreEqual(null, name); }
public void GetNameWhenNull() { var name = Get.ValueOrDefault(() => Fake.Next.Name); Assert.AreEqual(null, name); name = Get.ValueOrDefault(this, x => Fake.Next.Name); Assert.AreEqual(null, name); }
public void ValuePathWhenNullInPath() { Fake = new Fake(); var path = Get.ValuePath <ValuePathTests, string>(x => x.Fake.Next.Name); var value = path.GetValue(this); Assert.IsFalse(value.HasValue); // ReSharper disable once UnusedVariable Assert.Throws <InvalidOperationException>(() => { var temp = value.Value; }); }
public void ValuePathWhenHasNullValue() { Fake = new Fake { Next = new Level { Name = null } }; var path = Get.ValuePath <ValuePathTests, string>(x => x.Fake.Next.Name); var value = path.GetValue(this); Assert.IsTrue(value.HasValue); Assert.AreEqual(null, value.Value); }
public void GetNameWhenNotNull() { Fake = new Fake { Next = new Level { Name = "Johan" } }; var name = Get.ValueOrDefault(() => Fake.Next.Name); Assert.AreEqual("Johan", name); name = Get.ValueOrDefault(this, x => Fake.Next.Name); Assert.AreEqual("Johan", name); }