예제 #1
0
        public async Task CanRemoveRoles()
        {
            const string roleName = "test";

            ElasticIdentityUser noRolesUser = new ElasticIdentityUser(nameof(noRolesUser));
            await _store.CreateAsync(noRolesUser, CancellationToken.None);

            var user = await _store.FindByNameAsync(noRolesUser.NormalizedUserName, CancellationToken.None);

            Assert.Empty(user.Roles);

            await _store.AddToRoleAsync(user, roleName, CancellationToken.None);

            await SaveToElastic(user);

            //reload
            user = await GetFromElastic(user.NormalizedUserName);

            Assert.NotEmpty(user.Roles);

            await _store.RemoveFromRoleAsync(user, roleName, CancellationToken.None);

            await SaveToElastic(user);

            user = await GetFromElastic(user.NormalizedUserName);

            Assert.Empty(user.Roles);
        }