Example #1
0
        public void ShouldGetTimeoutAfterRemovingReputation()
        {
            _dateTimeMock.Setup(dt => dt.Now).Returns(DateTime.Now);
            var expectedReputation = _data.Senne.Reputation.Value - 1;

            Assert.False(_reputationProvider.RemoveReputationHasTimeout(_data.Peter, _data.Senne));

            _reputationProvider.RemoveReputation(_data.Peter, _data.Senne);

            Assert.True(_reputationProvider.RemoveReputationHasTimeout(_data.Peter, _data.Senne));
            Assert.False(_reputationProvider.RemoveReputationHasTimeout(_data.Senne, _data.Peter));
            Assert.Equal(expectedReputation, _data.Senne.Reputation.Value);
        }
Example #2
0
        public async Task RemoveReputation(MiunieUser invoker, MiunieUser target, MiunieChannel c)
        {
            if (invoker.Id == target.Id)
            {
                await _discordMessages.SendMessage(c, PhraseKey.CANNOT_SELF_REP, invoker.Name);

                return;
            }

            if (_reputationProvider.RemoveReputationHasTimeout(invoker, target))
            {
                return;
            }

            _reputationProvider.RemoveReputation(invoker, target);
            await _discordMessages.SendMessage(c, PhraseKey.REPUTATION_TAKEN, invoker.Name, target.Name);
        }