Пример #1
0
        public void VipLevel_Update_Switches_Connection_To_BetLimitGroup_If_Name_Equals_Another_Group()
        {
            var betLimitGroup1 = new BetLimitGroup
            {
                Name       = TestDataGenerator.GetRandomAlphabeticString(7),
                ExternalId = TestDataGenerator.GetRandomNumber(50, 1),
            };

            var betLimitGroup2 = new BetLimitGroup
            {
                Name       = TestDataGenerator.GetRandomAlphabeticString(7),
                ExternalId = TestDataGenerator.GetRandomNumber(50, 1),
            };

            var betLimitGroup1Id = _gameManagement.CreateBetLimitGroup(betLimitGroup1);
            var betLimitGroup2Id = _gameManagement.CreateBetLimitGroup(betLimitGroup2);

            betLimitGroup1 = _queries.GetBetLimitGroup(betLimitGroup1Id);
            betLimitGroup2 = _queries.GetBetLimitGroup(betLimitGroup2Id);

            var vipLevelId = CreateVipLevel(betLimitGroup1.Name);
            var betLimitGroupByVipLevelAfterCreate = _queries.GetBetLimitGroupByVipLevel(vipLevelId);

            UpdateVipLevel(vipLevelId, betLimitGroup2.Name);
            var betLimitGroupByVipLevelAfterUpdate = _queries.GetBetLimitGroupByVipLevel(vipLevelId);

            Assert.NotNull(betLimitGroupByVipLevelAfterCreate);
            Assert.NotNull(betLimitGroupByVipLevelAfterUpdate);
            Assert.AreEqual(betLimitGroup1.Id, betLimitGroupByVipLevelAfterCreate.Id);
            Assert.AreEqual(betLimitGroup2.Id, betLimitGroupByVipLevelAfterUpdate.Id);
        }
Пример #2
0
        public void Can_Update_BetLimitGroup()
        {
            var betLimitGroup = new BetLimitGroup
            {
                Name       = TestDataGenerator.GetRandomAlphabeticString(7),
                ExternalId = TestDataGenerator.GetRandomNumber(50, 1),
            };

            var betLimitGroupId = _gameManagement.CreateBetLimitGroup(betLimitGroup);

            betLimitGroup            = _queries.GetBetLimitGroup(betLimitGroupId);
            betLimitGroup.Name       = TestDataGenerator.GetRandomAlphabeticString(7);
            betLimitGroup.ExternalId = TestDataGenerator.GetRandomNumber(50, 1);

            _gameManagement.UpdateBetLimitGroup(betLimitGroup);
            var resultGroup = _queries.GetBetLimitGroup(betLimitGroupId);

            Assert.NotNull(resultGroup);
            Assert.AreEqual(betLimitGroup.Name, resultGroup.Name);
            Assert.AreEqual(betLimitGroup.ExternalId, resultGroup.ExternalId);
            Assert.NotNull(resultGroup.UpdatedBy);
            Assert.NotNull(resultGroup.UpdatedDate);
            Assert.NotNull(resultGroup.CreatedBy);
            Assert.NotNull(resultGroup.CreatedDate);
        }
Пример #3
0
 public BetLimitGroupCreated(BetLimitGroup betLimitGroup)
 {
     Id          = betLimitGroup.Id;
     Name        = betLimitGroup.Name;
     ExternalId  = betLimitGroup.ExternalId;
     UpdatedDate = betLimitGroup.UpdatedDate.GetValueOrDefault();
     UpdatedBy   = betLimitGroup.UpdatedBy;
 }
Пример #4
0
        public Guid UpdateBetLimitGroup(BetLimitGroup betLimitGroup)
        {
            betLimitGroup.UpdatedBy   = _actorInfoProvider.Actor.UserName;
            betLimitGroup.UpdatedDate = DateTimeOffset.UtcNow;

            _repository.BetLimitGroups.AddOrUpdate(betLimitGroup);

            _repository.SaveChanges();
            _eventBus.Publish(new BetLimitGroupUpdated(betLimitGroup));

            return(betLimitGroup.Id);
        }
Пример #5
0
        public Guid CreateBetLimitGroup(BetLimitGroup betLimitGroup)
        {
            if (betLimitGroup.Id.Equals(Guid.Empty))
            {
                betLimitGroup.Id = Guid.NewGuid();
            }

            betLimitGroup.CreatedBy   = _actorInfoProvider.Actor.UserName;
            betLimitGroup.CreatedDate = DateTimeOffset.UtcNow;

            _repository.BetLimitGroups.Add(betLimitGroup);

            _repository.SaveChanges();
            _eventBus.Publish(new BetLimitGroupCreated(betLimitGroup));

            return(betLimitGroup.Id);
        }
Пример #6
0
        public void VipLevel_Creation_Do_Not_Creates_Connection_To_BetLimitGroup_If_Name_Equals()
        {
            var betLimitGroup = new BetLimitGroup
            {
                Name       = TestDataGenerator.GetRandomAlphabeticString(7),
                ExternalId = TestDataGenerator.GetRandomNumber(50, 1),
            };

            var betLimitGroupId = _gameManagement.CreateBetLimitGroup(betLimitGroup);

            betLimitGroup = _queries.GetBetLimitGroup(betLimitGroupId);

            var vipLevelId = CreateVipLevel(betLimitGroup.Name + "x");
            var betLimitGroupByVipLevel = _queries.GetBetLimitGroupByVipLevel(vipLevelId);

            Assert.Null(betLimitGroupByVipLevel);
        }
Пример #7
0
        public BetLimitGroup CreateBetLimitGroup(string name, int externalGameId = 1, bool skipCreationIfAlreadyExists = true)
        {
            if (skipCreationIfAlreadyExists)
            {
                var existedGroup = _gamesRepository.BetLimitGroups.SingleOrDefault(x => x.Name == name);
                if (existedGroup != null)
                {
                    return(existedGroup);
                }
            }

            var betLimitGroup = new BetLimitGroup
            {
                Id         = Guid.NewGuid(),
                Name       = name,
                ExternalId = externalGameId,
            };

            _gameManagement.CreateBetLimitGroup(betLimitGroup);

            return(_gameQueries.GetBetLimitGroup(betLimitGroup.Id));
        }