public RedisQueryTest(RedisFixture fixture) { this.fixture = fixture; if (!isArranged) { fixture.ReloadTestDataAsync().Wait(); isArranged = true; } }
public async Task Check_DataShouldBeAdded() { //Arrange and Act await fixture.ReloadTestDataAsync(); //Assert Assert.Equal(27, stockRepository.GetBranches().Count()); #region BRANCH_GROUPALL Assert.Equal(fixture.TestData.Count(i => i.IsActive), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPALL, "All")); #endregion #region BRANCH_GROUPBY_SECTOR Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.CommunicationServices), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.CommunicationServices.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.ConsumerDiscretionary), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.ConsumerDiscretionary.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.ConsumerStaples), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.ConsumerStaples.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.Energy), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.Energy.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.Financials), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.Financials.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.HealthCare), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.HealthCare.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.Industrials), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.Industrials.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.InformationTechnology), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.InformationTechnology.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.Materials), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.Materials.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.None), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.None.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.RealEstate), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.RealEstate.ToString())); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.Utilities), await stockRepository.CountAsync(StockRepository.BRANCH_GROUPBY_SECTOR, StockSector.Utilities.ToString())); #endregion #region BRANCH_SORTBY_CREATEDDATETIME long fromCreateDateTimeTicks = DateTime.UtcNow.AddMinutes(-60).Ticks; long toCreateDateTimeTicks = DateTime.UtcNow.AddMinutes(60).Ticks; IEnumerable <StockEntity> BRANCH_SORTBY_CREATEDDATETIME = await stockRepository.GetAsync(StockRepository.BRANCH_SORTBY_CREATEDDATETIME, fromCreateDateTimeTicks, toCreateDateTimeTicks); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.CreatedDateTime.Ticks >= fromCreateDateTimeTicks && i.CreatedDateTime.Ticks <= toCreateDateTimeTicks), BRANCH_SORTBY_CREATEDDATETIME.Count()); foreach (StockEntity stockEntity in BRANCH_SORTBY_CREATEDDATETIME) { Assert.InRange(stockEntity.CreatedDateTime.Ticks, fromCreateDateTimeTicks, toCreateDateTimeTicks); } #endregion #region BRANCH_GROUPBY_SECTOR_SORTBY_PRICE IEnumerable <StockEntity> BRANCH_GROUPBY_SECTOR_SORTBY_PRICE = await stockRepository.GetAsync(StockRepository.BRANCH_GROUPBY_SECTOR_SORTBY_PRICE, 88.15, 136.8, StockSector.InformationTechnology.ToString()); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.InformationTechnology && i.Price >= 88.15 && i.Price <= 136.8), BRANCH_GROUPBY_SECTOR_SORTBY_PRICE.Count()); foreach (StockEntity stockEntity in BRANCH_GROUPBY_SECTOR_SORTBY_PRICE) { Assert.InRange(stockEntity.Price, 88.15, 136.8); } #endregion #region BRANCH_GROUPBY_SECTOR_SORTBY_PRICECHANGERATE IEnumerable <StockEntity> BRANCH_GROUPBY_SECTOR_SORTBY_PRICECHANGERATE = await stockRepository.GetAsync(StockRepository.BRANCH_GROUPBY_SECTOR_SORTBY_PRICECHANGERATE, 0.10, StockSector.InformationTechnology.ToString()); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.Sector == StockSector.InformationTechnology && i.PriceChangeRate >= 0.10), BRANCH_GROUPBY_SECTOR_SORTBY_PRICECHANGERATE.Count()); foreach (StockEntity stockEntity in BRANCH_GROUPBY_SECTOR_SORTBY_PRICECHANGERATE) { Assert.True(stockEntity.PriceChangeRate >= 0.10); } #endregion #region BRANCH_GROUPBY_PROFITLEVEL_SORTBY_PRICECHANGERATE IEnumerable <StockEntity> BRANCH_GROUPBY_PROFITLEVEL_SORTBY_PRICECHANGERATE = await stockRepository.GetAsync(StockRepository.BRANCH_GROUPBY_PROFITLEVEL_SORTBY_PRICECHANGERATE, 0.10, 0.15, ProfitLevel.Great.ToString()); Assert.Equal(fixture.TestData.Count(i => i.IsActive && stockRepository.GetProfitLevel(i) == ProfitLevel.Great && i.PriceChangeRate >= 0.10 && i.PriceChangeRate <= 0.15), BRANCH_GROUPBY_PROFITLEVEL_SORTBY_PRICECHANGERATE.Count()); foreach (StockEntity stockEntity in BRANCH_GROUPBY_PROFITLEVEL_SORTBY_PRICECHANGERATE) { Assert.InRange(stockEntity.PriceChangeRate, 0.10, 0.15); } #endregion #region BRANCH_GROUPBY_SECTOR_GROUPBY_PROFITLEVEL_SORTBY_PRICECHANGERATE IEnumerable <StockEntity> BRANCH_GROUPBY_SECTOR_GROUPBY_PROFITLEVEL_SORTBY_PRICECHANGERATE = await stockRepository.GetAsync(StockRepository.BRANCH_GROUPBY_SECTOR_GROUPBY_PROFITLEVEL_SORTBY_PRICECHANGERATE, 0.10, 0.15, StockSector.InformationTechnology.ToString(), ProfitLevel.Great.ToString()); Assert.Equal(fixture.TestData.Count(i => i.IsActive && stockRepository.GetProfitLevel(i) == ProfitLevel.Great && i.Sector == StockSector.InformationTechnology && i.PriceChangeRate >= 0.10 && i.PriceChangeRate <= 0.15), BRANCH_GROUPBY_SECTOR_GROUPBY_PROFITLEVEL_SORTBY_PRICECHANGERATE.Count()); foreach (StockEntity stockEntity in BRANCH_GROUPBY_SECTOR_GROUPBY_PROFITLEVEL_SORTBY_PRICECHANGERATE) { Assert.InRange(stockEntity.PriceChangeRate, 0.10, 0.15); } #endregion #region BRANCH_GROUPBY_COUNTRY_SORTBY_PRICECHANGERATE IEnumerable <StockEntity> BRANCH_GROUPBY_COUNTRY_SORTBY_PRICECHANGERATE = await stockRepository.GetAsync(StockRepository.BRANCH_GROUPBY_COUNTRY_SORTBY_PRICECHANGERATE, 0.10, 0.15, "GERMANY"); Assert.Equal(fixture.TestData.Count(i => i.IsActive && i.MetaData.Country == "GERMANY" && i.PriceChangeRate >= 0.10 && i.PriceChangeRate <= 0.15), BRANCH_GROUPBY_COUNTRY_SORTBY_PRICECHANGERATE.Count()); foreach (StockEntity stockEntity in BRANCH_GROUPBY_COUNTRY_SORTBY_PRICECHANGERATE) { Assert.InRange(stockEntity.PriceChangeRate, 0.10, 0.15); } #endregion }