public void Can_Combine_All_Operations() { //Arrange var builder = new ModifyRequestBuilder(); //Act builder.Context("/foo/bar") .ReturnNoAttributes() .FailOnError() .AddModification(Modifications.RemoveAttribute, SimpleAttribute.New(AttributeTypes.Integer, "objectId")) .AddModifications(() => new List <ModificationItem> { ModificationItem.New( Modifications.AdvanceState, StructureAttribute.New(390, new StructureValue(10)) ), ModificationItem.New( Modifications.RegressState, StructureAttribute.New(24, new StructureValue(10)) ) }) .ConfigureLookupControls() .ReturnAttributes(390, 24) .ReturnLanguages(10); var request = new BatchRequest(builder.Build()); Console.WriteLine(builder.Build().ToAdsml().ToString()); //Assert Assert.DoesNotThrow(() => builder.Build()); Assert.DoesNotThrow(() => request.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void Can_Instantiate_New_SimpleAttribute_With_FactoryMethod() { //Act var attribute = SimpleAttribute.New(AttributeTypes.Integer, "objectId", "1777"); //Assert Assert.That(attribute, Is.Not.Null); }
public void Can_Instantiate_New_ModificationItem_With_FactoryMethod() { //Act var modItem = ModificationItem.New(Modifications.RemoveValue, SimpleAttribute.New(AttributeTypes.Text, "foo")); //Assert Assert.That(modItem, Is.Not.Null); }
public void Can_Add_ModificationItem() { //Arrange var builder = new ModifyRequestBuilder(); //Act builder.AddModification(Modifications.RemoveValue, SimpleAttribute.New(AttributeTypes.Integer, "objectId")); //Assert Assert.That(builder.Modifications.Count(), Is.EqualTo(1)); }
public void CanSetAttributesToBeCreatedWithListFactoryOverload() { //Arrange var builder = new CreateRequestBuilder(); //Act builder.AttributesToSet( () => new List <IAdsmlAttribute> { StructureAttribute.New(10, new StructureValue(10, "foo")), SimpleAttribute.New(AttributeTypes.Text, "objectName", "foo") } ); //Assert Assert.That(builder.Attributes.Count(), Is.EqualTo(2)); }
public void Can_Build_ModifyRequest() { //Arrange var builder = new ModifyRequestBuilder(); //Act builder.Context("/foo/bar") .AddModification(Modifications.RemoveAttribute, SimpleAttribute.New(AttributeTypes.Integer, "objectId")); var request = builder.Build(); var batchRequest = new BatchRequest(request); //Assert Assert.That(request, Is.Not.Null); Assert.That(request, Is.InstanceOf <ModifyRequest>()); Assert.DoesNotThrow(() => batchRequest.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void Can_Generate_Api_Xml_With_Multiple_Values() { //Arrange var expected = new XElement("SimpleAttribute", new XAttribute("name", "objectTypeId"), new XAttribute("type", "integer"), new XElement("Value", new XCData("12")), new XElement("Value", new XCData("24"))).ToString(); var attribute = SimpleAttribute.New(AttributeTypes.Integer, "objectTypeId", new[] { "12", "24" }); //Act var actual = attribute.ToAdsml().ToString(); Console.WriteLine(actual); //Assert Assert.That(actual, Is.EqualTo(expected)); }
public void Can_Add_ModificationItems_With_ListFactory() { //Arrange var builder = new ModifyRequestBuilder(); //Act builder.AddModifications(() => new List <ModificationItem> { ModificationItem.New( Modifications.ReplaceAttribute, SimpleAttribute.New(AttributeTypes.Integer, "foo", "bar") ), ModificationItem.New( Modifications.AddAttribute, RelationAttribute.New("foo", "bar") ) }); //Assert Assert.That(builder.Modifications.Count(), Is.EqualTo(2)); }
public void Can_Build_ModifyRequest_With_Request_Filters() { //Arrange var builder = new ModifyRequestBuilder(); //Act builder.Context("/foo/bar") .ReturnNoAttributes() .FailOnError() .AddModification(Modifications.RemoveAttribute, SimpleAttribute.New(AttributeTypes.Integer, "objectId")); var request = builder.Build(); var batchRequest = new BatchRequest(request); //Assert Assert.That(request.RequestFilters.Count(), Is.EqualTo(2)); Assert.That(request.RequestFilters.ElementAt(0), Is.InstanceOf <ReturnNoAttributesFilter>()); Assert.That(request.RequestFilters.ElementAt(1), Is.InstanceOf <FailOnErrorFilter>()); Assert.DoesNotThrow(() => batchRequest.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void Can_Deserialize_SimpleAttribute() { //Arrange var xml = new XElement("SimpleAttribute", new XAttribute("name", "name"), new XAttribute("type", "text"), new XElement("Value", "foo")); var expected = SimpleAttribute.New(AttributeTypes.Text, "name", "foo"); var sad = new SimpleAttributeDeserializer(); //Act var actual = (SimpleAttribute)sad.Deserialize(xml); //Assert Assert.That(actual, Is.InstanceOf <SimpleAttribute>()); Assert.That(actual.Name, Is.EqualTo(expected.Name)); Assert.That(actual.AttributeType, Is.EqualTo(expected.AttributeType)); Assert.That(actual.Values.ElementAt(0), Is.EqualTo(expected.Values.ElementAt(0))); }