コード例 #1
0
        public void MatchWithNullOutput()
        {
            var e = Assert.Throws <ArgumentNullException>(() =>
                                                          OutputOrErrorLine.Output("foobar").Match(null !, _ => 0));

            Assert.That(e?.ParamName, Is.EqualTo("output"));
        }
コード例 #2
0
        public void MatchError()
        {
            var result =
                OutputOrErrorLine.Error("foobar")
                .Match(_ => throw new NotImplementedException(),
                       s => s.ToUpperInvariant());

            Assert.That(result, Is.EqualTo("FOOBAR"));
        }
コード例 #3
0
        public void Default()
        {
            var output = new OutputOrErrorLine();

            Assert.That(output.Kind, Is.EqualTo(OutputOrErrorKind.Output));
            Assert.That(output.IsOutput(), Is.True);
            Assert.That(output.IsError(), Is.False);
            Assert.That(output.Value, Is.Null);
            Assert.That(output.ToString(), Is.Empty);
        }
コード例 #4
0
        public void Output()
        {
            var error = OutputOrErrorLine.Output("foobar");

            Assert.That(error.Kind, Is.EqualTo(OutputOrErrorKind.Output));
            Assert.That(error.IsOutput(), Is.True);
            Assert.That(error.IsError(), Is.False);
            Assert.That(error.Value, Is.EqualTo("foobar"));
            Assert.That(error.ToString(), Is.EqualTo(error.Value));
            var(kind, line) = error;
            Assert.That(kind, Is.EqualTo(error.Kind));
            Assert.That(line, Is.EqualTo(error.Value));
        }