Ejemplo n.º 1
0
        public void GetMarketStat_ValidRequest_ValidResponse()
        {
            MarketStatResponse res   = api.GetMarketStat(validOptions);
            MarketStatItem     entry = res.Result.First();

            Assert.AreEqual(TypeId, entry.TypeId);
            Assert.AreNotEqual(0, entry.All.Average);
            Assert.AreNotEqual(0, entry.All.Volume);
            Assert.AreNotEqual(0, entry.All.Max);
            Assert.AreNotEqual(0, entry.All.Min);
            Assert.AreNotEqual(0, entry.All.StdDev);
            Assert.AreNotEqual(0, entry.All.Median);
            Assert.AreNotEqual(0, entry.All.Percentile);
        }
Ejemplo n.º 2
0
        public void GetMarketStat_ValidRequest_ValidResponse()
        {
            MarketStatResponse      res   = _api.GetMarketStat(_validOptions);
            Element43MarketStatItem entry = res.Result.First();

            Assert.AreEqual(TypeId, entry.TypeId);
            Assert.AreNotEqual(0, entry.SellOrders.Average);
            Assert.AreNotEqual(0, entry.SellOrders.Volume);
            Assert.AreNotEqual(0, entry.SellOrders.Max);
            Assert.AreNotEqual(0, entry.SellOrders.Min);
            Assert.AreNotEqual(0, entry.SellOrders.StdDev);
            Assert.AreNotEqual(0, entry.SellOrders.Median);
            Assert.AreNotEqual(0, entry.SellOrders.Percentile);
            Assert.AreNotEqual(0, entry.LastUpdate);
            Assert.AreNotEqual(0, entry.VolumeLastWeek);
        }
Ejemplo n.º 3
0
        public void GetMarketStat_ValidRequest_ValidResponse()
        {
            var options = new EveCentralOptions()
            {
                System = 30000142
            };

            options.Items.Add(34);
            MarketStatResponse       res   = _api.GetMarketStat(options);
            EveCentralMarketStatItem entry = res.Result.First();

            Assert.AreEqual(TypeId, entry.TypeId);
            Assert.AreNotEqual(0, entry.All.Average);
            Assert.AreNotEqual(0, entry.All.Volume);
            Assert.AreNotEqual(0, entry.All.Max);
            Assert.AreNotEqual(0, entry.All.Min);
            Assert.AreNotEqual(0, entry.All.StdDev);
            Assert.AreNotEqual(0, entry.All.Median);
            Assert.AreNotEqual(0, entry.All.Percentile);
        }
        private List <MarketStatChartResponse> ConvertToListResponse(IEnumerable <MarketHistoryDB> items)
        {
            return(items.OrderBy(x => x.Timestamp).GroupBy(x => new { x.Location, x.ItemTypeId, x.QualityLevel }).Select(mainGroup =>
            {
                var data = new MarketStatResponse()
                {
                    ItemCount = new List <ulong>(),
                    PricesAvg = new List <decimal>(),
                    PricesMax = new List <ulong>(),
                    PricesMin = new List <ulong>(),
                    Timestamps = new List <ulong>()
                };
                foreach (var timeGroup in mainGroup.GroupBy(x => x.Timestamp))
                {
                    var itemCount = (ulong)timeGroup.Sum(x => (long)x.ItemAmount);
                    var silverAmount = (ulong)timeGroup.Sum(x => (long)x.SilverAmount);
                    ulong averagePrice = 0;
                    if (itemCount > 0)
                    {
                        averagePrice = silverAmount / itemCount;
                    }
                    data.ItemCount.Add(itemCount);
                    data.Timestamps.Add((ulong)new DateTimeOffset(timeGroup.Key).ToUnixTimeMilliseconds());
                    // Since we are getting these values from the game now, we just have one value
                    data.PricesAvg.Add(averagePrice);
                    data.PricesMin.Add(averagePrice);
                    data.PricesMax.Add(averagePrice);
                }

                return new MarketStatChartResponse
                {
                    Location = Locations.GetName(mainGroup.Key.Location),
                    ItemTypeId = mainGroup.Key.ItemTypeId,
                    QualityLevel = mainGroup.Key.QualityLevel,
                    Data = data
                };
            }).OrderBy(x => x.Location).ThenBy(x => x.ItemTypeId).ThenBy(x => x.QualityLevel).ToList());
        }
Ejemplo n.º 5
0
 public void GetMarketStat_InvalidArgument_ContractException()
 {
     MarketStatResponse res = api.GetMarketStat(invalidOptions);
 }