コード例 #1
0
        public void Access_Success()
        {
            var result = MyResult.CreateSuccess("value");

            Assert.IsTrue(result.IsSuccess);
            Assert.AreEqual("value", result.Value);
            Assert.IsNull(result.Error, "this should fail");
        }
コード例 #2
0
        public void Combine()
        {
            var error1  = MyResult.CreateError(Failure.ItIsRaining);
            var error1s = MyResult.CreateError(Failure.ItIsRaining);
            Func <string, MyResult> fails = i => { throw new InvalidOperationException(); };

            Assert.AreEqual(error1s, error1.Combine(fails));
            Assert.AreEqual(error1s, ResultSuccess.Combine(i => error1s));
            Assert.AreEqual(MyResult.CreateSuccess("Hi!"), ResultSuccess.Combine(i => MyResult.CreateSuccess(i + "!")));
        }
コード例 #3
0
 public void Reference_Value_Is_Checked_For_Null()
 {
     // if you have R#, this should be highlighted
     MyResult.CreateSuccess(default(string));
 }