public void CanSetProperties() { var endpoint = EndpointAddress10.FromEndpointAddress(new EndpointAddress("http://someUri")); var errorCode = new ErrorCode(new Uri("http://foo")); var now = DateTime.UtcNow; var faultCause = (new Mock <BaseFaultFull>()).Object; var mock = new Mock <BaseFaultFull>(now); mock.CallBase = true; BaseFaultFull target = mock.Object; Assert.IsNull(target.ErrorCode); // Sanity check Assert.IsNull(target.FaultCause); // Sanity check Assert.IsNull(target.Originator); // Sanity check target.ErrorCode = errorCode; Assert.That(target.ErrorCode, Is.SameAs(errorCode)); target.ErrorCode = null; Assert.That(target.ErrorCode, Is.Null); target.FaultCause = faultCause; Assert.That(target.FaultCause, Is.SameAs(faultCause)); target.FaultCause = null; Assert.That(target.FaultCause, Is.Null); target.Originator = endpoint; Assert.That(target.Originator, Is.SameAs(endpoint)); target.Originator = null; Assert.That(target.Originator, Is.Null); }
public new static XmlQualifiedName AcquireSchema(XmlSchemaSet xs) { Contract.Requires <ArgumentNullException>(xs != null, "xs"); Debug.Assert(xs != null); BaseFaultFull.AcquireSchema(xs); using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("CommonContracts.WsBaseFaults.Extensions.SlaViolationFault Schema.xsd")) { Debug.Assert(stream != null, "Resource Stream 'CommonContracts.WsBaseFaults.Extensions.SlaViolationFault Schema' was not able to be opened"); var schema = XmlSchema.Read(stream, null); xs.Add(schema); } return(new XmlQualifiedName("SLAViolationType", Constants.Namespace)); }
public void CannotSetFaultCauseToSameReference() { var mock = new Mock <BaseFaultFull>(); mock.CallBase = true; BaseFaultFull target = mock.Object; Assert.IsFalse(ReferenceEquals(target, target.FaultCause)); // Sanity check try { target.FaultCause = target; Assert.Fail("Exception should have thrown"); } catch (ArgumentException ex) { Assert.AreEqual("You cannot nest a BaseFault with the same reference as itself as this would cause a cirular reference in the FaultCause chain.\r\nParameter name: value", ex.Message); Assert.AreEqual("value", ex.ParamName); } }
public void ConstructorShouldSetDateToUtc() { var now = DateTime.Now; Assert.AreEqual(DateTimeKind.Local, now.Kind); // Sanity check var mock = new Mock <BaseFaultFull>(now); mock.CallBase = true; BaseFaultFull target = mock.Object; Assert.AreEqual(now.ToUniversalTime(), target.Timestamp); mock = new Mock <BaseFaultFull>(now, null, null, null); mock.CallBase = true; var parentTarget = mock.Object; Assert.AreEqual(now.ToUniversalTime(), parentTarget.Timestamp); }