diff --git a/src/Scim/SimpleIdServer.Scim.Parser/Expressions/SCIMAttributeExpression.cs b/src/Scim/SimpleIdServer.Scim.Parser/Expressions/SCIMAttributeExpression.cs index 22d20e5e0..a459022f6 100644 --- a/src/Scim/SimpleIdServer.Scim.Parser/Expressions/SCIMAttributeExpression.cs +++ b/src/Scim/SimpleIdServer.Scim.Parser/Expressions/SCIMAttributeExpression.cs @@ -31,6 +31,7 @@ protected virtual ICollection InternalBuildEmptyAtt var result = new SCIMRepresentationAttribute { SchemaAttribute = SchemaAttribute, + SchemaAttributeId = SchemaAttribute?.Id, FullPath = SchemaAttribute.FullPath, Namespace = SchemaAttribute.SchemaId, Id = Guid.NewGuid().ToString(), diff --git a/src/Scim/SimpleIdServer.Scim.Persistence.EF/EFSCIMRepresentationCommandRepository.cs b/src/Scim/SimpleIdServer.Scim.Persistence.EF/EFSCIMRepresentationCommandRepository.cs index 7964e7b03..e34225b96 100644 --- a/src/Scim/SimpleIdServer.Scim.Persistence.EF/EFSCIMRepresentationCommandRepository.cs +++ b/src/Scim/SimpleIdServer.Scim.Persistence.EF/EFSCIMRepresentationCommandRepository.cs @@ -206,7 +206,11 @@ public async Task BulkInsert(IEnumerable scimRepres { scimRepresentationAttributes = scimRepresentationAttributes.Where(r => !string.IsNullOrWhiteSpace(r.RepresentationId)).ToList(); foreach (var attr in scimRepresentationAttributes) + { attr.SchemaAttributeId = attr.SchemaAttribute?.Id; + attr.SchemaAttribute = null; + } + await _scimDbContext.AddRangeAsync(scimRepresentationAttributes); } diff --git a/src/Scim/SimpleIdServer.Scim.Startup/Program.cs b/src/Scim/SimpleIdServer.Scim.Startup/Program.cs index ddd82df88..3d5df57ab 100644 --- a/src/Scim/SimpleIdServer.Scim.Startup/Program.cs +++ b/src/Scim/SimpleIdServer.Scim.Startup/Program.cs @@ -186,7 +186,12 @@ void ConfigureEFStorage(StorageConfiguration conf) IMessageDataRepository ConfigureMassTransitConfiguration(IServiceCollection services, MassTransitStorageConfiguration conf) { - if (!conf.IsEnabled) return null; + if (!conf.IsEnabled) + { + services.AddSingleton(new InMemoryMessageDataRepository()); + return null; + } + IMessageDataRepository repository = null; switch (conf.Type) { diff --git a/src/Scim/SimpleIdServer.Scim/Helpers/RepresentationHelper.cs b/src/Scim/SimpleIdServer.Scim/Helpers/RepresentationHelper.cs index 7cce570d3..1b0ed1343 100644 --- a/src/Scim/SimpleIdServer.Scim/Helpers/RepresentationHelper.cs +++ b/src/Scim/SimpleIdServer.Scim/Helpers/RepresentationHelper.cs @@ -17,6 +17,7 @@ using System.Reflection; using System.Threading; using System.Threading.Tasks; +using System.Xml.Linq; namespace SimpleIdServer.Scim.Helpers { @@ -105,7 +106,16 @@ public async Task Apply(SCIMRepresentation repres if (scimFilter != null) { filteredAttributes = await _scimRepresentationCommandRepository.FindAttributes(representation.Id, scimExpr, cancellationToken); - hierarchicalFilteredAttributes = SCIMRepresentation.BuildHierarchicalAttributes(filteredAttributes); + if(hierarchicalNewAttributes != null && !filteredAttributes.Any()) + { + hierarchicalFilteredAttributes = scimFilter.EvaluateAttributes(SCIMRepresentation.BuildHierarchicalAttributes(result.Patches.Select(p => p.Attr)).AsQueryable(), false).ToList(); + filteredAttributes = SCIMRepresentation.BuildFlatAttributes(hierarchicalNewAttributes); + } + else + { + hierarchicalFilteredAttributes = SCIMRepresentation.BuildHierarchicalAttributes(filteredAttributes); + } + var complexAttr = scimFilter as SCIMComplexAttributeExpression; if (complexAttr != null && !hierarchicalFilteredAttributes.Any() && complexAttr.GroupingFilter != null && patch.Operation == SCIMPatchOperations.REPLACE) throw new SCIMNoTargetException(Global.PatchMissingAttribute); } diff --git a/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/Users.feature b/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/Users.feature index cb51e5d35..6a0081424 100644 --- a/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/Users.feature +++ b/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/Users.feature @@ -1,6 +1,31 @@ Feature: Users Check the /Users endpoint +Scenario: Pass multiple add operation for multiple fields to emails and check there is no duplicate + When execute HTTP POST JSON request 'http://localhost/Users' + | Key | Value | + | schemas | [ "urn:ietf:params:scim:schemas:core:2.0:User", "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User" ] | + | userName | bjen | + | externalId | externalid | + | name | { "formatted" : "formatted", "familyName": "familyName", "givenName": "givenName" } | + | urn:ietf:params:scim:schemas:extension:enterprise:2.0:User | { "employeeNumber" : "number" } | + | eidCertificate | aGVsbG8= | + | immutable | immutable | + + And extract JSON from body + And extract 'id' from JSON body + And execute HTTP PATCH JSON request 'http://localhost/Users/$id$' + | Key | Value | + | schemas | [ "urn:ietf:params:scim:api:messages:2.0:PatchOp" ] | + | Operations | [ { "op": "add", "path": "emails[type eq work].display", "value" : "display" }, { "op": "add", "path": "emails[type eq work].value", "value" : "value" } ] | + + And execute HTTP GET request 'http://localhost/Users/$id$' + And extract JSON from body + + Then HTTP status code equals to '200' + Then JSON 'emails[0].display'='display' + Then JSON 'emails[0].value'='value' + Scenario: Check immutable property can be updated twice with the same value When execute HTTP POST JSON request 'http://localhost/Users' | Key | Value | diff --git a/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/Users.feature.cs b/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/Users.feature.cs index e2797f706..432e38e1f 100644 --- a/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/Users.feature.cs +++ b/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/Users.feature.cs @@ -80,14 +80,17 @@ void System.IDisposable.Dispose() this.TestTearDown(); } - [Xunit.SkippableFactAttribute(DisplayName="Check immutable property can be updated twice with the same value")] + [Xunit.SkippableFactAttribute(DisplayName="Pass multiple add operation for multiple fields to emails and check there is no d" + + "uplicate")] [Xunit.TraitAttribute("FeatureTitle", "Users")] - [Xunit.TraitAttribute("Description", "Check immutable property can be updated twice with the same value")] - public void CheckImmutablePropertyCanBeUpdatedTwiceWithTheSameValue() + [Xunit.TraitAttribute("Description", "Pass multiple add operation for multiple fields to emails and check there is no d" + + "uplicate")] + public void PassMultipleAddOperationForMultipleFieldsToEmailsAndCheckThereIsNoDuplicate() { string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); - TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check immutable property can be updated twice with the same value", null, tagsOfScenario, argumentsOfScenario, featureTags); + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Pass multiple add operation for multiple fields to emails and check there is no d" + + "uplicate", null, tagsOfScenario, argumentsOfScenario, featureTags); #line 4 this.ScenarioInitialize(scenarioInfo); #line hidden @@ -138,43 +141,41 @@ public void CheckImmutablePropertyCanBeUpdatedTwiceWithTheSameValue() "Value"}); table118.AddRow(new string[] { "schemas", - "[ \"urn:ietf:params:scim:schemas:core:2.0:User\" ]"}); - table118.AddRow(new string[] { - "userName", - "bjen"}); + "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); table118.AddRow(new string[] { - "immutable", - "immutable"}); + "Operations", + "[ { \"op\": \"add\", \"path\": \"emails[type eq work].display\", \"value\" : \"display\" }, {" + + " \"op\": \"add\", \"path\": \"emails[type eq work].value\", \"value\" : \"value\" } ]"}); #line 17 - testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table118, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table118, "And "); #line hidden -#line 23 +#line 22 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 24 +#line 23 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 26 +#line 25 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden +#line 26 + testRunner.Then("JSON \'emails[0].display\'=\'display\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line hidden #line 27 - testRunner.Then("JSON \'immutable\'=\'immutable\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); + testRunner.Then("JSON \'emails[0].value\'=\'value\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } this.ScenarioCleanup(); } - [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patching name.givenName with the sam" + - "e value (HTTP PATCH replace)")] + [Xunit.SkippableFactAttribute(DisplayName="Check immutable property can be updated twice with the same value")] [Xunit.TraitAttribute("FeatureTitle", "Users")] - [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patching name.givenName with the sam" + - "e value (HTTP PATCH replace)")] - public void CheckNoContentHTTP204IsReturnedWhenPatchingName_GivenNameWithTheSameValueHTTPPATCHReplace() + [Xunit.TraitAttribute("Description", "Check immutable property can be updated twice with the same value")] + public void CheckImmutablePropertyCanBeUpdatedTwiceWithTheSameValue() { string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); - TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patching name.givenName with the sam" + - "e value (HTTP PATCH replace)", null, tagsOfScenario, argumentsOfScenario, featureTags); + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check immutable property can be updated twice with the same value", null, tagsOfScenario, argumentsOfScenario, featureTags); #line 29 this.ScenarioInitialize(scenarioInfo); #line hidden @@ -203,15 +204,21 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchingName_GivenNameWithTheSame "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); table119.AddRow(new string[] { - "employeeNumber", - "\"number\""}); + "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", + "{ \"employeeNumber\" : \"number\" }"}); + table119.AddRow(new string[] { + "eidCertificate", + "aGVsbG8="}); + table119.AddRow(new string[] { + "immutable", + "immutable"}); #line 30 testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table119, "When "); #line hidden -#line 38 +#line 40 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 39 +#line 41 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table120 = new TechTalk.SpecFlow.Table(new string[] { @@ -219,35 +226,44 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchingName_GivenNameWithTheSame "Value"}); table120.AddRow(new string[] { "schemas", - "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); + "[ \"urn:ietf:params:scim:schemas:core:2.0:User\" ]"}); table120.AddRow(new string[] { - "Operations", - "[ { \"op\": \"replace\", \"path\": \"name.givenName\", \"value\" : \"givenName\" } ]"}); -#line 41 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table120, "And "); + "userName", + "bjen"}); + table120.AddRow(new string[] { + "immutable", + "immutable"}); +#line 42 + testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table120, "And "); +#line hidden +#line 48 + testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 46 +#line 49 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 48 - testRunner.Then("HTTP status code equals to \'204\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 51 + testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line hidden +#line 52 + testRunner.Then("JSON \'immutable\'=\'immutable\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } this.ScenarioCleanup(); } - [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patch userName with the same value (" + - "HTTP PATCH replace)")] + [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patching name.givenName with the sam" + + "e value (HTTP PATCH replace)")] [Xunit.TraitAttribute("FeatureTitle", "Users")] - [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patch userName with the same value (" + - "HTTP PATCH replace)")] - public void CheckNoContentHTTP204IsReturnedWhenPatchUserNameWithTheSameValueHTTPPATCHReplace() + [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patching name.givenName with the sam" + + "e value (HTTP PATCH replace)")] + public void CheckNoContentHTTP204IsReturnedWhenPatchingName_GivenNameWithTheSameValueHTTPPATCHReplace() { string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); - TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patch userName with the same value (" + - "HTTP PATCH replace)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 50 + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patching name.givenName with the sam" + + "e value (HTTP PATCH replace)", null, tagsOfScenario, argumentsOfScenario, featureTags); +#line 54 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -277,13 +293,13 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchUserNameWithTheSameValueHTTP table121.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 51 +#line 55 testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table121, "When "); #line hidden -#line 59 +#line 63 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 60 +#line 64 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table122 = new TechTalk.SpecFlow.Table(new string[] { @@ -294,32 +310,32 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchUserNameWithTheSameValueHTTP "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); table122.AddRow(new string[] { "Operations", - "[ { \"op\": \"replace\", \"path\": \"userName\", \"value\" : \"bjen\" } ]"}); -#line 62 + "[ { \"op\": \"replace\", \"path\": \"name.givenName\", \"value\" : \"givenName\" } ]"}); +#line 66 testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table122, "And "); #line hidden -#line 67 +#line 71 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 69 +#line 73 testRunner.Then("HTTP status code equals to \'204\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } this.ScenarioCleanup(); } - [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + - " PATCH replace)")] + [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patch userName with the same value (" + + "HTTP PATCH replace)")] [Xunit.TraitAttribute("FeatureTitle", "Users")] - [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + - " PATCH replace)")] - public void CheckNoContentHTTP204IsReturnedWhenPatchNameWithTheSameValueHTTPPATCHReplace() + [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patch userName with the same value (" + + "HTTP PATCH replace)")] + public void CheckNoContentHTTP204IsReturnedWhenPatchUserNameWithTheSameValueHTTPPATCHReplace() { string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); - TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + - " PATCH replace)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 71 + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patch userName with the same value (" + + "HTTP PATCH replace)", null, tagsOfScenario, argumentsOfScenario, featureTags); +#line 75 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -349,13 +365,13 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchNameWithTheSameValueHTTPPATC table123.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 72 +#line 76 testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table123, "When "); #line hidden -#line 80 +#line 84 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 81 +#line 85 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table124 = new TechTalk.SpecFlow.Table(new string[] { @@ -366,33 +382,32 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchNameWithTheSameValueHTTPPATC "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); table124.AddRow(new string[] { "Operations", - "[ { \"op\": \"replace\", \"path\": \"name\", \"value\" : { \"formatted\" : \"formatted\", \"fami" + - "lyName\": \"familyName\", \"givenName\": \"givenName\" } } ]"}); -#line 83 + "[ { \"op\": \"replace\", \"path\": \"userName\", \"value\" : \"bjen\" } ]"}); +#line 87 testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table124, "And "); #line hidden -#line 88 +#line 92 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 90 +#line 94 testRunner.Then("HTTP status code equals to \'204\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } this.ScenarioCleanup(); } - [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patching name.givenName with the sam" + - "e value (HTTP PATCH add)")] + [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + + " PATCH replace)")] [Xunit.TraitAttribute("FeatureTitle", "Users")] - [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patching name.givenName with the sam" + - "e value (HTTP PATCH add)")] - public void CheckNoContentHTTP204IsReturnedWhenPatchingName_GivenNameWithTheSameValueHTTPPATCHAdd() + [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + + " PATCH replace)")] + public void CheckNoContentHTTP204IsReturnedWhenPatchNameWithTheSameValueHTTPPATCHReplace() { string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); - TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patching name.givenName with the sam" + - "e value (HTTP PATCH add)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 92 + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + + " PATCH replace)", null, tagsOfScenario, argumentsOfScenario, featureTags); +#line 96 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -422,13 +437,13 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchingName_GivenNameWithTheSame table125.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 93 +#line 97 testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table125, "When "); #line hidden -#line 101 +#line 105 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 102 +#line 106 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table126 = new TechTalk.SpecFlow.Table(new string[] { @@ -439,32 +454,33 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchingName_GivenNameWithTheSame "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); table126.AddRow(new string[] { "Operations", - "[ { \"op\": \"add\", \"path\": \"name.givenName\", \"value\" : \"givenName\" } ]"}); -#line 104 + "[ { \"op\": \"replace\", \"path\": \"name\", \"value\" : { \"formatted\" : \"formatted\", \"fami" + + "lyName\": \"familyName\", \"givenName\": \"givenName\" } } ]"}); +#line 108 testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table126, "And "); #line hidden -#line 109 +#line 113 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 111 +#line 115 testRunner.Then("HTTP status code equals to \'204\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } this.ScenarioCleanup(); } - [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patch userName with the same value (" + - "HTTP PATCH add)")] + [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patching name.givenName with the sam" + + "e value (HTTP PATCH add)")] [Xunit.TraitAttribute("FeatureTitle", "Users")] - [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patch userName with the same value (" + - "HTTP PATCH add)")] - public void CheckNoContentHTTP204IsReturnedWhenPatchUserNameWithTheSameValueHTTPPATCHAdd() + [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patching name.givenName with the sam" + + "e value (HTTP PATCH add)")] + public void CheckNoContentHTTP204IsReturnedWhenPatchingName_GivenNameWithTheSameValueHTTPPATCHAdd() { string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); - TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patch userName with the same value (" + - "HTTP PATCH add)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 113 + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patching name.givenName with the sam" + + "e value (HTTP PATCH add)", null, tagsOfScenario, argumentsOfScenario, featureTags); +#line 117 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -494,13 +510,13 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchUserNameWithTheSameValueHTTP table127.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 114 +#line 118 testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table127, "When "); #line hidden -#line 122 +#line 126 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 123 +#line 127 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table128 = new TechTalk.SpecFlow.Table(new string[] { @@ -511,32 +527,32 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchUserNameWithTheSameValueHTTP "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); table128.AddRow(new string[] { "Operations", - "[ { \"op\": \"add\", \"path\": \"userName\", \"value\" : \"bjen\" } ]"}); -#line 125 + "[ { \"op\": \"add\", \"path\": \"name.givenName\", \"value\" : \"givenName\" } ]"}); +#line 129 testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table128, "And "); #line hidden -#line 130 +#line 134 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 132 +#line 136 testRunner.Then("HTTP status code equals to \'204\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } this.ScenarioCleanup(); } - [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + - " PATCH add)")] + [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patch userName with the same value (" + + "HTTP PATCH add)")] [Xunit.TraitAttribute("FeatureTitle", "Users")] - [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + - " PATCH add)")] - public void CheckNoContentHTTP204IsReturnedWhenPatchNameWithTheSameValueHTTPPATCHAdd() + [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patch userName with the same value (" + + "HTTP PATCH add)")] + public void CheckNoContentHTTP204IsReturnedWhenPatchUserNameWithTheSameValueHTTPPATCHAdd() { string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); - TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + - " PATCH add)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 134 + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patch userName with the same value (" + + "HTTP PATCH add)", null, tagsOfScenario, argumentsOfScenario, featureTags); +#line 138 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -566,13 +582,13 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchNameWithTheSameValueHTTPPATC table129.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 135 +#line 139 testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table129, "When "); #line hidden -#line 143 +#line 147 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 144 +#line 148 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table130 = new TechTalk.SpecFlow.Table(new string[] { @@ -583,30 +599,32 @@ public void CheckNoContentHTTP204IsReturnedWhenPatchNameWithTheSameValueHTTPPATC "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); table130.AddRow(new string[] { "Operations", - "[ { \"op\": \"add\", \"path\": \"name\", \"value\" : { \"formatted\" : \"formatted\", \"familyNa" + - "me\": \"familyName\", \"givenName\": \"givenName\" } } ]"}); -#line 146 + "[ { \"op\": \"add\", \"path\": \"userName\", \"value\" : \"bjen\" } ]"}); +#line 150 testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table130, "And "); #line hidden -#line 151 +#line 155 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 153 +#line 157 testRunner.Then("HTTP status code equals to \'204\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } this.ScenarioCleanup(); } - [Xunit.SkippableFactAttribute(DisplayName="Check complex immutable attribute can be updated with the same value")] + [Xunit.SkippableFactAttribute(DisplayName="Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + + " PATCH add)")] [Xunit.TraitAttribute("FeatureTitle", "Users")] - [Xunit.TraitAttribute("Description", "Check complex immutable attribute can be updated with the same value")] - public void CheckComplexImmutableAttributeCanBeUpdatedWithTheSameValue() + [Xunit.TraitAttribute("Description", "Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + + " PATCH add)")] + public void CheckNoContentHTTP204IsReturnedWhenPatchNameWithTheSameValueHTTPPATCHAdd() { string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); - TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check complex immutable attribute can be updated with the same value", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 155 + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no content (HTTP 204) is returned when patch name with the same value (HTTP" + + " PATCH add)", null, tagsOfScenario, argumentsOfScenario, featureTags); +#line 159 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -626,23 +644,23 @@ public void CheckComplexImmutableAttributeCanBeUpdatedWithTheSameValue() table131.AddRow(new string[] { "userName", "bjen"}); + table131.AddRow(new string[] { + "externalId", + "externalid"}); table131.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); table131.AddRow(new string[] { "employeeNumber", - "number"}); - table131.AddRow(new string[] { - "complexImmutable", - "[ { \"value\": \"immutable\", \"type\": \"type\" } ]"}); -#line 156 + "\"number\""}); +#line 160 testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table131, "When "); #line hidden -#line 164 +#line 168 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 165 +#line 169 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table132 = new TechTalk.SpecFlow.Table(new string[] { @@ -650,39 +668,33 @@ public void CheckComplexImmutableAttributeCanBeUpdatedWithTheSameValue() "Value"}); table132.AddRow(new string[] { "schemas", - "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + - "ension:enterprise:2.0:User\" ]"}); - table132.AddRow(new string[] { - "userName", - "bjen"}); - table132.AddRow(new string[] { - "employeeNumber", - "number"}); + "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); table132.AddRow(new string[] { - "complexImmutable", - "[ { \"value\": \"immutable\", \"type\": \"type\" } ]"}); -#line 166 - testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table132, "And "); + "Operations", + "[ { \"op\": \"add\", \"path\": \"name\", \"value\" : { \"formatted\" : \"formatted\", \"familyNa" + + "me\": \"familyName\", \"givenName\": \"givenName\" } } ]"}); +#line 171 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table132, "And "); #line hidden -#line 173 +#line 176 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 175 +#line 178 testRunner.Then("HTTP status code equals to \'204\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } this.ScenarioCleanup(); } - [Xunit.SkippableFactAttribute(DisplayName="Check record can be added into an array of immutable records")] + [Xunit.SkippableFactAttribute(DisplayName="Check complex immutable attribute can be updated with the same value")] [Xunit.TraitAttribute("FeatureTitle", "Users")] - [Xunit.TraitAttribute("Description", "Check record can be added into an array of immutable records")] - public void CheckRecordCanBeAddedIntoAnArrayOfImmutableRecords() + [Xunit.TraitAttribute("Description", "Check complex immutable attribute can be updated with the same value")] + public void CheckComplexImmutableAttributeCanBeUpdatedWithTheSameValue() { string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); - TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check record can be added into an array of immutable records", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 177 + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check complex immutable attribute can be updated with the same value", null, tagsOfScenario, argumentsOfScenario, featureTags); +#line 180 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -702,29 +714,23 @@ public void CheckRecordCanBeAddedIntoAnArrayOfImmutableRecords() table133.AddRow(new string[] { "userName", "bjen"}); - table133.AddRow(new string[] { - "externalId", - "externalid"}); table133.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); table133.AddRow(new string[] { - "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", - "{ \"employeeNumber\" : \"number\" }"}); - table133.AddRow(new string[] { - "eidCertificate", - "aGVsbG8="}); + "employeeNumber", + "number"}); table133.AddRow(new string[] { - "subImmutableComplex", - "[ { \"value\": \"value\" } ]"}); -#line 178 + "complexImmutable", + "[ { \"value\": \"immutable\", \"type\": \"type\" } ]"}); +#line 181 testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table133, "When "); #line hidden -#line 188 +#line 189 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 189 +#line 190 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table134 = new TechTalk.SpecFlow.Table(new string[] { @@ -732,44 +738,39 @@ public void CheckRecordCanBeAddedIntoAnArrayOfImmutableRecords() "Value"}); table134.AddRow(new string[] { "schemas", - "[ \"urn:ietf:params:scim:schemas:core:2.0:User\" ]"}); + "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + + "ension:enterprise:2.0:User\" ]"}); table134.AddRow(new string[] { "userName", "bjen"}); table134.AddRow(new string[] { - "subImmutableComplex", - "[ { \"value\": \"value\" }, { \"value\": \"secondValue\" } ]"}); -#line 190 + "employeeNumber", + "number"}); + table134.AddRow(new string[] { + "complexImmutable", + "[ { \"value\": \"immutable\", \"type\": \"type\" } ]"}); +#line 191 testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table134, "And "); #line hidden -#line 196 - testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line hidden -#line 197 +#line 198 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 199 - testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line hidden #line 200 - testRunner.Then("JSON \'subImmutableComplex[0].value\'=\'value\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line hidden -#line 201 - testRunner.Then("JSON \'subImmutableComplex[1].value\'=\'secondValue\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); + testRunner.Then("HTTP status code equals to \'204\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } this.ScenarioCleanup(); } - [Xunit.SkippableFactAttribute(DisplayName="Check complex immutable attribute can be updated if the attribute does not exist")] + [Xunit.SkippableFactAttribute(DisplayName="Check record can be added into an array of immutable records")] [Xunit.TraitAttribute("FeatureTitle", "Users")] - [Xunit.TraitAttribute("Description", "Check complex immutable attribute can be updated if the attribute does not exist")] - public void CheckComplexImmutableAttributeCanBeUpdatedIfTheAttributeDoesNotExist() + [Xunit.TraitAttribute("Description", "Check record can be added into an array of immutable records")] + public void CheckRecordCanBeAddedIntoAnArrayOfImmutableRecords() { string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); - TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check complex immutable attribute can be updated if the attribute does not exist", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 203 + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check record can be added into an array of immutable records", null, tagsOfScenario, argumentsOfScenario, featureTags); +#line 202 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -789,20 +790,29 @@ public void CheckComplexImmutableAttributeCanBeUpdatedIfTheAttributeDoesNotExist table135.AddRow(new string[] { "userName", "bjen"}); + table135.AddRow(new string[] { + "externalId", + "externalid"}); table135.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); table135.AddRow(new string[] { - "employeeNumber", - "number"}); -#line 204 + "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", + "{ \"employeeNumber\" : \"number\" }"}); + table135.AddRow(new string[] { + "eidCertificate", + "aGVsbG8="}); + table135.AddRow(new string[] { + "subImmutableComplex", + "[ { \"value\": \"value\" } ]"}); +#line 203 testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table135, "When "); #line hidden -#line 211 +#line 213 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 212 +#line 214 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table136 = new TechTalk.SpecFlow.Table(new string[] { @@ -810,27 +820,105 @@ public void CheckComplexImmutableAttributeCanBeUpdatedIfTheAttributeDoesNotExist "Value"}); table136.AddRow(new string[] { "schemas", - "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + - "ension:enterprise:2.0:User\" ]"}); + "[ \"urn:ietf:params:scim:schemas:core:2.0:User\" ]"}); table136.AddRow(new string[] { "userName", "bjen"}); table136.AddRow(new string[] { + "subImmutableComplex", + "[ { \"value\": \"value\" }, { \"value\": \"secondValue\" } ]"}); +#line 215 + testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table136, "And "); +#line hidden +#line 221 + testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line hidden +#line 222 + testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line hidden +#line 224 + testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line hidden +#line 225 + testRunner.Then("JSON \'subImmutableComplex[0].value\'=\'value\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line hidden +#line 226 + testRunner.Then("JSON \'subImmutableComplex[1].value\'=\'secondValue\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line hidden + } + this.ScenarioCleanup(); + } + + [Xunit.SkippableFactAttribute(DisplayName="Check complex immutable attribute can be updated if the attribute does not exist")] + [Xunit.TraitAttribute("FeatureTitle", "Users")] + [Xunit.TraitAttribute("Description", "Check complex immutable attribute can be updated if the attribute does not exist")] + public void CheckComplexImmutableAttributeCanBeUpdatedIfTheAttributeDoesNotExist() + { + string[] tagsOfScenario = ((string[])(null)); + System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); + TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check complex immutable attribute can be updated if the attribute does not exist", null, tagsOfScenario, argumentsOfScenario, featureTags); +#line 228 +this.ScenarioInitialize(scenarioInfo); +#line hidden + if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) + { + testRunner.SkipScenario(); + } + else + { + this.ScenarioStart(); + TechTalk.SpecFlow.Table table137 = new TechTalk.SpecFlow.Table(new string[] { + "Key", + "Value"}); + table137.AddRow(new string[] { + "schemas", + "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + + "ension:enterprise:2.0:User\" ]"}); + table137.AddRow(new string[] { + "userName", + "bjen"}); + table137.AddRow(new string[] { + "name", + "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + + " }"}); + table137.AddRow(new string[] { "employeeNumber", "number"}); - table136.AddRow(new string[] { +#line 229 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table137, "When "); +#line hidden +#line 236 + testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line hidden +#line 237 + testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line hidden + TechTalk.SpecFlow.Table table138 = new TechTalk.SpecFlow.Table(new string[] { + "Key", + "Value"}); + table138.AddRow(new string[] { + "schemas", + "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + + "ension:enterprise:2.0:User\" ]"}); + table138.AddRow(new string[] { + "userName", + "bjen"}); + table138.AddRow(new string[] { + "employeeNumber", + "number"}); + table138.AddRow(new string[] { "complexImmutable", "[ { \"value\": \"immutable\" } ]"}); -#line 213 - testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table136, "And "); +#line 238 + testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table138, "And "); #line hidden -#line 220 +#line 245 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 222 +#line 247 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 223 +#line 248 testRunner.Then("JSON \'complexImmutable[0].value\'=\'immutable\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -845,7 +933,7 @@ public void CheckEntitlementCanBeAdded() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check entitlement can be added", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 225 +#line 250 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -855,98 +943,98 @@ public void CheckEntitlementCanBeAdded() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table137 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table139 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table137.AddRow(new string[] { + table139.AddRow(new string[] { "schemas", "[ \"urn:customuser\" ]"}); - table137.AddRow(new string[] { + table139.AddRow(new string[] { "userName", "userName"}); -#line 226 - testRunner.When("execute HTTP POST JSON request \'http://localhost/CustomUsers\'", ((string)(null)), table137, "When "); +#line 251 + testRunner.When("execute HTTP POST JSON request \'http://localhost/CustomUsers\'", ((string)(null)), table139, "When "); #line hidden -#line 231 +#line 256 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 232 +#line 257 testRunner.And("extract \'id\' from JSON body into \'userId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table138 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table140 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table138.AddRow(new string[] { + table140.AddRow(new string[] { "schemas", "[ \"urn:entitlement\" ]"}); - table138.AddRow(new string[] { + table140.AddRow(new string[] { "displayName", "firstEntitlement"}); -#line 234 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table138, "And "); +#line 259 + testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table140, "And "); #line hidden -#line 239 +#line 264 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 240 +#line 265 testRunner.And("extract \'id\' from JSON body into \'firstEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table139 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table141 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table139.AddRow(new string[] { + table141.AddRow(new string[] { "schemas", "[ \"urn:entitlement\" ]"}); - table139.AddRow(new string[] { + table141.AddRow(new string[] { "displayName", "secondEntitlement"}); -#line 242 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table139, "And "); +#line 267 + testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table141, "And "); #line hidden -#line 247 +#line 272 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 248 +#line 273 testRunner.And("extract \'id\' from JSON body into \'secondEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table140 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table142 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table140.AddRow(new string[] { + table142.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table140.AddRow(new string[] { + table142.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\": \"entitlements\", \"value\" : [ { \"value\": \"$firstEntitlemen" + "t$\" }, { \"value\": \"$secondEntitlement$\" } ] } ]"}); -#line 250 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table140, "And "); +#line 275 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table142, "And "); #line hidden -#line 255 +#line 280 testRunner.And("execute HTTP GET request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 256 +#line 281 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 258 +#line 283 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 259 +#line 284 testRunner.Then("JSON \'entitlements[0].value\'=\'$firstEntitlement$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 260 +#line 285 testRunner.Then("JSON \'entitlements[0].display\'=\'firstEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 261 +#line 286 testRunner.Then("JSON \'entitlements[0].$ref\'=\'http://localhost/Entitlements/$firstEntitlement$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 262 +#line 287 testRunner.Then("JSON \'entitlements[1].value\'=\'$secondEntitlement$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 263 +#line 288 testRunner.Then("JSON \'entitlements[1].display\'=\'secondEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 264 +#line 289 testRunner.Then("JSON \'entitlements[1].$ref\'=\'http://localhost/Entitlements/$secondEntitlement$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -961,7 +1049,7 @@ public void CheckEntitlementCanBeAddedTwiceWithTheSameValue() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check entitlement can be added twice with the same value", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 266 +#line 291 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -971,90 +1059,90 @@ public void CheckEntitlementCanBeAddedTwiceWithTheSameValue() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table141 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table143 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table141.AddRow(new string[] { + table143.AddRow(new string[] { "schemas", "[ \"urn:customuser\" ]"}); - table141.AddRow(new string[] { + table143.AddRow(new string[] { "userName", "userName"}); -#line 267 - testRunner.When("execute HTTP POST JSON request \'http://localhost/CustomUsers\'", ((string)(null)), table141, "When "); +#line 292 + testRunner.When("execute HTTP POST JSON request \'http://localhost/CustomUsers\'", ((string)(null)), table143, "When "); #line hidden -#line 272 +#line 297 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 273 +#line 298 testRunner.And("extract \'id\' from JSON body into \'userId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table142 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table144 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table142.AddRow(new string[] { + table144.AddRow(new string[] { "schemas", "[ \"urn:entitlement\" ]"}); - table142.AddRow(new string[] { + table144.AddRow(new string[] { "displayName", "firstEntitlement"}); -#line 275 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table142, "And "); +#line 300 + testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table144, "And "); #line hidden -#line 280 +#line 305 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 281 +#line 306 testRunner.And("extract \'id\' from JSON body into \'firstEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table143 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table145 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table143.AddRow(new string[] { + table145.AddRow(new string[] { "schemas", "[ \"urn:entitlement\" ]"}); - table143.AddRow(new string[] { + table145.AddRow(new string[] { "displayName", "secondEntitlement"}); -#line 283 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table143, "And "); +#line 308 + testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table145, "And "); #line hidden -#line 288 +#line 313 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 289 +#line 314 testRunner.And("extract \'id\' from JSON body into \'secondEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table144 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table146 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table144.AddRow(new string[] { + table146.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table144.AddRow(new string[] { + table146.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\": \"entitlements\", \"value\" : [ { \"value\": \"$firstEntitlemen" + "t$\" }, { \"value\": \"$secondEntitlement$\" } ] } ]"}); -#line 291 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table144, "And "); +#line 316 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table146, "And "); #line hidden - TechTalk.SpecFlow.Table table145 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table147 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table145.AddRow(new string[] { + table147.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table145.AddRow(new string[] { + table147.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\": \"entitlements\", \"value\" : [ { \"value\": \"$firstEntitlemen" + "t$\" }, { \"value\": \"$secondEntitlement$\" } ] } ]"}); -#line 296 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table145, "And "); +#line 321 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table147, "And "); #line hidden -#line 301 +#line 326 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 303 +#line 328 testRunner.Then("HTTP status code equals to \'204\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -1069,7 +1157,7 @@ public void CheckThirdEntitlementCanBeAdded() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check third entitlement can be added", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 306 +#line 331 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -1079,109 +1167,109 @@ public void CheckThirdEntitlementCanBeAdded() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table146 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table148 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table146.AddRow(new string[] { + table148.AddRow(new string[] { "schemas", "[ \"urn:customuser\" ]"}); - table146.AddRow(new string[] { + table148.AddRow(new string[] { "userName", "userName"}); -#line 307 - testRunner.When("execute HTTP POST JSON request \'http://localhost/CustomUsers\'", ((string)(null)), table146, "When "); +#line 332 + testRunner.When("execute HTTP POST JSON request \'http://localhost/CustomUsers\'", ((string)(null)), table148, "When "); #line hidden -#line 312 +#line 337 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 313 +#line 338 testRunner.And("extract \'id\' from JSON body into \'userId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table147 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table149 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table147.AddRow(new string[] { + table149.AddRow(new string[] { "schemas", "[ \"urn:entitlement\" ]"}); - table147.AddRow(new string[] { + table149.AddRow(new string[] { "displayName", "firstEntitlement"}); -#line 315 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table147, "And "); +#line 340 + testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table149, "And "); #line hidden -#line 320 +#line 345 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 321 +#line 346 testRunner.And("extract \'id\' from JSON body into \'firstEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table148 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table150 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table148.AddRow(new string[] { + table150.AddRow(new string[] { "schemas", "[ \"urn:entitlement\" ]"}); - table148.AddRow(new string[] { + table150.AddRow(new string[] { "displayName", "secondEntitlement"}); -#line 323 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table148, "And "); +#line 348 + testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table150, "And "); #line hidden -#line 328 +#line 353 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 329 +#line 354 testRunner.And("extract \'id\' from JSON body into \'secondEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table149 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table151 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table149.AddRow(new string[] { + table151.AddRow(new string[] { "schemas", "[ \"urn:entitlement\" ]"}); - table149.AddRow(new string[] { + table151.AddRow(new string[] { "displayName", "thirdEntitlement"}); -#line 331 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table149, "And "); +#line 356 + testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table151, "And "); #line hidden -#line 336 +#line 361 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 337 +#line 362 testRunner.And("extract \'id\' from JSON body into \'thirdEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table150 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table152 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table150.AddRow(new string[] { + table152.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table150.AddRow(new string[] { + table152.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\": \"entitlements\", \"value\" : [ { \"value\": \"$firstEntitlemen" + "t$\" }, { \"value\": \"$secondEntitlement$\" } ] } ]"}); -#line 339 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table150, "And "); +#line 364 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table152, "And "); #line hidden - TechTalk.SpecFlow.Table table151 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table153 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table151.AddRow(new string[] { + table153.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table151.AddRow(new string[] { + table153.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\": \"entitlements\", \"value\" : [ { \"value\": \"$firstEntitlemen" + "t$\" }, { \"value\": \"$secondEntitlement$\" }, { \"value\": \"$thirdEntitlement$\" } ] }" + " ]"}); -#line 344 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table151, "And "); +#line 369 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table153, "And "); #line hidden -#line 349 +#line 374 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 351 +#line 376 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -1196,7 +1284,7 @@ public void CheckEmailsCanBeErased() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check emails can be erased", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 353 +#line 378 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -1206,109 +1294,109 @@ public void CheckEmailsCanBeErased() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table152 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table154 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table152.AddRow(new string[] { + table154.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table152.AddRow(new string[] { + table154.AddRow(new string[] { "userName", "bjen"}); - table152.AddRow(new string[] { + table154.AddRow(new string[] { "externalId", "externalid"}); - table152.AddRow(new string[] { + table154.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table152.AddRow(new string[] { + table154.AddRow(new string[] { "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", "{ \"employeeNumber\" : \"number\" }"}); - table152.AddRow(new string[] { + table154.AddRow(new string[] { "eidCertificate", "aGVsbG8="}); - table152.AddRow(new string[] { + table154.AddRow(new string[] { "emails", "[ { \"value\": \"value\", \"display\": \"display\" } ]"}); -#line 354 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table152, "When "); +#line 379 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table154, "When "); #line hidden -#line 364 +#line 389 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 365 +#line 390 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table153 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table155 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table153.AddRow(new string[] { + table155.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\" ]"}); - table153.AddRow(new string[] { + table155.AddRow(new string[] { "userName", "bjen"}); - table153.AddRow(new string[] { + table155.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table153.AddRow(new string[] { + table155.AddRow(new string[] { "emails", "[]"}); -#line 366 - testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table153, "And "); +#line 391 + testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table155, "And "); #line hidden -#line 373 +#line 398 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 374 +#line 399 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 376 +#line 401 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 377 +#line 402 testRunner.Then("JSON exists \'id\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 378 +#line 403 testRunner.Then("JSON exists \'meta.created\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 379 +#line 404 testRunner.Then("JSON exists \'meta.lastModified\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 380 +#line 405 testRunner.Then("JSON exists \'meta.version\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 381 +#line 406 testRunner.Then("JSON exists \'meta.location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 382 +#line 407 testRunner.Then("JSON \'employeeNumber\'=\'number\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 383 +#line 408 testRunner.Then("JSON \'meta.resourceType\'=\'User\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 384 +#line 409 testRunner.Then("JSON \'userName\'=\'bjen\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 385 +#line 410 testRunner.Then("JSON \'name.formatted\'=\'formatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 386 +#line 411 testRunner.Then("JSON \'name.familyName\'=\'familyName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 387 +#line 412 testRunner.Then("JSON \'name.givenName\'=\'givenName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 388 +#line 413 testRunner.Then("JSON \'org\'=\'ENTREPRISE\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 389 +#line 414 testRunner.Then("JSON \'eidCertificate\'=\'aGVsbG8=\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 390 +#line 415 testRunner.Then("\'emails\' length is equals to \'0\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -1323,7 +1411,7 @@ public void CheckUserCanBeCreated() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check User can be created", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 392 +#line 417 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -1333,93 +1421,93 @@ public void CheckUserCanBeCreated() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table154 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table156 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table154.AddRow(new string[] { + table156.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table154.AddRow(new string[] { + table156.AddRow(new string[] { "userName", "bjen"}); - table154.AddRow(new string[] { + table156.AddRow(new string[] { "externalId", "externalid"}); - table154.AddRow(new string[] { + table156.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table154.AddRow(new string[] { + table156.AddRow(new string[] { "employeeNumber", "number"}); - table154.AddRow(new string[] { + table156.AddRow(new string[] { "type", "manager"}); - table154.AddRow(new string[] { + table156.AddRow(new string[] { "age", "22"}); - table154.AddRow(new string[] { + table156.AddRow(new string[] { "eidCertificate", "aGVsbG8="}); -#line 393 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table154, "When "); +#line 418 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table156, "When "); #line hidden -#line 404 +#line 429 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 406 +#line 431 testRunner.Then("HTTP status code equals to \'201\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 407 +#line 432 testRunner.Then("HTTP HEADER contains \'Location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 408 +#line 433 testRunner.Then("HTTP HEADER contains \'ETag\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 409 +#line 434 testRunner.Then("JSON exists \'id\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 410 +#line 435 testRunner.Then("JSON exists \'meta.created\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 411 +#line 436 testRunner.Then("JSON exists \'meta.lastModified\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 412 +#line 437 testRunner.Then("JSON exists \'meta.version\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 413 +#line 438 testRunner.Then("JSON exists \'meta.location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 414 +#line 439 testRunner.Then("JSON \'employeeNumber\'=\'number\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 415 +#line 440 testRunner.Then("JSON \'externalId\'=\'externalid\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 416 +#line 441 testRunner.Then("JSON \'meta.resourceType\'=\'User\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 417 +#line 442 testRunner.Then("JSON \'userName\'=\'bjen\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 418 +#line 443 testRunner.Then("JSON \'name.formatted\'=\'formatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 419 +#line 444 testRunner.Then("JSON \'name.familyName\'=\'familyName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 420 +#line 445 testRunner.Then("JSON \'name.givenName\'=\'givenName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 421 +#line 446 testRunner.Then("JSON \'org\'=\'ENTREPRISE\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 422 +#line 447 testRunner.Then("JSON \'age\'=\'22\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 423 +#line 448 testRunner.Then("JSON \'eidCertificate\'=\'aGVsbG8=\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -1434,7 +1522,7 @@ public void CheckUserCanBeCreatedUseFullQualifiedNameProperties() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check user can be created (use full qualified name properties)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 425 +#line 450 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -1444,84 +1532,84 @@ public void CheckUserCanBeCreatedUseFullQualifiedNameProperties() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table155 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table157 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table155.AddRow(new string[] { + table157.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table155.AddRow(new string[] { + table157.AddRow(new string[] { "userName", "bjen"}); - table155.AddRow(new string[] { + table157.AddRow(new string[] { "externalId", "externalid"}); - table155.AddRow(new string[] { + table157.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table155.AddRow(new string[] { + table157.AddRow(new string[] { "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", "{ \"employeeNumber\" : \"number\" }"}); - table155.AddRow(new string[] { + table157.AddRow(new string[] { "eidCertificate", "aGVsbG8="}); -#line 426 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table155, "When "); +#line 451 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table157, "When "); #line hidden -#line 435 +#line 460 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 437 +#line 462 testRunner.Then("HTTP status code equals to \'201\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 438 +#line 463 testRunner.Then("HTTP HEADER contains \'Location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 439 +#line 464 testRunner.Then("HTTP HEADER contains \'ETag\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 440 +#line 465 testRunner.Then("JSON exists \'id\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 441 +#line 466 testRunner.Then("JSON exists \'meta.created\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 442 +#line 467 testRunner.Then("JSON exists \'meta.lastModified\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 443 +#line 468 testRunner.Then("JSON exists \'meta.version\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 444 +#line 469 testRunner.Then("JSON exists \'meta.location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 445 +#line 470 testRunner.Then("JSON \'employeeNumber\'=\'number\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 446 +#line 471 testRunner.Then("JSON \'externalId\'=\'externalid\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 447 +#line 472 testRunner.Then("JSON \'meta.resourceType\'=\'User\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 448 +#line 473 testRunner.Then("JSON \'userName\'=\'bjen\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 449 +#line 474 testRunner.Then("JSON \'name.formatted\'=\'formatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 450 +#line 475 testRunner.Then("JSON \'name.familyName\'=\'familyName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 451 +#line 476 testRunner.Then("JSON \'name.givenName\'=\'givenName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 452 +#line 477 testRunner.Then("JSON \'org\'=\'ENTREPRISE\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 453 +#line 478 testRunner.Then("JSON \'eidCertificate\'=\'aGVsbG8=\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -1536,7 +1624,7 @@ public void CheckActiveFieldCanBeUpdated() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check active field can be updated", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 456 +#line 481 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -1546,75 +1634,75 @@ public void CheckActiveFieldCanBeUpdated() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table156 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table158 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table156.AddRow(new string[] { + table158.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table156.AddRow(new string[] { + table158.AddRow(new string[] { "userName", "bjen"}); - table156.AddRow(new string[] { + table158.AddRow(new string[] { "externalId", "externalid"}); - table156.AddRow(new string[] { + table158.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table156.AddRow(new string[] { + table158.AddRow(new string[] { "employeeNumber", "number"}); -#line 457 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table156, "When "); +#line 482 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table158, "When "); #line hidden -#line 465 +#line 490 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 466 +#line 491 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table157 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table159 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table157.AddRow(new string[] { + table159.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table157.AddRow(new string[] { + table159.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"path\": \"active\", \"value\" : \"false\" } ]"}); -#line 467 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table157, "And "); +#line 492 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table159, "And "); #line hidden -#line 472 +#line 497 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 474 +#line 499 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 475 +#line 500 testRunner.Then("HTTP HEADER contains \'Location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 476 +#line 501 testRunner.Then("HTTP HEADER contains \'ETag\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 477 +#line 502 testRunner.Then("JSON exists \'id\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 478 +#line 503 testRunner.Then("JSON exists \'meta.created\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 479 +#line 504 testRunner.Then("JSON exists \'meta.lastModified\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 480 +#line 505 testRunner.Then("JSON exists \'meta.version\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 481 +#line 506 testRunner.Then("JSON exists \'meta.location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 482 +#line 507 testRunner.Then("JSON \'active\'=\'false\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -1629,7 +1717,7 @@ public void CheckExternalIdCanBeUpdatedByExecutingHTTPPATCHAddOperation() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check externalId can be updated by executing HTTP PATCH add operation", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 484 +#line 509 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -1639,57 +1727,57 @@ public void CheckExternalIdCanBeUpdatedByExecutingHTTPPATCHAddOperation() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table158 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table160 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table158.AddRow(new string[] { + table160.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table158.AddRow(new string[] { + table160.AddRow(new string[] { "userName", "bjen"}); - table158.AddRow(new string[] { + table160.AddRow(new string[] { "externalId", "externalid"}); - table158.AddRow(new string[] { + table160.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table158.AddRow(new string[] { + table160.AddRow(new string[] { "employeeNumber", "number"}); -#line 485 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table158, "When "); +#line 510 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table160, "When "); #line hidden -#line 493 +#line 518 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 494 +#line 519 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table159 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table161 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table159.AddRow(new string[] { + table161.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table159.AddRow(new string[] { + table161.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\": \"externalId\", \"value\" : \"newExternalId\" } ]"}); -#line 495 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table159, "And "); +#line 520 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table161, "And "); #line hidden -#line 500 +#line 525 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 501 +#line 526 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 502 +#line 527 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 503 +#line 528 testRunner.Then("JSON \'externalId\'=\'newExternalId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -1704,7 +1792,7 @@ public void CheckExternalIdCanBeUpdatedByExecutingHTTPPATCHReplaceOperation() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check externalId can be updated by executing HTTP PATCH replace operation", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 505 +#line 530 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -1714,57 +1802,57 @@ public void CheckExternalIdCanBeUpdatedByExecutingHTTPPATCHReplaceOperation() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table160 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table162 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table160.AddRow(new string[] { + table162.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table160.AddRow(new string[] { + table162.AddRow(new string[] { "userName", "bjen"}); - table160.AddRow(new string[] { + table162.AddRow(new string[] { "externalId", "externalid"}); - table160.AddRow(new string[] { + table162.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table160.AddRow(new string[] { + table162.AddRow(new string[] { "employeeNumber", "number"}); -#line 506 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table160, "When "); +#line 531 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table162, "When "); #line hidden -#line 514 +#line 539 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 515 +#line 540 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table161 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table163 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table161.AddRow(new string[] { + table163.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table161.AddRow(new string[] { + table163.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"path\": \"externalId\", \"value\" : \"newExternalId\" } ]"}); -#line 516 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table161, "And "); +#line 541 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table163, "And "); #line hidden -#line 521 +#line 546 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 522 +#line 547 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 523 +#line 548 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 524 +#line 549 testRunner.Then("JSON \'externalId\'=\'newExternalId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -1779,7 +1867,7 @@ public void CheckUserCanBeCreatedWithTwoPropertiesComingFromTwoDifferentSchemas( string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check user can be created with two properties coming from two different schemas", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 526 +#line 551 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -1789,93 +1877,93 @@ public void CheckUserCanBeCreatedWithTwoPropertiesComingFromTwoDifferentSchemas( else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table162 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table164 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table162.AddRow(new string[] { + table164.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table162.AddRow(new string[] { + table164.AddRow(new string[] { "userName", "bjen"}); - table162.AddRow(new string[] { + table164.AddRow(new string[] { "externalId", "externalid"}); - table162.AddRow(new string[] { + table164.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table162.AddRow(new string[] { + table164.AddRow(new string[] { "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", "{ \"employeeNumber\": \"employeeNumber\", \"duplicateAttr\" : \"secondDuplicateAttr\" }"}); - table162.AddRow(new string[] { + table164.AddRow(new string[] { "eidCertificate", "aGVsbG8="}); - table162.AddRow(new string[] { + table164.AddRow(new string[] { "duplicateAttr", "firstDuplicateAttr"}); -#line 527 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table162, "When "); +#line 552 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table164, "When "); #line hidden -#line 537 +#line 562 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 539 +#line 564 testRunner.Then("HTTP status code equals to \'201\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 540 +#line 565 testRunner.Then("HTTP HEADER contains \'Location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 541 +#line 566 testRunner.Then("HTTP HEADER contains \'ETag\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 542 +#line 567 testRunner.Then("JSON exists \'id\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 543 +#line 568 testRunner.Then("JSON exists \'meta.created\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 544 +#line 569 testRunner.Then("JSON exists \'meta.lastModified\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 545 +#line 570 testRunner.Then("JSON exists \'meta.version\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 546 +#line 571 testRunner.Then("JSON exists \'meta.location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 547 +#line 572 testRunner.Then("JSON \'employeeNumber\'=\'employeeNumber\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 548 +#line 573 testRunner.Then("JSON \'externalId\'=\'externalid\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 549 +#line 574 testRunner.Then("JSON \'meta.resourceType\'=\'User\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 550 +#line 575 testRunner.Then("JSON \'userName\'=\'bjen\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 551 +#line 576 testRunner.Then("JSON \'name.formatted\'=\'formatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 552 +#line 577 testRunner.Then("JSON \'name.familyName\'=\'familyName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 553 +#line 578 testRunner.Then("JSON \'name.givenName\'=\'givenName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 554 +#line 579 testRunner.Then("JSON \'org\'=\'ENTREPRISE\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 555 +#line 580 testRunner.Then("JSON \'eidCertificate\'=\'aGVsbG8=\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 556 +#line 581 testRunner.Then("JSON \'duplicateAttr\'=\'firstDuplicateAttr\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 557 +#line 582 testRunner.Then("JSON with namespace \'urn:ietf:params:scim:schemas:extension:enterprise:2.0:User\' " + "\'duplicateAttr\'=\'secondDuplicateAttr\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden @@ -1891,7 +1979,7 @@ public void CheckAttributeWithAMutabilityEqualsToReadOnlyCannotBeOverriden() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check attribute with a mutability equals to readOnly cannot be overriden", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 560 +#line 585 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -1901,42 +1989,42 @@ public void CheckAttributeWithAMutabilityEqualsToReadOnlyCannotBeOverriden() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table163 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table165 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table163.AddRow(new string[] { + table165.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table163.AddRow(new string[] { + table165.AddRow(new string[] { "userName", "bjen"}); - table163.AddRow(new string[] { + table165.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table163.AddRow(new string[] { + table165.AddRow(new string[] { "groups", "[ { \"value\": \"group\" } ]"}); - table163.AddRow(new string[] { + table165.AddRow(new string[] { "employeeNumber", "number"}); -#line 561 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table163, "When "); +#line 586 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table165, "When "); #line hidden -#line 569 +#line 594 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 571 +#line 596 testRunner.Then("HTTP status code equals to \'201\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 572 +#line 597 testRunner.Then("HTTP HEADER contains \'Location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 573 +#line 598 testRunner.Then("HTTP HEADER contains \'ETag\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 574 +#line 599 testRunner.Then("\'groups\' length is equals to \'0\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -1951,7 +2039,7 @@ public void CheckUserCanBeReturned() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check User can be returned", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 576 +#line 601 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -1961,45 +2049,45 @@ public void CheckUserCanBeReturned() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table164 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table166 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table164.AddRow(new string[] { + table166.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table164.AddRow(new string[] { + table166.AddRow(new string[] { "userName", "bjen"}); - table164.AddRow(new string[] { + table166.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table164.AddRow(new string[] { + table166.AddRow(new string[] { "employeeNumber", "number"}); -#line 577 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table164, "When "); +#line 602 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table166, "When "); #line hidden -#line 584 +#line 609 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 585 +#line 610 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 586 +#line 611 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 587 +#line 612 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 589 +#line 614 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 590 +#line 615 testRunner.Then("HTTP HEADER contains \'Location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 591 +#line 616 testRunner.Then("HTTP HEADER contains \'ETag\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2014,7 +2102,7 @@ public void CheckUserCanBeRemoved() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check user can be removed", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 593 +#line 618 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2024,36 +2112,36 @@ public void CheckUserCanBeRemoved() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table165 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table167 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table165.AddRow(new string[] { + table167.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table165.AddRow(new string[] { + table167.AddRow(new string[] { "userName", "bjen"}); - table165.AddRow(new string[] { + table167.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table165.AddRow(new string[] { + table167.AddRow(new string[] { "employeeNumber", "number"}); -#line 594 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table165, "When "); +#line 619 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table167, "When "); #line hidden -#line 601 +#line 626 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 602 +#line 627 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 603 +#line 628 testRunner.When("execute HTTP DELETE request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden -#line 605 +#line 630 testRunner.Then("HTTP status code equals to \'204\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2068,7 +2156,7 @@ public void CheckUserCanBeFilteredHTTPGET() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check user can be filtered (HTTP GET)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 607 +#line 632 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2078,65 +2166,65 @@ public void CheckUserCanBeFilteredHTTPGET() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table166 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table168 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table166.AddRow(new string[] { + table168.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table166.AddRow(new string[] { + table168.AddRow(new string[] { "userName", "bjen"}); - table166.AddRow(new string[] { + table168.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table166.AddRow(new string[] { + table168.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table166.AddRow(new string[] { + table168.AddRow(new string[] { "employeeNumber", "number"}); -#line 608 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table166, "When "); +#line 633 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table168, "When "); #line hidden -#line 616 +#line 641 testRunner.And("execute HTTP GET request \'http://localhost/Users?filter=userName%20eq%20bjen&coun" + "t=3\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 617 +#line 642 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 619 +#line 644 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 620 +#line 645 testRunner.Then("JSON exists \'Resources[0].phones\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 621 +#line 646 testRunner.Then("JSON \'schemas[0]\'=\'urn:ietf:params:scim:api:messages:2.0:ListResponse\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 622 +#line 647 testRunner.Then("JSON \'totalResults\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 623 +#line 648 testRunner.Then("JSON \'startIndex\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 624 +#line 649 testRunner.Then("JSON \'itemsPerPage\'=\'3\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 625 +#line 650 testRunner.Then("JSON \'Resources[0].userName\'=\'bjen\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 626 +#line 651 testRunner.Then("JSON \'Resources[0].name.formatted\'=\'formatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 627 +#line 652 testRunner.Then("JSON \'Resources[0].name.familyName\'=\'familyName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 628 +#line 653 testRunner.Then("JSON \'Resources[0].name.givenName\'=\'givenName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2151,7 +2239,7 @@ public void CheckUserCanBeFilteredHTTPGET_FilterIsCaseInsensitive_() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check user can be filtered (HTTP GET) - Filter is case insensitive.", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 630 +#line 655 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2161,65 +2249,65 @@ public void CheckUserCanBeFilteredHTTPGET_FilterIsCaseInsensitive_() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table167 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table169 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table167.AddRow(new string[] { + table169.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table167.AddRow(new string[] { + table169.AddRow(new string[] { "userName", "bjen"}); - table167.AddRow(new string[] { + table169.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table167.AddRow(new string[] { + table169.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table167.AddRow(new string[] { + table169.AddRow(new string[] { "employeeNumber", "number"}); -#line 631 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table167, "When "); +#line 656 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table169, "When "); #line hidden -#line 639 +#line 664 testRunner.And("execute HTTP GET request \'http://localhost/Users?filter=UserName%20Eq%20bjen&coun" + "t=3\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 640 +#line 665 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 642 +#line 667 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 643 +#line 668 testRunner.Then("JSON exists \'Resources[0].phones\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 644 +#line 669 testRunner.Then("JSON \'schemas[0]\'=\'urn:ietf:params:scim:api:messages:2.0:ListResponse\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 645 +#line 670 testRunner.Then("JSON \'totalResults\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 646 +#line 671 testRunner.Then("JSON \'startIndex\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 647 +#line 672 testRunner.Then("JSON \'itemsPerPage\'=\'3\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 648 +#line 673 testRunner.Then("JSON \'Resources[0].userName\'=\'bjen\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 649 +#line 674 testRunner.Then("JSON \'Resources[0].name.formatted\'=\'formatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 650 +#line 675 testRunner.Then("JSON \'Resources[0].name.familyName\'=\'familyName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 651 +#line 676 testRunner.Then("JSON \'Resources[0].name.givenName\'=\'givenName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2234,7 +2322,7 @@ public void CheckUserCanBeFilteredHTTPPOST() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check user can be filtered (HTTP POST)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 653 +#line 678 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2244,79 +2332,79 @@ public void CheckUserCanBeFilteredHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table168 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table170 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table168.AddRow(new string[] { + table170.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table168.AddRow(new string[] { + table170.AddRow(new string[] { "userName", "bjen"}); - table168.AddRow(new string[] { + table170.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table168.AddRow(new string[] { + table170.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table168.AddRow(new string[] { + table170.AddRow(new string[] { "employeeNumber", "number"}); - table168.AddRow(new string[] { + table170.AddRow(new string[] { "age", "22"}); - table168.AddRow(new string[] { + table170.AddRow(new string[] { "eidCertificate", "aGVsbG8="}); -#line 654 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table168, "When "); +#line 679 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table170, "When "); #line hidden - TechTalk.SpecFlow.Table table169 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table171 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table169.AddRow(new string[] { + table171.AddRow(new string[] { "filter", "userName eq \"bjen\" and ( age gt 15\" and eidCertificate eq \"aGVsbG8=\" )"}); - table169.AddRow(new string[] { + table171.AddRow(new string[] { "count", "3"}); - table169.AddRow(new string[] { + table171.AddRow(new string[] { "attributes", "[ \'phones.phoneNumber\' ]"}); -#line 664 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Users/.search\'", ((string)(null)), table169, "And "); +#line 689 + testRunner.And("execute HTTP POST JSON request \'http://localhost/Users/.search\'", ((string)(null)), table171, "And "); #line hidden -#line 670 +#line 695 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 672 +#line 697 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 673 +#line 698 testRunner.Then("JSON exists \'Resources[0].phones\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 674 +#line 699 testRunner.Then("JSON \'schemas[0]\'=\'urn:ietf:params:scim:api:messages:2.0:ListResponse\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 675 +#line 700 testRunner.Then("JSON \'totalResults\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 676 +#line 701 testRunner.Then("JSON \'startIndex\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 677 +#line 702 testRunner.Then("JSON \'itemsPerPage\'=\'3\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 678 +#line 703 testRunner.Then("JSON \'Resources[0].phones[0].phoneNumber\'=\'01\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 679 +#line 704 testRunner.Then("JSON \'Resources[0].phones[1].phoneNumber\'=\'02\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 680 +#line 705 testRunner.Then("JSON exists \'Resources[0].id\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2334,7 +2422,7 @@ public void CheckTheMaxResultsOptionIsUsedWhenTheClientIsTryingToFetchMoreThanTh System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check the maxResults option is used when the client is trying to fetch more than " + "the allowed number of data", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 682 +#line 707 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2344,41 +2432,41 @@ public void CheckTheMaxResultsOptionIsUsedWhenTheClientIsTryingToFetchMoreThanTh else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table170 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table172 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table170.AddRow(new string[] { + table172.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table170.AddRow(new string[] { + table172.AddRow(new string[] { "userName", "bjen"}); - table170.AddRow(new string[] { + table172.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table170.AddRow(new string[] { + table172.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table170.AddRow(new string[] { + table172.AddRow(new string[] { "employeeNumber", "number"}); -#line 683 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table170, "When "); +#line 708 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table172, "When "); #line hidden -#line 691 +#line 716 testRunner.And("execute HTTP GET request \'http://localhost/Users?filter=userName%20eq%20bjen&coun" + "t=300\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 692 +#line 717 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 694 +#line 719 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 695 +#line 720 testRunner.Then("JSON \'itemsPerPage\'=\'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2393,7 +2481,7 @@ public void UseAttributesPhones_PhoneNumberToGetOnlyThePhoneNumbers() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Use \'attributes=phones.phoneNumber\' to get only the phone numbers", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 697 +#line 722 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2403,62 +2491,62 @@ public void UseAttributesPhones_PhoneNumberToGetOnlyThePhoneNumbers() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table171 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table173 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table171.AddRow(new string[] { + table173.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table171.AddRow(new string[] { + table173.AddRow(new string[] { "userName", "bjen"}); - table171.AddRow(new string[] { + table173.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table171.AddRow(new string[] { + table173.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table171.AddRow(new string[] { + table173.AddRow(new string[] { "employeeNumber", "number"}); -#line 698 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table171, "When "); +#line 723 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table173, "When "); #line hidden -#line 706 +#line 731 testRunner.And("execute HTTP GET request \'http://localhost/Users?filter=userName%20eq%20bjen&coun" + "t=3&attributes=phones.phoneNumber\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 707 +#line 732 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 709 +#line 734 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 710 +#line 735 testRunner.Then("JSON exists \'Resources[0].phones\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 711 +#line 736 testRunner.Then("JSON \'schemas[0]\'=\'urn:ietf:params:scim:api:messages:2.0:ListResponse\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 712 +#line 737 testRunner.Then("JSON \'totalResults\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 713 +#line 738 testRunner.Then("JSON \'startIndex\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 714 +#line 739 testRunner.Then("JSON \'itemsPerPage\'=\'3\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 715 +#line 740 testRunner.Then("JSON \'Resources[0].phones[0].phoneNumber\'=\'01\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 716 +#line 741 testRunner.Then("JSON \'Resources[0].phones[1].phoneNumber\'=\'02\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 717 +#line 742 testRunner.Then("JSON exists \'Resources[0].id\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2473,7 +2561,7 @@ public void ExcludeParametersPhone_PhoneNumberUserNameAndId() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Exclude parameters phone.phoneNumber, userName and id", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 719 +#line 744 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2483,65 +2571,65 @@ public void ExcludeParametersPhone_PhoneNumberUserNameAndId() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table172 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table174 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table172.AddRow(new string[] { + table174.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table172.AddRow(new string[] { + table174.AddRow(new string[] { "userName", "bjen"}); - table172.AddRow(new string[] { + table174.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table172.AddRow(new string[] { + table174.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table172.AddRow(new string[] { + table174.AddRow(new string[] { "employeeNumber", "number"}); -#line 720 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table172, "When "); +#line 745 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table174, "When "); #line hidden -#line 728 +#line 753 testRunner.And("execute HTTP GET request \'http://localhost/Users?filter=userName%20eq%20bjen&coun" + "t=3&excludedAttributes=phones.phoneNumber,userName,id\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 729 +#line 754 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 731 +#line 756 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 732 +#line 757 testRunner.Then("JSON exists \'Resources[0].phones\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 733 +#line 758 testRunner.Then("JSON \'schemas[0]\'=\'urn:ietf:params:scim:api:messages:2.0:ListResponse\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 734 +#line 759 testRunner.Then("JSON \'totalResults\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 735 +#line 760 testRunner.Then("JSON \'startIndex\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 736 +#line 761 testRunner.Then("JSON \'itemsPerPage\'=\'3\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 737 +#line 762 testRunner.Then("JSON doesn\'t exists \'Resources[0].userName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 738 +#line 763 testRunner.Then("JSON doesn\'t exists \'Resources[0].phones[0].phoneNumber\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 739 +#line 764 testRunner.Then("JSON doesn\'t exists \'Resources[0].phones[1].phoneNumber\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 740 +#line 765 testRunner.Then("JSON exists \'Resources[0].id\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2556,7 +2644,7 @@ public void CheckUserCanBeUpdatedHTTPPUT() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check user can be updated (HTTP PUT)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 742 +#line 767 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2566,92 +2654,92 @@ public void CheckUserCanBeUpdatedHTTPPUT() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table173 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table175 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table173.AddRow(new string[] { + table175.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table173.AddRow(new string[] { + table175.AddRow(new string[] { "userName", "bjen"}); - table173.AddRow(new string[] { + table175.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table173.AddRow(new string[] { + table175.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table173.AddRow(new string[] { + table175.AddRow(new string[] { "employeeNumber", "number"}); - table173.AddRow(new string[] { + table175.AddRow(new string[] { "externalId", "ext"}); -#line 743 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table173, "When "); +#line 768 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table175, "When "); #line hidden -#line 752 +#line 777 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 753 +#line 778 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table174 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table176 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table174.AddRow(new string[] { + table176.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\" ]"}); - table174.AddRow(new string[] { + table176.AddRow(new string[] { "name", "{ \"formatted\" : \"newFormatted\", \"familyName\": \"newFamilyName\", \"givenName\": \"newG" + "ivenName\" }"}); - table174.AddRow(new string[] { + table176.AddRow(new string[] { "id", "$id$"}); - table174.AddRow(new string[] { + table176.AddRow(new string[] { "externalId", "newext"}); - table174.AddRow(new string[] { + table176.AddRow(new string[] { "userName", "bjen"}); -#line 754 - testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table174, "And "); +#line 779 + testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table176, "And "); #line hidden -#line 762 +#line 787 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 763 +#line 788 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 765 +#line 790 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 766 +#line 791 testRunner.Then("HTTP HEADER contains \'Location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 767 +#line 792 testRunner.Then("HTTP HEADER contains \'ETag\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 768 +#line 793 testRunner.Then("JSON \'schemas[0]\'=\'urn:ietf:params:scim:schemas:core:2.0:User\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 769 +#line 794 testRunner.Then("JSON \'userName\'=\'bjen\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 770 +#line 795 testRunner.Then("JSON \'externalId\'=\'newext\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 771 +#line 796 testRunner.Then("JSON \'name.formatted\'=\'newFormatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 772 +#line 797 testRunner.Then("JSON \'name.familyName\'=\'newFamilyName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 773 +#line 798 testRunner.Then("JSON \'name.givenName\'=\'newGivenName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2666,7 +2754,7 @@ public void CheckExternalIdCanBeReplacedHTTPPATCH() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check externalId can be replaced (HTTP PATCH)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 775 +#line 800 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2676,62 +2764,62 @@ public void CheckExternalIdCanBeReplacedHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table175 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table177 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table175.AddRow(new string[] { + table177.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table175.AddRow(new string[] { + table177.AddRow(new string[] { "userName", "bjen"}); - table175.AddRow(new string[] { + table177.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table175.AddRow(new string[] { + table177.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" }, { \"phoneNumber\": \"04\", \"type\": \"home\" }, { \"phoneNumber\": \"05\", \"type\": \"ho" + "me05\" } ]"}); - table175.AddRow(new string[] { + table177.AddRow(new string[] { "employeeNumber", "number"}); - table175.AddRow(new string[] { + table177.AddRow(new string[] { "externalId", "externalId"}); -#line 776 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table175, "When "); +#line 801 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table177, "When "); #line hidden -#line 785 +#line 810 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 786 +#line 811 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table176 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table178 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table176.AddRow(new string[] { + table178.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table176.AddRow(new string[] { + table178.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"path\": \"externalId\", \"value\" : \"newExternalId\" } ]"}); -#line 787 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table176, "And "); +#line 812 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table178, "And "); #line hidden -#line 792 +#line 817 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 793 +#line 818 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 795 +#line 820 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 796 +#line 821 testRunner.Then("JSON \'externalId\'=\'newExternalId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2746,7 +2834,7 @@ public void CheckExternalIdCanBeAddedHTTPPATCH() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check externalId can be added (HTTP PATCH)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 798 +#line 823 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2756,62 +2844,62 @@ public void CheckExternalIdCanBeAddedHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table177 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table179 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table177.AddRow(new string[] { + table179.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table177.AddRow(new string[] { + table179.AddRow(new string[] { "userName", "bjen"}); - table177.AddRow(new string[] { + table179.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table177.AddRow(new string[] { + table179.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" }, { \"phoneNumber\": \"04\", \"type\": \"home\" }, { \"phoneNumber\": \"05\", \"type\": \"ho" + "me05\" } ]"}); - table177.AddRow(new string[] { + table179.AddRow(new string[] { "employeeNumber", "number"}); - table177.AddRow(new string[] { + table179.AddRow(new string[] { "externalId", "externalId"}); -#line 799 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table177, "When "); +#line 824 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table179, "When "); #line hidden -#line 808 +#line 833 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 809 +#line 834 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table178 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table180 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table178.AddRow(new string[] { + table180.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table178.AddRow(new string[] { + table180.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"value\" : { \"externalId\": \"newExternalId\" } } ]"}); -#line 810 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table178, "And "); +#line 835 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table180, "And "); #line hidden -#line 815 +#line 840 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 816 +#line 841 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 818 +#line 843 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 819 +#line 844 testRunner.Then("JSON \'externalId\'=\'newExternalId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2826,7 +2914,7 @@ public void CheckUserCanBePatchedHTTPPATCH() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check user can be patched (HTTP PATCH)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 821 +#line 846 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2836,141 +2924,141 @@ public void CheckUserCanBePatchedHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table179 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table181 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table179.AddRow(new string[] { + table181.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table179.AddRow(new string[] { + table181.AddRow(new string[] { "userName", "bjen"}); - table179.AddRow(new string[] { + table181.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table179.AddRow(new string[] { + table181.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" }, { \"phoneNumber\": \"04\", \"type\": \"home\" }, { \"phoneNumber\": \"05\", \"type\": \"ho" + "me05\" } ]"}); - table179.AddRow(new string[] { + table181.AddRow(new string[] { "employeeNumber", "number"}); - table179.AddRow(new string[] { + table181.AddRow(new string[] { "scores", "{ \"math\" : [ { \"score\" : \"10\" } ] }"}); - table179.AddRow(new string[] { + table181.AddRow(new string[] { "roles", "[ \"role1\", \"role2\" ]"}); - table179.AddRow(new string[] { + table181.AddRow(new string[] { "adRoles", "[ { \"display\": \"adRole1\", \"value\" : \"user1\" } , { \"display\": \"adRole2\", \"value\" :" + " \"user2\" }, { \"value\": \"user3\" }, { \"display\": \"adRole3\", \"value\" : \"user4\" } ]"}); -#line 822 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table179, "When "); +#line 847 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table181, "When "); #line hidden -#line 833 +#line 858 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 834 +#line 859 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table180 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table182 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table180.AddRow(new string[] { + table182.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table180.AddRow(new string[] { + table182.AddRow(new string[] { "Operations", @"[ { ""op"": ""replace"", ""path"": ""adRoles.display"", ""value"" : ""NEWUSER"" }, { ""op"": ""add"", ""path"" : ""adRoles[value eq user4].display"", ""value"": ""NEWUSER4"" }, { ""op"": ""replace"", ""path"": ""adRoles[value eq user1].value"", ""value"" : ""NEWUSERVALUE"" }, { ""op"": ""replace"", ""path"": ""adRoles[value eq user2]"", ""value"" : { ""value"": ""NEWUSERVALUE2"" } }, { ""op"": ""add"", ""value"" : { ""roles"": [ ""role10"" ] } }, { ""op"": ""replace"", ""value"" : { ""userName"": ""cassandra"" } }, { ""op"": ""replace"", ""path"": ""phones[phoneNumber eq \""05\""].type"", ""value"": ""NewHome05"" }, { ""op"": ""remove"", ""path"": ""phones[phoneNumber eq \""05\""].phoneNumber"" }, { ""op"" : ""replace"", ""path"": ""phones[phoneNumber eq 04]"", ""value"": { ""type"": ""home"" } }, { ""op"" : ""remove"", ""path"": ""phones[phoneNumber eq 01]"" }, { ""op"": ""add"", ""path"": ""phones"", ""value"": { ""phoneNumber"": ""03"", ""type"": ""mobile"" } }, { ""op"" : ""remove"", ""path"": ""scores.math[score eq \""10\""]"" }, { ""op"" : ""add"", ""path"": ""scores.math"", ""value"": { ""score"": ""20"" } }, { ""op"": ""add"", ""path"": ""roles"", ""value"": ""role3"" } ]"}); -#line 835 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table180, "And "); +#line 860 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table182, "And "); #line hidden -#line 840 +#line 865 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 841 +#line 866 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 843 +#line 868 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 844 +#line 869 testRunner.Then("HTTP HEADER contains \'Location\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 845 +#line 870 testRunner.Then("HTTP HEADER contains \'ETag\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 846 +#line 871 testRunner.Then("JSON \'schemas[0]\'=\'urn:ietf:params:scim:schemas:core:2.0:User\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 847 +#line 872 testRunner.Then("JSON \'userName\'=\'cassandra\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 848 +#line 873 testRunner.Then("JSON \'phones[0].phoneNumber\'=\'02\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 849 +#line 874 testRunner.Then("JSON \'phones[0].type\'=\'home\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 850 +#line 875 testRunner.Then("JSON \'phones[1].type\'=\'home\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 851 +#line 876 testRunner.Then("JSON \'phones[1].phoneNumber\'=\'04\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 852 +#line 877 testRunner.Then("JSON \'phones[2].type\'=\'NewHome05\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 853 +#line 878 testRunner.Then("JSON doesn\'t exists \'phones[2].phoneNumber\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 854 +#line 879 testRunner.Then("JSON \'phones[3].type\'=\'mobile\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 855 +#line 880 testRunner.Then("JSON \'phones[3].phoneNumber\'=\'03\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 856 +#line 881 testRunner.Then("JSON \'scores.math[0].score\'=\'20\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 857 +#line 882 testRunner.Then("JSON \'roles[0]\'=\'role1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 858 +#line 883 testRunner.Then("JSON \'roles[1]\'=\'role2\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 859 +#line 884 testRunner.Then("JSON \'roles[2]\'=\'role10\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 860 +#line 885 testRunner.Then("JSON \'roles[3]\'=\'role3\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 861 +#line 886 testRunner.Then("JSON \'adRoles[0].display\'=\'NEWUSER\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 862 +#line 887 testRunner.Then("JSON \'adRoles[0].value\'=\'NEWUSERVALUE\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 863 +#line 888 testRunner.Then("JSON \'adRoles[1].display\'=\'NEWUSER\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 864 +#line 889 testRunner.Then("JSON \'adRoles[1].value\'=\'NEWUSERVALUE2\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 865 +#line 890 testRunner.Then("JSON \'adRoles[2].display\'=\'NEWUSER\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 866 +#line 891 testRunner.Then("JSON \'adRoles[2].value\'=\'user3\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 867 +#line 892 testRunner.Then("JSON \'adRoles[3].value\'=\'user4\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 868 +#line 893 testRunner.Then("JSON \'adRoles[3].display\'=\'NEWUSER4\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -2985,7 +3073,7 @@ public void CheckNoUserIsReturnedWhenCountParameterIs0() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check no user is returned when count parameter is 0", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 870 +#line 895 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -2995,55 +3083,55 @@ public void CheckNoUserIsReturnedWhenCountParameterIs0() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table181 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table183 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table181.AddRow(new string[] { + table183.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table181.AddRow(new string[] { + table183.AddRow(new string[] { "userName", "bjen"}); - table181.AddRow(new string[] { + table183.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table181.AddRow(new string[] { + table183.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table181.AddRow(new string[] { + table183.AddRow(new string[] { "employeeNumber", "number"}); - table181.AddRow(new string[] { + table183.AddRow(new string[] { "scores", "{ \"math\" : [ { \"score\" : \"10\" } ] }"}); - table181.AddRow(new string[] { + table183.AddRow(new string[] { "roles", "[ \"role1\", \"role2\" ]"}); -#line 871 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table181, "When "); +#line 896 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table183, "When "); #line hidden -#line 881 +#line 906 testRunner.And("execute HTTP GET request \'http://localhost/Users?count=0\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 882 +#line 907 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 885 +#line 910 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 886 +#line 911 testRunner.Then("JSON \'schemas[0]\'=\'urn:ietf:params:scim:api:messages:2.0:ListResponse\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 887 +#line 912 testRunner.Then("JSON \'totalResults\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 888 +#line 913 testRunner.Then("JSON \'startIndex\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 889 +#line 914 testRunner.Then("JSON \'itemsPerPage\'=\'0\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3058,7 +3146,7 @@ public void CheckUsersCanBeFilteredByOrganizationId() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check users can be filtered by organizationId", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 891 +#line 916 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3068,46 +3156,46 @@ public void CheckUsersCanBeFilteredByOrganizationId() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table182 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table184 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table182.AddRow(new string[] { + table184.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table182.AddRow(new string[] { + table184.AddRow(new string[] { "userName", "bjen"}); - table182.AddRow(new string[] { + table184.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table182.AddRow(new string[] { + table184.AddRow(new string[] { "organizationId", "number"}); - table182.AddRow(new string[] { + table184.AddRow(new string[] { "employeeNumber", "number"}); -#line 892 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table182, "When "); +#line 917 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table184, "When "); #line hidden -#line 900 +#line 925 testRunner.And("execute HTTP GET request \'http://localhost/Users?filter=organizationId%20eq%20num" + "ber\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 901 +#line 926 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 903 +#line 928 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 904 +#line 929 testRunner.Then("JSON \'schemas[0]\'=\'urn:ietf:params:scim:api:messages:2.0:ListResponse\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 905 +#line 930 testRunner.Then("JSON \'totalResults\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 906 +#line 931 testRunner.Then("JSON \'startIndex\'=\'1\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3122,7 +3210,7 @@ public void CheckAttributeEmployeeNumberCanBeExcluded() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check attribute \'employeeNumber\' can be excluded", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 908 +#line 933 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3132,46 +3220,46 @@ public void CheckAttributeEmployeeNumberCanBeExcluded() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table183 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table185 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table183.AddRow(new string[] { + table185.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table183.AddRow(new string[] { + table185.AddRow(new string[] { "userName", "bjen"}); - table183.AddRow(new string[] { + table185.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table183.AddRow(new string[] { + table185.AddRow(new string[] { "organizationId", "number"}); - table183.AddRow(new string[] { + table185.AddRow(new string[] { "employeeNumber", "number"}); -#line 909 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table183, "When "); +#line 934 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table185, "When "); #line hidden -#line 917 +#line 942 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 918 +#line 943 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 920 +#line 945 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$?excludedAttributes=employee" + "Number\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 921 +#line 946 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 923 +#line 948 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 924 +#line 949 testRunner.Then("JSON doesn\'t exists \'employeeNumber\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3186,7 +3274,7 @@ public void CheckEmployeeNumberAndExternalIdCanBeUpdatedHTTPPATCH() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check employeeNumber and externalId can be updated (HTTP PATCH)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 926 +#line 951 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3196,61 +3284,61 @@ public void CheckEmployeeNumberAndExternalIdCanBeUpdatedHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table184 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table186 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table184.AddRow(new string[] { + table186.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table184.AddRow(new string[] { + table186.AddRow(new string[] { "userName", "bjen"}); - table184.AddRow(new string[] { + table186.AddRow(new string[] { "externalId", "externalid"}); - table184.AddRow(new string[] { + table186.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table184.AddRow(new string[] { + table186.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 927 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table184, "When "); +#line 952 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table186, "When "); #line hidden -#line 935 +#line 960 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 936 +#line 961 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table185 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table187 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table185.AddRow(new string[] { + table187.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table185.AddRow(new string[] { + table187.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"value\" : { \"externalId\": \"newExternalId\", \"employeeNumber\":" + " \"newEmployeeNumber\" } } ]"}); -#line 938 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table185, "And "); +#line 963 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table187, "And "); #line hidden -#line 943 +#line 968 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 944 +#line 969 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 946 +#line 971 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 947 +#line 972 testRunner.Then("JSON \'employeeNumber\'=\'newEmployeeNumber\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 948 +#line 973 testRunner.Then("JSON \'externalId\'=\'newExternalId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3265,7 +3353,7 @@ public void CheckExternalIdCanBeUpdatedHTTPPATCHReplace() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check external id can be updated (HTTP PATCH replace)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 950 +#line 975 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3275,57 +3363,57 @@ public void CheckExternalIdCanBeUpdatedHTTPPATCHReplace() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table186 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table188 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table186.AddRow(new string[] { + table188.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table186.AddRow(new string[] { + table188.AddRow(new string[] { "userName", "bjen"}); - table186.AddRow(new string[] { + table188.AddRow(new string[] { "externalId", "externalid"}); - table186.AddRow(new string[] { + table188.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table186.AddRow(new string[] { + table188.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 951 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table186, "When "); +#line 976 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table188, "When "); #line hidden -#line 959 +#line 984 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 960 +#line 985 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table187 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table189 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table187.AddRow(new string[] { + table189.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table187.AddRow(new string[] { + table189.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"value\" : { \"externalId\": \"newExternalId\" } } ]"}); -#line 962 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table187, "And "); +#line 987 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table189, "And "); #line hidden -#line 967 +#line 992 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 968 +#line 993 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 970 +#line 995 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 971 +#line 996 testRunner.Then("JSON \'externalId\'=\'newExternalId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3340,7 +3428,7 @@ public void CheckExternalIdCanBeUpdatedHTTPPATCHAdd() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check external id can be updated (HTTP PATCH add)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 973 +#line 998 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3350,57 +3438,57 @@ public void CheckExternalIdCanBeUpdatedHTTPPATCHAdd() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table188 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table190 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table188.AddRow(new string[] { + table190.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table188.AddRow(new string[] { + table190.AddRow(new string[] { "userName", "bjen"}); - table188.AddRow(new string[] { + table190.AddRow(new string[] { "externalId", "externalid"}); - table188.AddRow(new string[] { + table190.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table188.AddRow(new string[] { + table190.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 974 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table188, "When "); +#line 999 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table190, "When "); #line hidden -#line 982 +#line 1007 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 983 +#line 1008 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table189 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table191 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table189.AddRow(new string[] { + table191.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table189.AddRow(new string[] { + table191.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"value\" : { \"externalId\": \"newExternalId\" } } ]"}); -#line 985 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table189, "And "); +#line 1010 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table191, "And "); #line hidden -#line 990 +#line 1015 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 991 +#line 1016 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 993 +#line 1018 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 994 +#line 1019 testRunner.Then("JSON \'externalId\'=\'newExternalId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3415,7 +3503,7 @@ public void CheckExternalIdCanBeUpdatedWhenUsingPathParameterHTTPPATCHAdd() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check externalId can be updated when using path parameter (HTTP PATCH add)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 996 +#line 1021 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3425,57 +3513,57 @@ public void CheckExternalIdCanBeUpdatedWhenUsingPathParameterHTTPPATCHAdd() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table190 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table192 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table190.AddRow(new string[] { + table192.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table190.AddRow(new string[] { + table192.AddRow(new string[] { "userName", "bjen"}); - table190.AddRow(new string[] { + table192.AddRow(new string[] { "externalId", "externalid"}); - table190.AddRow(new string[] { + table192.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table190.AddRow(new string[] { + table192.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 997 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table190, "When "); +#line 1022 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table192, "When "); #line hidden -#line 1005 +#line 1030 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1006 +#line 1031 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table191 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table193 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table191.AddRow(new string[] { + table193.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table191.AddRow(new string[] { + table193.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\" : \"externalId\", \"value\" : \"newExternalId\" } ]"}); -#line 1008 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table191, "And "); +#line 1033 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table193, "And "); #line hidden -#line 1013 +#line 1038 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1014 +#line 1039 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1016 +#line 1041 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1017 +#line 1042 testRunner.Then("JSON \'externalId\'=\'newExternalId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3490,7 +3578,7 @@ public void CheckExternalIdCanBeUpdatedWhenUsingPathParameterHTTPPATCHReplace() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check externalId can be updated when using path parameter (HTTP PATCH replace)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 1019 +#line 1044 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3500,57 +3588,57 @@ public void CheckExternalIdCanBeUpdatedWhenUsingPathParameterHTTPPATCHReplace() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table192 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table194 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table192.AddRow(new string[] { + table194.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table192.AddRow(new string[] { + table194.AddRow(new string[] { "userName", "bjen"}); - table192.AddRow(new string[] { + table194.AddRow(new string[] { "externalId", "externalid"}); - table192.AddRow(new string[] { + table194.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table192.AddRow(new string[] { + table194.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 1020 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table192, "When "); +#line 1045 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table194, "When "); #line hidden -#line 1028 +#line 1053 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1029 +#line 1054 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table193 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table195 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table193.AddRow(new string[] { + table195.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table193.AddRow(new string[] { + table195.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"path\" : \"externalId\", \"value\" : \"newExternalId\" } ]"}); -#line 1031 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table193, "And "); +#line 1056 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table195, "And "); #line hidden -#line 1036 +#line 1061 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1037 +#line 1062 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1039 +#line 1064 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1040 +#line 1065 testRunner.Then("JSON \'externalId\'=\'newExternalId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3568,7 +3656,7 @@ public void IfTheTargetLocationDoesNotExistTheAttributeAndValueAreAddedHTTPPATCH System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("If the target location does not exist the attribute and value are added (HTTP PAT" + "CH add)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 1042 +#line 1067 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3578,72 +3666,72 @@ public void IfTheTargetLocationDoesNotExistTheAttributeAndValueAreAddedHTTPPATCH else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table194 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table196 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table194.AddRow(new string[] { + table196.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table194.AddRow(new string[] { + table196.AddRow(new string[] { "userName", "bjen"}); - table194.AddRow(new string[] { + table196.AddRow(new string[] { "externalId", "externalid"}); - table194.AddRow(new string[] { + table196.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table194.AddRow(new string[] { + table196.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 1043 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table194, "When "); +#line 1068 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table196, "When "); #line hidden -#line 1051 +#line 1076 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1052 +#line 1077 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table195 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table197 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table195.AddRow(new string[] { + table197.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table195.AddRow(new string[] { + table197.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\" : \"emails[type eq work].primary\", \"value\" : \"true\" } ]"}); -#line 1054 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table195, "And "); +#line 1079 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table197, "And "); #line hidden - TechTalk.SpecFlow.Table table196 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table198 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table196.AddRow(new string[] { + table198.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table196.AddRow(new string[] { + table198.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\" : \"phones.phoneNumber\", \"value\" : \"Phone\" } ]"}); -#line 1059 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table196, "And "); +#line 1084 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table198, "And "); #line hidden -#line 1064 +#line 1089 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1065 +#line 1090 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1067 +#line 1092 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1068 +#line 1093 testRunner.Then("JSON \'emails[0].primary\'=\'true\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1069 +#line 1094 testRunner.Then("JSON \'phones[0].phoneNumber\'=\'Phone\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3661,7 +3749,7 @@ public void CheckPropertiesAreUpdatedWhenThePathParameterIsOmittedHTTPPATCHREPLA System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check properties are updated when the path parameter is omitted (HTTP PATCH REPLA" + "CE)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 1071 +#line 1096 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3671,64 +3759,64 @@ public void CheckPropertiesAreUpdatedWhenThePathParameterIsOmittedHTTPPATCHREPLA else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table197 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table199 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table197.AddRow(new string[] { + table199.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table197.AddRow(new string[] { + table199.AddRow(new string[] { "userName", "bjen"}); - table197.AddRow(new string[] { + table199.AddRow(new string[] { "externalId", "externalid"}); - table197.AddRow(new string[] { + table199.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table197.AddRow(new string[] { + table199.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 1072 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table197, "When "); +#line 1097 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table199, "When "); #line hidden -#line 1080 +#line 1105 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1081 +#line 1106 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table198 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table200 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table198.AddRow(new string[] { + table200.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table198.AddRow(new string[] { + table200.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"value\" : { \"name.formatted\" : \"newformatted\", \"name.familyN" + "ame\": \"familyName\", \"employeeNumber\": \"Number\" } } ]"}); -#line 1083 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table198, "And "); +#line 1108 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table200, "And "); #line hidden -#line 1088 +#line 1113 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1089 +#line 1114 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1091 +#line 1116 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1092 +#line 1117 testRunner.Then("JSON \'name.formatted\'=\'newformatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1093 +#line 1118 testRunner.Then("JSON \'name.familyName\'=\'familyName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1094 +#line 1119 testRunner.Then("JSON \'employeeNumber\'=\'Number\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3743,7 +3831,7 @@ public void CheckPropertiesAreUpdatedWhenThePathParameterIsOmittedHTTPPATCHADD() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check properties are updated when the path parameter is omitted (HTTP PATCH ADD)", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 1097 +#line 1122 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3753,64 +3841,64 @@ public void CheckPropertiesAreUpdatedWhenThePathParameterIsOmittedHTTPPATCHADD() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table199 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table201 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table199.AddRow(new string[] { + table201.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table199.AddRow(new string[] { + table201.AddRow(new string[] { "userName", "bjen"}); - table199.AddRow(new string[] { + table201.AddRow(new string[] { "externalId", "externalid"}); - table199.AddRow(new string[] { + table201.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table199.AddRow(new string[] { + table201.AddRow(new string[] { "employeeNumber", "\"number\""}); -#line 1098 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table199, "When "); +#line 1123 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table201, "When "); #line hidden -#line 1106 +#line 1131 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1107 +#line 1132 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table200 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table202 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table200.AddRow(new string[] { + table202.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table200.AddRow(new string[] { + table202.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"value\" : { \"name.formatted\" : \"newformatted\", \"name.familyName\"" + ": \"familyName\", \"employeeNumber\": \"Number\" } } ]"}); -#line 1109 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table200, "And "); +#line 1134 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table202, "And "); #line hidden -#line 1114 +#line 1139 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1115 +#line 1140 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1117 +#line 1142 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1118 +#line 1143 testRunner.Then("JSON \'name.formatted\'=\'newformatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1119 +#line 1144 testRunner.Then("JSON \'name.familyName\'=\'familyName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1120 +#line 1145 testRunner.Then("JSON \'employeeNumber\'=\'Number\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3825,7 +3913,7 @@ public void CheckPropertyNameAreNotCaseSensitive() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Check property name are not case sensitive", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 1122 +#line 1147 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3835,57 +3923,57 @@ public void CheckPropertyNameAreNotCaseSensitive() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table201 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table203 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table201.AddRow(new string[] { + table203.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table201.AddRow(new string[] { + table203.AddRow(new string[] { "UserName", "bjen"}); - table201.AddRow(new string[] { + table203.AddRow(new string[] { "ExternalId", "externalid"}); - table201.AddRow(new string[] { + table203.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"FAMILYNAME\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table201.AddRow(new string[] { + table203.AddRow(new string[] { "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", "{ \"employeeNumber\" : \"number\" }"}); - table201.AddRow(new string[] { + table203.AddRow(new string[] { "eidCertificate", "aGVsbG8="}); - table201.AddRow(new string[] { + table203.AddRow(new string[] { "immutable", "immutable"}); -#line 1123 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table201, "When "); +#line 1148 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table203, "When "); #line hidden -#line 1133 +#line 1158 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1134 +#line 1159 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1136 +#line 1161 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1137 +#line 1162 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1139 +#line 1164 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1140 +#line 1165 testRunner.Then("JSON \'name.formatted\'=\'formatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1141 +#line 1166 testRunner.Then("JSON \'name.familyName\'=\'familyName\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1142 +#line 1167 testRunner.Then("JSON \'employeeNumber\'=\'Number\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3903,7 +3991,7 @@ public void WhenUserNameIsUpdatedTwoTimesInTheSameOperationCheckTheUserNameIsEqu System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("When userName is updated two times in the same operation, check the userName is e" + "quals to the value of second operation", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 1144 +#line 1169 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3913,64 +4001,64 @@ public void WhenUserNameIsUpdatedTwoTimesInTheSameOperationCheckTheUserNameIsEqu else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table202 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table204 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table202.AddRow(new string[] { + table204.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table202.AddRow(new string[] { + table204.AddRow(new string[] { "userName", "bjen"}); - table202.AddRow(new string[] { + table204.AddRow(new string[] { "ExternalId", "externalid"}); - table202.AddRow(new string[] { + table204.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"FAMILYNAME\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table202.AddRow(new string[] { + table204.AddRow(new string[] { "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", "{ \"employeeNumber\" : \"number\" }"}); - table202.AddRow(new string[] { + table204.AddRow(new string[] { "eidCertificate", "aGVsbG8="}); - table202.AddRow(new string[] { + table204.AddRow(new string[] { "immutable", "immutable"}); -#line 1145 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table202, "When "); +#line 1170 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table204, "When "); #line hidden -#line 1155 +#line 1180 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1156 +#line 1181 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table203 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table205 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table203.AddRow(new string[] { + table205.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table203.AddRow(new string[] { + table205.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"path\": \"userName\", \"value\" : \"newName\" }, { \"op\": \"replace\"" + ", \"path\": \"userName\", \"value\" : \"newName2\" } ]"}); -#line 1158 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table203, "And "); +#line 1183 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table205, "And "); #line hidden -#line 1163 +#line 1188 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1164 +#line 1189 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1166 +#line 1191 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1167 +#line 1192 testRunner.Then("JSON \'userName\'=\'newName2\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -3988,7 +4076,7 @@ public void WhenUserNameIsRemovedAndUpdatedInTheSameOperationCheckTheUserNameIsE System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("When userName is removed and updated in the same operation, check the userName is" + " equals to the value of the second operation", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 1169 +#line 1194 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -3998,64 +4086,64 @@ public void WhenUserNameIsRemovedAndUpdatedInTheSameOperationCheckTheUserNameIsE else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table204 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table206 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table204.AddRow(new string[] { + table206.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table204.AddRow(new string[] { + table206.AddRow(new string[] { "userName", "bjen"}); - table204.AddRow(new string[] { + table206.AddRow(new string[] { "ExternalId", "externalid"}); - table204.AddRow(new string[] { + table206.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"FAMILYNAME\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table204.AddRow(new string[] { + table206.AddRow(new string[] { "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", "{ \"employeeNumber\" : \"number\" }"}); - table204.AddRow(new string[] { + table206.AddRow(new string[] { "eidCertificate", "aGVsbG8="}); - table204.AddRow(new string[] { + table206.AddRow(new string[] { "immutable", "immutable"}); -#line 1170 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table204, "When "); +#line 1195 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table206, "When "); #line hidden -#line 1180 +#line 1205 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1181 +#line 1206 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table205 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table207 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table205.AddRow(new string[] { + table207.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table205.AddRow(new string[] { + table207.AddRow(new string[] { "Operations", "[ { \"op\": \"remove\", \"path\": \"userName\" }, { \"op\": \"replace\", \"path\": \"userName\", " + "\"value\" : \"newName2\" } ]"}); -#line 1183 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table205, "And "); +#line 1208 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table207, "And "); #line hidden -#line 1188 +#line 1213 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1189 +#line 1214 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1191 +#line 1216 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1192 +#line 1217 testRunner.Then("JSON \'userName\'=\'newName2\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } @@ -4070,7 +4158,7 @@ public void WhenNameIsUpdatedTwoTimesInTheSameOperationCheckTheNameIsCorrect() string[] tagsOfScenario = ((string[])(null)); System.Collections.Specialized.OrderedDictionary argumentsOfScenario = new System.Collections.Specialized.OrderedDictionary(); TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("When name is updated two times in the same operation, check the name is correct", null, tagsOfScenario, argumentsOfScenario, featureTags); -#line 1194 +#line 1219 this.ScenarioInitialize(scenarioInfo); #line hidden if ((TagHelper.ContainsIgnoreTag(tagsOfScenario) || TagHelper.ContainsIgnoreTag(featureTags))) @@ -4080,68 +4168,68 @@ public void WhenNameIsUpdatedTwoTimesInTheSameOperationCheckTheNameIsCorrect() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table206 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table208 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table206.AddRow(new string[] { + table208.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table206.AddRow(new string[] { + table208.AddRow(new string[] { "userName", "bjen"}); - table206.AddRow(new string[] { + table208.AddRow(new string[] { "ExternalId", "externalid"}); - table206.AddRow(new string[] { + table208.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"FAMILYNAME\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table206.AddRow(new string[] { + table208.AddRow(new string[] { "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", "{ \"employeeNumber\" : \"number\" }"}); - table206.AddRow(new string[] { + table208.AddRow(new string[] { "eidCertificate", "aGVsbG8="}); - table206.AddRow(new string[] { + table208.AddRow(new string[] { "immutable", "immutable"}); -#line 1195 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table206, "When "); +#line 1220 + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table208, "When "); #line hidden -#line 1205 +#line 1230 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1206 +#line 1231 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table207 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table209 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table207.AddRow(new string[] { + table209.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table207.AddRow(new string[] { + table209.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"path\": \"name\", \"value\" : { \"formatted\" : \"newFormatted\" } }" + ", { \"op\": \"replace\", \"path\": \"name\", \"value\" : { \"givenName\": \"givenName2\" } } " + "]"}); -#line 1208 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table207, "And "); +#line 1233 + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table209, "And "); #line hidden -#line 1213 +#line 1238 testRunner.And("execute HTTP GET request \'http://localhost/Users/$id$\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1214 +#line 1239 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden -#line 1216 +#line 1241 testRunner.Then("HTTP status code equals to \'200\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1217 +#line 1242 testRunner.Then("JSON \'name.formatted\'=\'newFormatted\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden -#line 1218 +#line 1243 testRunner.Then("JSON \'name.givenName\'=\'givenName2\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden } diff --git a/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/UsersErrors.feature.cs b/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/UsersErrors.feature.cs index 55ef5de42..9acc15c06 100644 --- a/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/UsersErrors.feature.cs +++ b/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Features/UsersErrors.feature.cs @@ -138,17 +138,17 @@ public void ErrorIsReturnedWhenFilterIsEmptyHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table208 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table210 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table208.AddRow(new string[] { + table210.AddRow(new string[] { "startIndex", "1"}); - table208.AddRow(new string[] { + table210.AddRow(new string[] { "filter", ""}); #line 14 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users/.search\'", ((string)(null)), table208, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users/.search\'", ((string)(null)), table210, "When "); #line hidden #line 19 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -275,25 +275,25 @@ public void ErrorIsReturnedWhenValueDoesntRespectTheTypeDefinedInTheSchemaHTTPPA else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table209 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table211 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table209.AddRow(new string[] { + table211.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table209.AddRow(new string[] { + table211.AddRow(new string[] { "userName", "bjen"}); - table209.AddRow(new string[] { + table211.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table209.AddRow(new string[] { + table211.AddRow(new string[] { "employeeNumber", "100"}); #line 46 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table209, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table211, "When "); #line hidden #line 53 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -301,17 +301,17 @@ public void ErrorIsReturnedWhenValueDoesntRespectTheTypeDefinedInTheSchemaHTTPPA #line 54 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table210 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table212 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table210.AddRow(new string[] { + table212.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table210.AddRow(new string[] { + table212.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"path\": \"active\", \"value\" : 1234 } ]"}); #line 56 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table210, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table212, "And "); #line hidden #line 60 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -356,25 +356,25 @@ public void ErrorIsReturnedWhenTryingToSetNullValueToARequiredAttributeHTTPPATCH else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table211 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table213 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table211.AddRow(new string[] { + table213.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table211.AddRow(new string[] { + table213.AddRow(new string[] { "userName", "bjen"}); - table211.AddRow(new string[] { + table213.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table211.AddRow(new string[] { + table213.AddRow(new string[] { "employeeNumber", "100"}); #line 69 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table211, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table213, "When "); #line hidden #line 76 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -382,17 +382,17 @@ public void ErrorIsReturnedWhenTryingToSetNullValueToARequiredAttributeHTTPPATCH #line 77 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table212 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table214 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table212.AddRow(new string[] { + table214.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table212.AddRow(new string[] { + table214.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\": \"userName\", \"value\" : \"\" } ]"}); #line 79 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table212, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table214, "And "); #line hidden #line 83 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -524,24 +524,24 @@ public void ErrorIsReturnedWhenPassInvalidJSONObjectInSubAttribute() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table213 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table215 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table213.AddRow(new string[] { + table215.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table213.AddRow(new string[] { + table215.AddRow(new string[] { "userName", "bjen"}); - table213.AddRow(new string[] { + table215.AddRow(new string[] { "employeeNumber", "number"}); - table213.AddRow(new string[] { + table215.AddRow(new string[] { "name", "{"}); #line 112 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table213, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table215, "When "); #line hidden #line 118 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -583,24 +583,24 @@ public void ErrorIsReturnedWhenPassInvalidBooleanHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table214 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table216 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table214.AddRow(new string[] { + table216.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table214.AddRow(new string[] { + table216.AddRow(new string[] { "userName", "bjen"}); - table214.AddRow(new string[] { + table216.AddRow(new string[] { "employeeNumber", "number"}); - table214.AddRow(new string[] { + table216.AddRow(new string[] { "active", "test"}); #line 127 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table214, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table216, "When "); #line hidden #line 133 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -642,24 +642,24 @@ public void ErrorIsReturnedWhenPassInvalidDecimalHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table215 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table217 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table215.AddRow(new string[] { + table217.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table215.AddRow(new string[] { + table217.AddRow(new string[] { "userName", "bjen"}); - table215.AddRow(new string[] { + table217.AddRow(new string[] { "employeeNumber", "number"}); - table215.AddRow(new string[] { + table217.AddRow(new string[] { "age", "test"}); #line 142 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table215, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table217, "When "); #line hidden #line 148 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -701,24 +701,24 @@ public void ErrorIsReturnedWhenPassInvalidDateTimeHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table216 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table218 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table216.AddRow(new string[] { + table218.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table216.AddRow(new string[] { + table218.AddRow(new string[] { "userName", "bjen"}); - table216.AddRow(new string[] { + table218.AddRow(new string[] { "employeeNumber", "number"}); - table216.AddRow(new string[] { + table218.AddRow(new string[] { "birthDate", "test"}); #line 157 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table216, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table218, "When "); #line hidden #line 163 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -760,24 +760,24 @@ public void ErrorIsReturnedWhenPassInvalidIntHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table217 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table219 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table217.AddRow(new string[] { + table219.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table217.AddRow(new string[] { + table219.AddRow(new string[] { "userName", "bjen"}); - table217.AddRow(new string[] { + table219.AddRow(new string[] { "employeeNumber", "number"}); - table217.AddRow(new string[] { + table219.AddRow(new string[] { "nbPoints", "test"}); #line 172 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table217, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table219, "When "); #line hidden #line 178 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -819,24 +819,24 @@ public void ErrorIsReturnedWhenPassInvalidBase64HTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table218 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table220 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table218.AddRow(new string[] { + table220.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table218.AddRow(new string[] { + table220.AddRow(new string[] { "userName", "bjen"}); - table218.AddRow(new string[] { + table220.AddRow(new string[] { "employeeNumber", "number"}); - table218.AddRow(new string[] { + table220.AddRow(new string[] { "eidCertificate", "%HELLO%"}); #line 187 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table218, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table220, "When "); #line hidden #line 193 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -878,15 +878,15 @@ public void ErrorIsReturnedWhenRequiredAttributeIsMissingHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table219 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table221 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table219.AddRow(new string[] { + table221.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); #line 202 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table219, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table221, "When "); #line hidden #line 205 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -929,21 +929,21 @@ public void ErrorIsReturnedWhenRequiredAttributeIsEmptyHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table220 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table222 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table220.AddRow(new string[] { + table222.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table220.AddRow(new string[] { + table222.AddRow(new string[] { "userName", ""}); - table220.AddRow(new string[] { + table222.AddRow(new string[] { "employeeNumber", ""}); #line 214 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table220, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table222, "When "); #line hidden #line 219 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -986,11 +986,11 @@ public void ErrorIsReturnedWhenSchemasAttributeIsMissingHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table221 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table223 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); #line 228 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table221, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table223, "When "); #line hidden #line 231 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1032,14 +1032,14 @@ public void ErrorIsReturnedWhenSchemaIsNotValidHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table222 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table224 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table222.AddRow(new string[] { + table224.AddRow(new string[] { "schemas", "[ \"invalidschema\" ]"}); #line 240 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table222, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table224, "When "); #line hidden #line 244 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1085,45 +1085,45 @@ public void ErrorIsReturnedWhenTryingToAddTwoResourcesWithTheSameUniqueAttribute else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table223 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table225 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table223.AddRow(new string[] { + table225.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table223.AddRow(new string[] { + table225.AddRow(new string[] { "userName", "bjen"}); - table223.AddRow(new string[] { + table225.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table223.AddRow(new string[] { + table225.AddRow(new string[] { "employeeNumber", "number"}); #line 253 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table223, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table225, "When "); #line hidden - TechTalk.SpecFlow.Table table224 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table226 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table224.AddRow(new string[] { + table226.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table224.AddRow(new string[] { + table226.AddRow(new string[] { "userName", "bjen"}); - table224.AddRow(new string[] { + table226.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table224.AddRow(new string[] { + table226.AddRow(new string[] { "employeeNumber", "number"}); #line 261 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table224, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table226, "When "); #line hidden #line 268 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1248,11 +1248,11 @@ public void ErrorIsReturnedWhenSchemasAttributeIsMissingHTTPPUT() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table225 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table227 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); #line 298 - testRunner.When("execute HTTP PUT JSON request \'http://localhost/Users/id\'", ((string)(null)), table225, "When "); + testRunner.When("execute HTTP PUT JSON request \'http://localhost/Users/id\'", ((string)(null)), table227, "When "); #line hidden #line 301 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1294,14 +1294,14 @@ public void ErrorIsReturnedWhenSchemaIsNotValidHTTPPUT() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table226 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table228 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table226.AddRow(new string[] { + table228.AddRow(new string[] { "schemas", "[ \"invalidschema\" ]"}); #line 310 - testRunner.When("execute HTTP PUT JSON request \'http://localhost/Users/id\'", ((string)(null)), table226, "When "); + testRunner.When("execute HTTP PUT JSON request \'http://localhost/Users/id\'", ((string)(null)), table228, "When "); #line hidden #line 314 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1343,15 +1343,15 @@ public void ErrorIsReturnedWhenTryingToUpdateAnUnknownResourceHTTPPUT() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table227 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table229 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table227.AddRow(new string[] { + table229.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); #line 323 - testRunner.When("execute HTTP PUT JSON request \'http://localhost/Users/id\'", ((string)(null)), table227, "When "); + testRunner.When("execute HTTP PUT JSON request \'http://localhost/Users/id\'", ((string)(null)), table229, "When "); #line hidden #line 327 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1393,25 +1393,25 @@ public void ErrorIsReturnedWhenUpdateAndRequiredAttributeIsMissingHTTPPUT() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table228 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table230 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table228.AddRow(new string[] { + table230.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table228.AddRow(new string[] { + table230.AddRow(new string[] { "userName", "bjen"}); - table228.AddRow(new string[] { + table230.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table228.AddRow(new string[] { + table230.AddRow(new string[] { "employeeNumber", "number"}); #line 336 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table228, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table230, "When "); #line hidden #line 343 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1419,17 +1419,17 @@ public void ErrorIsReturnedWhenUpdateAndRequiredAttributeIsMissingHTTPPUT() #line 344 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table229 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table231 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table229.AddRow(new string[] { + table231.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\" ]"}); - table229.AddRow(new string[] { + table231.AddRow(new string[] { "employeeNumber", "01"}); #line 346 - testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table229, "And "); + testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table231, "And "); #line hidden #line 351 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1469,28 +1469,28 @@ public void CheckImmutableAttributeCannotBeUpdatedWithADifferentValue() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table230 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table232 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table230.AddRow(new string[] { + table232.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table230.AddRow(new string[] { + table232.AddRow(new string[] { "userName", "bjen"}); - table230.AddRow(new string[] { + table232.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table230.AddRow(new string[] { + table232.AddRow(new string[] { "employeeNumber", "number"}); - table230.AddRow(new string[] { + table232.AddRow(new string[] { "immutable", "str"}); #line 360 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table230, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table232, "When "); #line hidden #line 368 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1498,24 +1498,24 @@ public void CheckImmutableAttributeCannotBeUpdatedWithADifferentValue() #line 369 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table231 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table233 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table231.AddRow(new string[] { + table233.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table231.AddRow(new string[] { + table233.AddRow(new string[] { "userName", "bjen"}); - table231.AddRow(new string[] { + table233.AddRow(new string[] { "employeeNumber", "number"}); - table231.AddRow(new string[] { + table233.AddRow(new string[] { "immutable", "str2"}); #line 370 - testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table231, "And "); + testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table233, "And "); #line hidden #line 377 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1554,28 +1554,28 @@ public void CheckComplexImmutableAttributeCannotBeUpdatedWithADifferentValue() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table232 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table234 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table232.AddRow(new string[] { + table234.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table232.AddRow(new string[] { + table234.AddRow(new string[] { "userName", "bjen"}); - table232.AddRow(new string[] { + table234.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table232.AddRow(new string[] { + table234.AddRow(new string[] { "employeeNumber", "number"}); - table232.AddRow(new string[] { + table234.AddRow(new string[] { "subImmutableComplex", "[ { \"value\": \"immutable\", \"type\": \"type\" } ]"}); #line 386 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table232, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table234, "When "); #line hidden #line 394 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1583,24 +1583,24 @@ public void CheckComplexImmutableAttributeCannotBeUpdatedWithADifferentValue() #line 395 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table233 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table235 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table233.AddRow(new string[] { + table235.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table233.AddRow(new string[] { + table235.AddRow(new string[] { "userName", "bjen"}); - table233.AddRow(new string[] { + table235.AddRow(new string[] { "employeeNumber", "number"}); - table233.AddRow(new string[] { + table235.AddRow(new string[] { "subImmutableComplex", "[ { \"value\": \"invalidImmutable\", \"type\": \"invalidType\" } ]"}); #line 397 - testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table233, "And "); + testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table235, "And "); #line hidden #line 404 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1639,34 +1639,34 @@ public void CheckRecordCannotBeAddedWhenOneImmutableRecordIsMissing() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table234 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table236 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table234.AddRow(new string[] { + table236.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table234.AddRow(new string[] { + table236.AddRow(new string[] { "userName", "bjen"}); - table234.AddRow(new string[] { + table236.AddRow(new string[] { "externalId", "externalid"}); - table234.AddRow(new string[] { + table236.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table234.AddRow(new string[] { + table236.AddRow(new string[] { "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User", "{ \"employeeNumber\" : \"number\" }"}); - table234.AddRow(new string[] { + table236.AddRow(new string[] { "eidCertificate", "aGVsbG8="}); - table234.AddRow(new string[] { + table236.AddRow(new string[] { "subImmutableComplex", "[ { \"value\": \"value\" } ]"}); #line 412 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table234, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table236, "When "); #line hidden #line 422 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1674,20 +1674,20 @@ public void CheckRecordCannotBeAddedWhenOneImmutableRecordIsMissing() #line 423 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table235 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table237 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table235.AddRow(new string[] { + table237.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\" ]"}); - table235.AddRow(new string[] { + table237.AddRow(new string[] { "userName", "bjen"}); - table235.AddRow(new string[] { + table237.AddRow(new string[] { "subImmutableComplex", "[ { \"value\": \"secondValue\" }, { \"value\": \"thirdValue\" } ]"}); #line 424 - testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table235, "And "); + testRunner.And("execute HTTP PUT JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table237, "And "); #line hidden #line 430 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1726,11 +1726,11 @@ public void ErrorIsReturnedWhenSchemasAttributeIsMissingHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table236 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table238 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); #line 438 - testRunner.When("execute HTTP PATCH JSON request \'http://localhost/Users/id\'", ((string)(null)), table236, "When "); + testRunner.When("execute HTTP PATCH JSON request \'http://localhost/Users/id\'", ((string)(null)), table238, "When "); #line hidden #line 441 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1772,14 +1772,14 @@ public void ErrorIsReturnedWhenSchemaIsNotValidHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table237 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table239 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table237.AddRow(new string[] { + table239.AddRow(new string[] { "schemas", "[ \"invalidschema\" ]"}); #line 451 - testRunner.When("execute HTTP PATCH JSON request \'http://localhost/Users/id\'", ((string)(null)), table237, "When "); + testRunner.When("execute HTTP PATCH JSON request \'http://localhost/Users/id\'", ((string)(null)), table239, "When "); #line hidden #line 455 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1821,17 +1821,17 @@ public void ErrorIsReturnedWhenTryingToPatchAnUnknownResourceHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table238 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table240 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table238.AddRow(new string[] { + table240.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table238.AddRow(new string[] { + table240.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"path\": \"name\", \"value\" : \"\" } ]"}); #line 464 - testRunner.When("execute HTTP PATCH JSON request \'http://localhost/Users/id\'", ((string)(null)), table238, "When "); + testRunner.When("execute HTTP PATCH JSON request \'http://localhost/Users/id\'", ((string)(null)), table240, "When "); #line hidden #line 469 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1876,35 +1876,35 @@ public void ErrorIsReturnedWhenTryingToRemoveAttributeAndPathIsNotSpecifiedHTTPP else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table239 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table241 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table239.AddRow(new string[] { + table241.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table239.AddRow(new string[] { + table241.AddRow(new string[] { "userName", "bjen"}); - table239.AddRow(new string[] { + table241.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table239.AddRow(new string[] { + table241.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table239.AddRow(new string[] { + table241.AddRow(new string[] { "employeeNumber", "number"}); - table239.AddRow(new string[] { + table241.AddRow(new string[] { "scores", "{ \"math\" : [ { \"score\" : \"10\" } ] }"}); - table239.AddRow(new string[] { + table241.AddRow(new string[] { "roles", "[ \"role1\", \"role2\" ]"}); #line 478 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table239, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table241, "When "); #line hidden #line 488 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1912,17 +1912,17 @@ public void ErrorIsReturnedWhenTryingToRemoveAttributeAndPathIsNotSpecifiedHTTPP #line 489 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table240 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table242 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table240.AddRow(new string[] { + table242.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table240.AddRow(new string[] { + table242.AddRow(new string[] { "Operations", "[ { \"op\" : \"remove\" } ]"}); #line 490 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table240, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table242, "And "); #line hidden #line 495 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -1964,35 +1964,35 @@ public void ErrorIsReturnedWhenTryingToAddAttributeAndPathIsNotValidHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table241 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table243 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table241.AddRow(new string[] { + table243.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table241.AddRow(new string[] { + table243.AddRow(new string[] { "userName", "bjen"}); - table241.AddRow(new string[] { + table243.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table241.AddRow(new string[] { + table243.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table241.AddRow(new string[] { + table243.AddRow(new string[] { "employeeNumber", "number"}); - table241.AddRow(new string[] { + table243.AddRow(new string[] { "scores", "{ \"math\" : [ { \"score\" : \"10\" } ] }"}); - table241.AddRow(new string[] { + table243.AddRow(new string[] { "roles", "[ \"role1\", \"role2\" ]"}); #line 502 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table241, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table243, "When "); #line hidden #line 512 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2000,17 +2000,17 @@ public void ErrorIsReturnedWhenTryingToAddAttributeAndPathIsNotValidHTTPPATCH() #line 513 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table242 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table244 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table242.AddRow(new string[] { + table244.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table242.AddRow(new string[] { + table244.AddRow(new string[] { "Operations", "[ { \"op\" : \"add\", \"path\": \"fakepath\" } ]"}); #line 514 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table242, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table244, "And "); #line hidden #line 518 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2049,35 +2049,35 @@ public void ErrorIsReturnedWhenTryingToPATCHAndThereIsNoMatchHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table243 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table245 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table243.AddRow(new string[] { + table245.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table243.AddRow(new string[] { + table245.AddRow(new string[] { "userName", "bjen"}); - table243.AddRow(new string[] { + table245.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table243.AddRow(new string[] { + table245.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table243.AddRow(new string[] { + table245.AddRow(new string[] { "employeeNumber", "number"}); - table243.AddRow(new string[] { + table245.AddRow(new string[] { "scores", "{ \"math\" : [ { \"score\" : \"10\" } ] }"}); - table243.AddRow(new string[] { + table245.AddRow(new string[] { "roles", "[ \"role1\", \"role2\" ]"}); #line 527 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table243, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table245, "When "); #line hidden #line 537 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2085,18 +2085,18 @@ public void ErrorIsReturnedWhenTryingToPATCHAndThereIsNoMatchHTTPPATCH() #line 538 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table244 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table246 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table244.AddRow(new string[] { + table246.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table244.AddRow(new string[] { + table246.AddRow(new string[] { "Operations", "[ { \"op\" : \"replace\", \"path\": \"phones[phoneNumber eq 03]\", \"value\" : { \"phoneNumb" + "er\": \"03\", \"type\": \"test\" } } ]"}); #line 539 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table244, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table246, "And "); #line hidden #line 544 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2135,35 +2135,35 @@ public void ErrorIsReturnedWhenOpValueIsInvalidHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table245 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table247 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table245.AddRow(new string[] { + table247.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table245.AddRow(new string[] { + table247.AddRow(new string[] { "userName", "bjen"}); - table245.AddRow(new string[] { + table247.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table245.AddRow(new string[] { + table247.AddRow(new string[] { "phones", "[ { \"phoneNumber\": \"01\", \"type\": \"mobile\" }, { \"phoneNumber\": \"02\", \"type\": \"home" + "\" } ]"}); - table245.AddRow(new string[] { + table247.AddRow(new string[] { "employeeNumber", "number"}); - table245.AddRow(new string[] { + table247.AddRow(new string[] { "scores", "{ \"math\" : [ { \"score\" : \"10\" } ] }"}); - table245.AddRow(new string[] { + table247.AddRow(new string[] { "roles", "[ \"role1\", \"role2\" ]"}); #line 551 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table245, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table247, "When "); #line hidden #line 561 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2171,17 +2171,17 @@ public void ErrorIsReturnedWhenOpValueIsInvalidHTTPPATCH() #line 562 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table246 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table248 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table246.AddRow(new string[] { + table248.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table246.AddRow(new string[] { + table248.AddRow(new string[] { "Operations", "[ { \"op\" : \"invalid-op\", \"path\": \"phones[phoneNumber eq 03]\" } ]"}); #line 563 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table246, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table248, "And "); #line hidden #line 568 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2220,27 +2220,27 @@ public void ErrorIsReturnedWhenTryingToAddANoneCanonicalValueHTTPPOST() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table247 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table249 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table247.AddRow(new string[] { + table249.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table247.AddRow(new string[] { + table249.AddRow(new string[] { "userName", "bjen"}); - table247.AddRow(new string[] { + table249.AddRow(new string[] { "externalId", "externalid"}); - table247.AddRow(new string[] { + table249.AddRow(new string[] { "type", "unsupported"}); - table247.AddRow(new string[] { + table249.AddRow(new string[] { "employeeNumber", "number"}); #line 575 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table247, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table249, "When "); #line hidden #line 583 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2282,17 +2282,17 @@ public void ErrorIsReturnedWhenEntitlmentIsAddedTwice() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table248 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table250 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table248.AddRow(new string[] { + table250.AddRow(new string[] { "schemas", "[ \"urn:customuser\" ]"}); - table248.AddRow(new string[] { + table250.AddRow(new string[] { "userName", "userName"}); #line 592 - testRunner.When("execute HTTP POST JSON request \'http://localhost/CustomUsers\'", ((string)(null)), table248, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/CustomUsers\'", ((string)(null)), table250, "When "); #line hidden #line 597 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2300,17 +2300,17 @@ public void ErrorIsReturnedWhenEntitlmentIsAddedTwice() #line 598 testRunner.And("extract \'id\' from JSON body into \'userId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table249 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table251 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table249.AddRow(new string[] { + table251.AddRow(new string[] { "schemas", "[ \"urn:entitlement\" ]"}); - table249.AddRow(new string[] { + table251.AddRow(new string[] { "displayName", "firstEntitlement"}); #line 600 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table249, "And "); + testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table251, "And "); #line hidden #line 605 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2318,17 +2318,17 @@ public void ErrorIsReturnedWhenEntitlmentIsAddedTwice() #line 606 testRunner.And("extract \'id\' from JSON body into \'firstEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table250 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table252 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table250.AddRow(new string[] { + table252.AddRow(new string[] { "schemas", "[ \"urn:entitlement\" ]"}); - table250.AddRow(new string[] { + table252.AddRow(new string[] { "displayName", "secondEntitlement"}); #line 608 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table250, "And "); + testRunner.And("execute HTTP POST JSON request \'http://localhost/Entitlements\'", ((string)(null)), table252, "And "); #line hidden #line 613 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2336,31 +2336,31 @@ public void ErrorIsReturnedWhenEntitlmentIsAddedTwice() #line 614 testRunner.And("extract \'id\' from JSON body into \'secondEntitlement\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table251 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table253 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table251.AddRow(new string[] { + table253.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table251.AddRow(new string[] { + table253.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\": \"entitlements\", \"value\" : [ { \"value\": \"$firstEntitlemen" + "t$\" }, { \"value\": \"$secondEntitlement$\" } ] } ]"}); #line 616 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table251, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table253, "And "); #line hidden - TechTalk.SpecFlow.Table table252 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table254 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table252.AddRow(new string[] { + table254.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table252.AddRow(new string[] { + table254.AddRow(new string[] { "Operations", "[ { \"op\": \"add\", \"path\": \"entitlements\", \"value\" : [ { \"value\": \"$firstEntitlemen" + "t$\" }, { \"value\": \"$secondEntitlement$\" } ] } ]"}); #line 621 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table252, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/CustomUsers/$userId$\'", ((string)(null)), table254, "And "); #line hidden #line 626 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2390,20 +2390,20 @@ public void ErrorIsReturnedWhenEmails_ValueIsNotPassed() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table253 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table255 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table253.AddRow(new string[] { + table255.AddRow(new string[] { "schemas", "[ \"urn:customuser\" ]"}); - table253.AddRow(new string[] { + table255.AddRow(new string[] { "userName", "userName"}); - table253.AddRow(new string[] { + table255.AddRow(new string[] { "emails", "[ { \"primary\" : \"true\" } ]"}); #line 631 - testRunner.When("execute HTTP POST JSON request \'http://localhost/CustomUsers\'", ((string)(null)), table253, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/CustomUsers\'", ((string)(null)), table255, "When "); #line hidden #line 637 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2485,25 +2485,25 @@ public void ErrorIsReturnedWhenNameIsEmptyHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table254 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table256 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table254.AddRow(new string[] { + table256.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table254.AddRow(new string[] { + table256.AddRow(new string[] { "userName", "bjen"}); - table254.AddRow(new string[] { + table256.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table254.AddRow(new string[] { + table256.AddRow(new string[] { "employeeNumber", "100"}); #line 656 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table254, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table256, "When "); #line hidden #line 663 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2511,17 +2511,17 @@ public void ErrorIsReturnedWhenNameIsEmptyHTTPPATCH() #line 664 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table255 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table257 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table255.AddRow(new string[] { + table257.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table255.AddRow(new string[] { + table257.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"path\": \"name\", \"value\" : \"\" } ]"}); #line 666 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table255, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table257, "And "); #line hidden #line 670 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2563,25 +2563,25 @@ public void ErrorIsReturnedWhenOperationsIsEmpty() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table256 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table258 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table256.AddRow(new string[] { + table258.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table256.AddRow(new string[] { + table258.AddRow(new string[] { "userName", "bjen"}); - table256.AddRow(new string[] { + table258.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table256.AddRow(new string[] { + table258.AddRow(new string[] { "employeeNumber", "100"}); #line 679 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table256, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table258, "When "); #line hidden #line 686 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2589,17 +2589,17 @@ public void ErrorIsReturnedWhenOperationsIsEmpty() #line 687 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table257 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table259 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table257.AddRow(new string[] { + table259.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table257.AddRow(new string[] { + table259.AddRow(new string[] { "Operations", "[ ]"}); #line 689 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table257, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table259, "And "); #line hidden #line 693 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2641,25 +2641,25 @@ public void ErrorIsReturnedWhenRequiredAttributeIsNotPassedHTTPPATCH() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table258 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table260 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table258.AddRow(new string[] { + table260.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table258.AddRow(new string[] { + table260.AddRow(new string[] { "userName", "bjen"}); - table258.AddRow(new string[] { + table260.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table258.AddRow(new string[] { + table260.AddRow(new string[] { "employeeNumber", "100"}); #line 702 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table258, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table260, "When "); #line hidden #line 709 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2667,17 +2667,17 @@ public void ErrorIsReturnedWhenRequiredAttributeIsNotPassedHTTPPATCH() #line 710 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table259 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table261 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table259.AddRow(new string[] { + table261.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table259.AddRow(new string[] { + table261.AddRow(new string[] { "Operations", "[ { \"op\": \"replace\", \"path\" : \"name.givenName\" } ]"}); #line 712 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table259, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table261, "And "); #line hidden #line 717 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2719,25 +2719,25 @@ public void ErrorIsReturnedWhenTryingToRemoveARequiredAttribute() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table260 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table262 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table260.AddRow(new string[] { + table262.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table260.AddRow(new string[] { + table262.AddRow(new string[] { "userName", "bjen"}); - table260.AddRow(new string[] { + table262.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table260.AddRow(new string[] { + table262.AddRow(new string[] { "employeeNumber", "100"}); #line 726 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table260, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table262, "When "); #line hidden #line 733 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2745,17 +2745,17 @@ public void ErrorIsReturnedWhenTryingToRemoveARequiredAttribute() #line 734 testRunner.And("extract \'id\' from JSON body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table261 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table263 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table261.AddRow(new string[] { + table263.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table261.AddRow(new string[] { + table263.AddRow(new string[] { "Operations", "[ { \"op\": \"remove\", \"path\": \"employeeNumber\" } ]"}); #line 736 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table261, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$id$\'", ((string)(null)), table263, "And "); #line hidden #line 740 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2797,28 +2797,28 @@ public void ErrorIsReturnedWhenTryingToRemoveAREADONLYAttribute() else { this.ScenarioStart(); - TechTalk.SpecFlow.Table table262 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table264 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table262.AddRow(new string[] { + table264.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:User\", \"urn:ietf:params:scim:schemas:ext" + "ension:enterprise:2.0:User\" ]"}); - table262.AddRow(new string[] { + table264.AddRow(new string[] { "userName", "bjen"}); - table262.AddRow(new string[] { + table264.AddRow(new string[] { "externalId", "externalid"}); - table262.AddRow(new string[] { + table264.AddRow(new string[] { "name", "{ \"formatted\" : \"formatted\", \"familyName\": \"familyName\", \"givenName\": \"givenName\"" + " }"}); - table262.AddRow(new string[] { + table264.AddRow(new string[] { "employeeNumber", "number"}); #line 749 - testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table262, "When "); + testRunner.When("execute HTTP POST JSON request \'http://localhost/Users\'", ((string)(null)), table264, "When "); #line hidden #line 757 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2826,20 +2826,20 @@ public void ErrorIsReturnedWhenTryingToRemoveAREADONLYAttribute() #line 758 testRunner.And("extract \'id\' from JSON body into \'userid\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table263 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table265 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table263.AddRow(new string[] { + table265.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:schemas:core:2.0:Group\" ]"}); - table263.AddRow(new string[] { + table265.AddRow(new string[] { "displayName", "Tour Guides"}); - table263.AddRow(new string[] { + table265.AddRow(new string[] { "members", "[ { \"value\": \"$userid$\" } ]"}); #line 760 - testRunner.And("execute HTTP POST JSON request \'http://localhost/Groups\'", ((string)(null)), table263, "And "); + testRunner.And("execute HTTP POST JSON request \'http://localhost/Groups\'", ((string)(null)), table265, "And "); #line hidden #line 766 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); @@ -2847,17 +2847,17 @@ public void ErrorIsReturnedWhenTryingToRemoveAREADONLYAttribute() #line 767 testRunner.And("extract \'id\' from JSON body into \'groupId\'", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table264 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table266 = new TechTalk.SpecFlow.Table(new string[] { "Key", "Value"}); - table264.AddRow(new string[] { + table266.AddRow(new string[] { "schemas", "[ \"urn:ietf:params:scim:api:messages:2.0:PatchOp\" ]"}); - table264.AddRow(new string[] { + table266.AddRow(new string[] { "Operations", "[ { \"op\": \"remove\", \"path\": \"groups[value eq \\\"$groupId$\\\"].type\" } ]"}); #line 769 - testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$userid$\'", ((string)(null)), table264, "And "); + testRunner.And("execute HTTP PATCH JSON request \'http://localhost/Users/$userid$\'", ((string)(null)), table266, "And "); #line hidden #line 774 testRunner.And("extract JSON from body", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); diff --git a/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Program.cs b/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Program.cs index 99453b786..7deaff21a 100644 --- a/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Program.cs +++ b/tests/SimpleIdServer.Scim.Host.Acceptance.Tests/Program.cs @@ -1,5 +1,7 @@ // Copyright (c) SimpleIdServer. All rights reserved. // Licensed under the Apache License, Version 2.0. See LICENSE in the project root for license information. +using MassTransit; +using MassTransit.MessageData; using Microsoft.AspNetCore.Authentication; using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; @@ -181,6 +183,7 @@ void ConfigureServices(IServiceCollection services) }); // services.AddAuthorization(opts => opts.AddDefaultSCIMAuthorizationPolicy()); services.AddAuthentication(SCIMConstants.AuthenticationScheme).AddCustomAuthentication(c => { }); + services.AddSingleton(new InMemoryMessageDataRepository()); services.AddSIDScim(o => { o.MaxOperations = 3;