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 CanGenerateApiXmlWithLookupControl() { //Arrange string expexcted = new XElement("LookupRequest", new XAttribute("name", "/Schema/Attribute Sets/Översättningsattribut"), new XElement("LookupControls", new XElement("AttributesToReturn", new XAttribute("namelist", "members")), new XElement("LanguagesToReturn", new XElement("Language", new XAttribute("id", "10"))))).ToString(); var lookupBuilder = new LookupControlBuilder(); lookupBuilder.AttributeNamelist("members").ReturnLanguages(LanguageToReturn.WithLanguageId(10)); //Act var req = new LookupRequest("/Schema/Attribute Sets/Översättningsattribut", lookupBuilder.Build()); var actual = req.ToAdsml(); var batchRequest = new BatchRequest(req); Console.WriteLine(actual); //Assert Assert.That(actual.ToString(), Is.EqualTo(expexcted)); Assert.DoesNotThrow(() => batchRequest.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void Can_Combine_All_Api_Commands() { //Arrange var aqlBuilder = new AqlQueryBuilder(); //Act aqlBuilder.BasePath("/foo/bar") .SearchRequestFilters(Filter.ReturnNoAttributes()) .QueryType(AqlQueryTypes.Below) .ObjectTypeToFind(12) .QueryString("#215 = \"foo\"") .ConfigureSearchControls() .AddRequestFilters( Filter.ExcludeBin(), Filter.ExcludeDocument(), Filter.CountLimit(1)) .ReturnAttributes(AttributeToReturn.WithName("Artikelnummer")) .ReturnLanguages(LanguageToReturn.WithLanguageId(10)) .ConfigureReferenceHandling( ReferenceOptions.ResolveAttributes(), ReferenceOptions.ResolveSpecialCharacters(), ReferenceOptions.UseChannel(3), ReferenceOptions.ReturnValuesOnly()); Console.WriteLine(aqlBuilder.Build().ToAdsml().ToString()); var request = new BatchRequest(aqlBuilder.Build()); //Assert Assert.DoesNotThrow(() => aqlBuilder.Build()); Assert.DoesNotThrow(() => request.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void Can_Generate_Api_Xml_With_RequestFilter() { //Arrange string expected = new XElement("LinkRequest", new XAttribute("name", "foo"), new XAttribute("targetLocation", "bar"), new XAttribute("returnNoAttributes", "true")).ToString(); var request = new LinkRequest("foo", "bar") { RequestFilters = new List <ILinkRequestFilter> { Filter.ReturnNoAttributes() } }; //Act var actual = request.ToAdsml(); var batchRequest = new BatchRequest(request); Console.WriteLine(actual.ToString()); //Assert Assert.That(actual.ToString(), Is.EqualTo(expected)); Assert.DoesNotThrow(() => batchRequest.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void Can_Generate_Api_Xml_With_CopyControl() { //Arrange string expected = new XElement("LinkRequest", new XAttribute("name", "foo"), new XAttribute("targetLocation", "bar"), new XElement("CopyControls", new XAttribute("copyLocalAttributes", "true"))).ToString(); var request = new LinkRequest("foo", "bar") { CopyControl = new CopyControl(new List <ICopyControlFilter> { Filter.CopyLocalAttributesFromSource() }) }; //Act var actual = request.ToAdsml(); var batchRequest = new BatchRequest(request); Console.WriteLine(actual.ToString()); //Assert Assert.That(actual.ToString(), Is.EqualTo(expected)); Assert.DoesNotThrow(() => batchRequest.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void Can_Generate_Api_Xml() { //Arrange string expected = new XElement("ModifyRequest", new XAttribute("name", "/foo/bar"), new XElement("ModificationItem", new XAttribute("operation", "addValue"), new XElement("AttributeDetails", new XElement("StructureAttribute", new XAttribute("id", "31"), new XElement("StructureValue", new XAttribute("langId", "10"), new XAttribute("scope", "global"), new XCData("foo")))))).ToString(); //Act var modReq = new ModifyRequest("/foo/bar", new List <ModificationItem> { ModificationItem.New( Modifications.AddValue, StructureAttribute.New(31, new StructureValue(10, "foo")) ) }); var actual = modReq.ToAdsml(); var request = new BatchRequest(modReq); Console.WriteLine(actual.ToString()); //Assert Assert.That(actual.ToString(), Is.EqualTo(expected)); Assert.DoesNotThrow(() => request.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void CanBuildCreateRequest() { //Arrange var builder = new CreateRequestBuilder(); //Act builder .NewContextName("/foo/bar") .ObjectTypeToCreate("baz") .ReturnNoAttributes() .FailOnError() .UpdateIfExists() .AttributesToSet( StructureAttribute.New(215, new StructureValue(10, "169010")) ) .ConfigureLookupControls() .ReturnAttributes(AttributeToReturn.WithName("Artikelnummer")) .ReturnLanguages(LanguageToReturn.WithLanguageId(10)) .ConfigureReferenceHandling( ReferenceOptions.ReturnValuesOnly() ); var request = new BatchRequest(builder.Build()); //Assert Assert.That(builder.Build(), Is.Not.Null); Assert.DoesNotThrow(() => request.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void CanGenerateApiXmlWithLookupControl() { //Arrange var expected = new XElement("CreateRequest", new XAttribute("name", "fooPath"), new XAttribute("type", "fooObjectTypeName"), new XElement("LookupControls", new XElement("AttributesToReturn", new XElement("Attribute", new XAttribute("name", "fooAttributeName")))), new XElement("AttributesToSet", new XElement("StructureAttribute", new XAttribute("id", "215"), new XAttribute("name", "fooAttributeName"), new XElement("StructureValue", new XAttribute("langId", "10"), new XAttribute("scope", "global"), new XCData("fooValue"))))); var value = new StructureValue { LanguageId = 10, Value = "fooValue" }; var attribute = new StructureAttribute { DefinitionId = 215, Name = "fooAttributeName", Values = new List <StructureValue> { value } }; var lcb = new LookupControlBuilder(); lcb.ReturnAttributes(AttributeToReturn.WithName("fooAttributeName")); var lc = lcb.Build(); var create = new CreateRequest("fooObjectTypeName", "fooPath", null, attribute) { LookupControl = lc }; //Act var actual = create.ToAdsml(); var request = new BatchRequest(create); Console.WriteLine(actual); //Assert Assert.That(actual, Is.Not.Null); Assert.That(actual.ToString(), Is.EqualTo(expected.ToString())); Assert.DoesNotThrow(() => request.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void CanGenerateApiXmlWithRequestFilters() { //Arrange var expected = new XElement("CreateRequest", new XAttribute("name", "fooPath"), new XAttribute("type", "fooObjectTypeName"), new XAttribute("returnNoAttributes", "true"), new XAttribute("failOnError", "true"), new XAttribute("updateIfExists", "true"), new XElement("AttributesToSet", new XElement("StructureAttribute", new XAttribute("id", "215"), new XAttribute("name", "fooAttributeName"), new XElement("StructureValue", new XAttribute("langId", "10"), new XAttribute("scope", "global"), new XCData("fooValue"))))); var value = new StructureValue { LanguageId = 10, Value = "fooValue" }; var attribute = new StructureAttribute { DefinitionId = 215, Name = "fooAttributeName", Values = new List <StructureValue> { value } }; var create = new CreateRequest("fooObjectTypeName", "fooPath", null, attribute) { RequestFilters = new List <ICreateRequestFilter> { Filter.ReturnNoAttributes(), Filter.FailOnError(), Filter.UpdateIfExists() } }; //Act var actual = create.ToAdsml(); var request = new BatchRequest(create); //Assert Assert.That(actual, Is.Not.Null); Assert.That(actual.ToString(), Is.EqualTo(expected.ToString())); Assert.DoesNotThrow(() => request.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void Can_Generate_Api_Xml_With_LookupControls() { //Arrange string expected = new XElement("ModifyRequest", new XAttribute("name", "/foo/bar"), new XElement("ModificationItem", new XAttribute("operation", "addValue"), new XElement("AttributeDetails", new XElement("StructureAttribute", new XAttribute("id", "31"), new XElement("StructureValue", new XAttribute("langId", "10"), new XAttribute("scope", "global"), new XCData("foo"))))), new XElement("LookupControls", new XElement("AttributesToReturn", new XElement("Attribute", new XAttribute("name", "Artikelnummer"))), new XElement("LanguagesToReturn", new XElement("Language", new XAttribute("id", "10"))))).ToString(); var lookupBuilder = new LookupControlBuilder(); lookupBuilder.ReturnAttributes(AttributeToReturn.WithName("Artikelnummer")) .ReturnLanguages(LanguageToReturn.WithLanguageId(10)); //Act var modReq = new ModifyRequest("/foo/bar", new List <ModificationItem> { ModificationItem.New( Modifications.AddValue, StructureAttribute.New(31, new StructureValue(10, "foo")) ) }) { LookupControl = lookupBuilder.Build() }; var actual = modReq.ToAdsml(); var request = new BatchRequest(modReq); Console.WriteLine(actual.ToString()); //Assert Assert.That(actual.ToString(), Is.EqualTo(expected)); Assert.DoesNotThrow(() => request.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void Can_Build_Api_Xml() { //Arrange string expected = new XElement("DeleteRequest", new XAttribute("name", "foo")).ToString(); //Act var deleteRequest = new DeleteRequest("foo"); var batchRequest = new BatchRequest(deleteRequest); var actual = deleteRequest.ToAdsml(); Console.WriteLine(actual); //Assert Assert.That(actual.ToString(), Is.EqualTo(expected)); Assert.DoesNotThrow(() => batchRequest.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void CanGenerateBasicApiXml() { //Arrange string expected = new XElement("LookupRequest", new XAttribute("name", "/foo/bar")).ToString(); //Act var req = new LookupRequest("/foo/bar"); var actual = req.ToAdsml(); var batchRequest = new BatchRequest(req); Console.WriteLine(actual); //Assert Assert.That(actual.ToString(), Is.EqualTo(expected)); Assert.DoesNotThrow(() => batchRequest.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
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_Build_AqlSearchRequest() { //Arrange var builder = new AqlQueryBuilder(); //Act builder.BasePath("/foo/bar") .ObjectTypeToFind("baz") .QueryString("foo"); var aql = builder.Build(); var request = new BatchRequest(aql); //Assert Assert.That(aql, Is.Not.Null); Assert.That(aql, Is.InstanceOf <AqlSearchRequest>()); Assert.DoesNotThrow(() => request.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
public void Can_Generate_Api_Xml() { //Arrange string expected = new XElement("MoveRequest", new XAttribute("name", "foo"), new XAttribute("targetLocation", "bar")).ToString(); var request = new MoveRequest("foo", "bar"); //Act var actual = request.ToAdsml(); var batchRequest = new BatchRequest(request); Console.WriteLine(actual.ToString()); //Assert Assert.That(actual.ToString(), Is.EqualTo(expected)); Assert.DoesNotThrow(() => batchRequest.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }
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_Generate_Api_Xml_With_CopyControl_Containing_LookupControl() { //Arrange string expected = new XElement("MoveRequest", new XAttribute("name", "foo"), new XAttribute("targetLocation", "bar"), new XElement("CopyControls", new XAttribute("copyLocalAttributes", "true"), new XElement("LookupControls", new XElement("AttributesToReturn", new XElement("Attribute", new XAttribute("name", "Artikelnummer")))))).ToString(); var lookupBuilder = new LookupControlBuilder(); lookupBuilder.ReturnAttributes(AttributeToReturn.WithName("Artikelnummer")); var request = new MoveRequest("foo", "bar") { CopyControl = new CopyControl(new List <ICopyControlFilter> { Filter.CopyLocalAttributesFromSource() }, lookupBuilder.Build()) }; //Act var actual = request.ToAdsml(); var batchRequest = new BatchRequest(request); Console.WriteLine(actual.ToString()); //Assert Assert.That(actual.ToString(), Is.EqualTo(expected)); Assert.DoesNotThrow(() => batchRequest.ToAdsml().ValidateAdsmlDocument("adsml.xsd")); }