public void SetParameter_RemovesNullParameters() { // Arrange var message = new OpenIddictMessage(); // Act message.SetParameter("null", null); // Assert Assert.Empty(message.GetParameters()); }
public void Constructor_ExtractsSingleValuedParameters() { // Arrange and act var message = new OpenIddictMessage(new[] { new KeyValuePair <string, string[]>("parameter", new[] { "Fabrikam" }) }); // Assert Assert.Single(message.GetParameters()); Assert.Equal("Fabrikam", message.GetParameter("parameter")?.Value); }
public void Constructor_SupportsMultiValuedParameters() { // Arrange and act var message = new OpenIddictMessage(new[] { new KeyValuePair <string, string[]>("parameter", new[] { "Fabrikam", "Contoso" }) }); // Assert Assert.Single(message.GetParameters()); Assert.Equal(new[] { "Fabrikam", "Contoso" }, (string[])message.GetParameter("parameter")); }
public void Constructor_PreservesEmptyParameters() { // Arrange and act var message = new OpenIddictMessage(new[] { new KeyValuePair <string, OpenIddictParameter>("null-parameter", (string)null), new KeyValuePair <string, OpenIddictParameter>("empty-parameter", string.Empty) }); // Assert Assert.Equal(2, message.GetParameters().Count()); }
public void Constructor_IgnoresNamelessParameters() { // Arrange and act var message = new OpenIddictMessage(new[] { new KeyValuePair <string, OpenIddictParameter>(null, new OpenIddictParameter()), new KeyValuePair <string, OpenIddictParameter>(string.Empty, new OpenIddictParameter()) }); // Assert Assert.Empty(message.GetParameters()); }
public void Constructor_IgnoresDuplicateParameters() { // Arrange and act var message = new OpenIddictMessage(new[] { new KeyValuePair <string, OpenIddictParameter>("parameter", "Fabrikam"), new KeyValuePair <string, OpenIddictParameter>("parameter", "Contoso") }); // Assert Assert.Single(message.GetParameters()); Assert.Equal("Fabrikam", message.GetParameter("parameter")); }
public void SetParameter_RemovesEmptyParameters() { // Arrange var message = new OpenIddictMessage(); // Act message.SetParameter("string", string.Empty); message.SetParameter("array", JsonSerializer.Deserialize <JsonElement>("[]")); message.SetParameter("object", JsonSerializer.Deserialize <JsonElement>("{}")); message.SetParameter("value", JsonSerializer.Deserialize <JsonElement>( @"{""property"":""""}").GetProperty("property").GetString()); // Assert Assert.Empty(message.GetParameters()); }
public void GetParameters_EnumeratesParameters() { // Arrange var parameters = new Dictionary <string, OpenIddictParameter> { ["int"] = int.MaxValue, ["long"] = long.MaxValue, ["string"] = "value" }; var message = new OpenIddictMessage(parameters); // Act and assert Assert.Equal(parameters, message.GetParameters()); }
public void SetParameter_RemovesEmptyParameters() { // Arrange var message = new OpenIddictMessage(); // Act message.SetParameter("string", string.Empty); message.SetParameter("array", JsonSerializer.Deserialize <JsonElement>("[]")); message.SetParameter("object", JsonSerializer.Deserialize <JsonElement>("{}")); message.SetParameter("value", JsonSerializer.Deserialize <JsonElement>( @"{""property"":""""}").GetProperty("property").GetString()); #if SUPPORTS_JSON_NODES message.SetParameter("node_array", new JsonArray()); message.SetParameter("node_object", new JsonObject()); message.SetParameter("node_value", JsonValue.Create(string.Empty)); #endif // Assert Assert.Empty(message.GetParameters()); }