public void NewSerializerCanReadInteropTicket() { var identity = new ClaimsIdentity("scheme"); identity.AddClaim(new Claim("Test", "Value")); var expires = DateTime.Today; var issued = new DateTime(1979, 11, 11); var properties = new Owin.Security.AuthenticationProperties(); properties.IsPersistent = true; properties.RedirectUri = "/redirect"; properties.Dictionary["key"] = "value"; properties.ExpiresUtc = expires; properties.IssuedUtc = issued; var interopTicket = new Owin.Security.AuthenticationTicket(identity, properties); var interopSerializer = new AspNetTicketSerializer(); var bytes = interopSerializer.Serialize(interopTicket); var newSerializer = new TicketSerializer(); var newTicket = newSerializer.Deserialize(bytes); Assert.NotNull(newTicket); Assert.Equal(1, newTicket.Principal.Identities.Count()); var newIdentity = newTicket.Principal.Identity as ClaimsIdentity; Assert.NotNull(newIdentity); Assert.Equal("scheme", newIdentity.AuthenticationType); Assert.True(newIdentity.HasClaim(c => c.Type == "Test" && c.Value == "Value")); Assert.NotNull(newTicket.Properties); Assert.True(newTicket.Properties.IsPersistent); Assert.Equal("/redirect", newTicket.Properties.RedirectUri); Assert.Equal("value", newTicket.Properties.Items["key"]); Assert.Equal(expires, newTicket.Properties.ExpiresUtc); Assert.Equal(issued, newTicket.Properties.IssuedUtc); }
public void InteropSerializerCanReadNewTicket() { var user = new ClaimsPrincipal(); var identity = new ClaimsIdentity("scheme"); identity.AddClaim(new Claim("Test", "Value")); user.AddIdentity(identity); var expires = DateTime.Today; var issued = new DateTime(1979, 11, 11); var properties = new AspNetCore.Http.Authentication.AuthenticationProperties(); properties.IsPersistent = true; properties.RedirectUri = "/redirect"; properties.Items["key"] = "value"; properties.ExpiresUtc = expires; properties.IssuedUtc = issued; var newTicket = new AspNetCore.Authentication.AuthenticationTicket(user, properties, "scheme"); var newSerializer = new TicketSerializer(); var bytes = newSerializer.Serialize(newTicket); var interopSerializer = new AspNetTicketSerializer(); var interopTicket = interopSerializer.Deserialize(bytes); Assert.NotNull(interopTicket); var newIdentity = interopTicket.Identity; Assert.NotNull(newIdentity); Assert.Equal("scheme", newIdentity.AuthenticationType); Assert.True(newIdentity.HasClaim(c => c.Type == "Test" && c.Value == "Value")); Assert.NotNull(interopTicket.Properties); Assert.True(interopTicket.Properties.IsPersistent); Assert.Equal("/redirect", interopTicket.Properties.RedirectUri); Assert.Equal("value", interopTicket.Properties.Dictionary["key"]); Assert.Equal(expires, interopTicket.Properties.ExpiresUtc); Assert.Equal(issued, interopTicket.Properties.IssuedUtc); }