예제 #1
0
        public void It_reads_first_reason()
        {
            var outgoingMessage = FaultMessage.Create(
                "someAction",
                "no reason",
                FaultCode.Sender,
                new[] { FaultCode.Receiver});

            var reader = XElementExtensions.ParseGeneratedXml(outgoingMessage.Write).ToReader();
            var incomingMessage = new IncomingMessage(reader);
            var exception = incomingMessage.CreateFaultException();

            Assert.AreEqual("no reason", exception.Reason);
        }
예제 #2
0
        public void It_reads_first_reason()
        {
            var outgoingMessage = FaultMessage.Create(
                "someAction",
                "no reason",
                FaultCode.Sender,
                new[] { FaultCode.Receiver });

            var reader          = XElementExtensions.ParseGeneratedXml(outgoingMessage.Write).ToReader();
            var incomingMessage = new IncomingMessage(reader);
            var exception       = incomingMessage.CreateFaultException();

            Assert.AreEqual("no reason", exception.Reason);
        }
예제 #3
0
        public void It_reads_fault_code_with_nested_subcodes()
        {
            var outgoingMessage = FaultMessage.Create(
                "someAction", 
                "no reason", 
                FaultCode.Sender, 
                new [] {FaultCode.Receiver, FaultCode.VersionMismatch});

            var reader = XElementExtensions.ParseGeneratedXml(outgoingMessage.Write).ToReader();
            var incomingMessage = new IncomingMessage(reader);
            var exception = incomingMessage.CreateFaultException();

            Assert.AreEqual(FaultCode.Sender, exception.Code);
            Assert.IsTrue(new [] {FaultCode.Receiver, FaultCode.VersionMismatch}.SequenceEqual(exception.Subcodes));
        }
예제 #4
0
        public void It_reads_fault_code_with_nested_subcodes()
        {
            var outgoingMessage = FaultMessage.Create(
                "someAction",
                "no reason",
                FaultCode.Sender,
                new [] { FaultCode.Receiver, FaultCode.VersionMismatch });

            var reader          = XElementExtensions.ParseGeneratedXml(outgoingMessage.Write).ToReader();
            var incomingMessage = new IncomingMessage(reader);
            var exception       = incomingMessage.CreateFaultException();

            Assert.AreEqual(FaultCode.Sender, exception.Code);
            Assert.IsTrue(new [] { FaultCode.Receiver, FaultCode.VersionMismatch }.SequenceEqual(exception.Subcodes));
        }