private void AddClaim(UserAccount account, UserClaim claim)
        {
            if (claim == null)
            {
                throw new ArgumentNullException(nameof(claim));
            }

            if (account.HasClaim(claim.Type, claim.Value))
            {
                return;
            }
            account.AddClaim(claim);
            AddEvent(new ClaimAddedEvent {
                Account = account, Claim = claim
            });

            _logger.LogTrace(GetLogMessage("claim added"));
        }
 public void EmptyValue_Throws()
 {
     var sub = new UserAccount();
     sub.AddClaim("type", "");
 }
 public void NullValue_Throws()
 {
     var sub = new UserAccount();
     sub.AddClaim("type", null);
 }
 public void EmptyType_Throws()
 {
     var sub = new UserAccount();
     sub.AddClaim("", "value");
 }
 public void NullType_Throws()
 {
     var sub = new UserAccount();
     sub.AddClaim(null, "value");
 }