public void parse_returns_correct_claims_on_valid_string(string[] input) { var claims = input .Select(i => i.Split('|')) .Select(s => new Claim(s[0], s[1])) .ToArray(); var expected = new SimpleToken(claims); SimpleToken actual; var result = SimpleToken.TryParse(expected.ToString(), out actual); Assert.True(result); Assert.True(expected.SequenceEqual(actual, new ClaimComparer())); }