public void BeforeVoteMadeCancel()
        {
            var voteRepository = Substitute.For<IVoteRepository>();
            var voteService = new VoteService(voteRepository, _api);

            EventManager.Instance.BeforeVoteMade += EventManagerInstanceBeforeVoteMadeCancel;

            var vote = new Vote { Amount = 999 };

            _eventTestStr = string.Empty;
            voteService.Add(vote);

            voteRepository.DidNotReceive().Update((Arg.Is<Vote>(x => x.Amount == 999)));
            EventManager.Instance.BeforeVoteMade -= EventManagerInstanceBeforeVoteMadeCancel;
        }
        public void AfterVoteMade()
        {
            var voteRepository = Substitute.For<IVoteRepository>();
            var voteService = new VoteService(voteRepository, _api);

            EventManager.Instance.AfterVoteMade += EventManagerInstanceAfterVoteMade;

            var vote = new Vote { Amount = 1 };

            _eventTestStr = string.Empty;
            voteService.Add(vote);

            Assert.IsTrue(_eventTestStr == TestString);
            EventManager.Instance.AfterVoteMade -= EventManagerInstanceAfterVoteMade;
        }
        public void BeforeVoteMadeAllow()
        {
            var voteRepository = Substitute.For<IVoteRepository>();
            var voteService = new VoteService(voteRepository, _api);

            EventManager.Instance.BeforeVoteMade += EventManagerInstanceBeforeVoteMadeAllow;

            var vote = new Vote { Amount = 1 };

            _eventTestStr = string.Empty;
            voteService.Add(vote);

            voteRepository.Received().Add((Arg.Is<Vote>(x => x.Amount == 1)));
            EventManager.Instance.BeforeVoteMade -= EventManagerInstanceBeforeVoteMadeAllow;
        }