public void TestUserStatus()

in src/Shared/Infrastructure/Infrastructure.Persistence.IntegrationTests/UserRepositoryTests.cs [74:107]


        public void TestUserStatus()
        {
            var repository = ServiceProvider.GetService<IUserRepository>();
            var userInfo = new UserInfo
                (
                    userToken: "registrationToken1",
                    userName: "joe",
                    statusId: 1,
                    statusChangedOn: new DateTime(2020, 4, 1)
                );

            repository.RegisterUser(userInfo);
            var userStatus = new UserStateStatus
            {
                UserToken = userInfo.UserToken,
                StatusId = 2,
                StatusChangedOn = new DateTime(2020, 4, 4)
            };
            repository.SetUserStatus(userStatus);

            var newUserInfo = repository.GetUserInfo(userInfo.UserToken);

            Assert.That(newUserInfo, Is.Not.EqualTo(userInfo));
            Assert.That(newUserInfo.StatusId, Is.EqualTo(userStatus.StatusId));
            Assert.That(newUserInfo.StatusChangedOn, Is.EqualTo(userStatus.StatusChangedOn));

            var userStateHistory = new Table<UserStateHistory>(CassandraSession.Session)
                .FirstOrDefault(row => row.UserToken == userStatus.UserToken && row.StatusChangedOn == userStatus.StatusChangedOn)
                .Execute();

            Assert.That(userStateHistory, Is.Not.Null);
            Assert.That(userStateHistory.StatusId, Is.EqualTo(userStatus.StatusId));
            Assert.That(userStateHistory.StatusChangedOn, Is.EqualTo(userStatus.StatusChangedOn));
        }