Exemplo n.º 1
0
        public void QAVTSWebTest(QAVTest test)
        {
            string api;
            string interval = test.Interval.ToLower();

            if (interval.Equals("daily") ||
                interval.Equals("weekly") ||
                interval.Equals("monthly"))
            {
                api = $"TIME_SERIES_{interval.ToUpper()}" + (test.Adjusted ? "_ADJUSTED" : "");

                // Remove not valid API parameters (for demo API key).
                if (!interval.Equals("daily") ||
                    test.OutputSize.Equals("compact"))
                {
                    test.OutputSize = null;
                }
                test.Interval = null;
            }
            else
            {
                api = "TIME_SERIES_INTRADAY";

                // Remove not valid TIME_SERIES_INTRADAY API parameter (for demo API key).
                test.OutputSize = null;
            }

            Avq.AvStockTimeSeriesOutputSize?outputSize = null;
            if (test.OutputSize != null)
            {
                outputSize = (Avq.AvStockTimeSeriesOutputSize)Enum.Parse(typeof(Avq.AvStockTimeSeriesOutputSize), test.OutputSize);
            }
            string avUri = Avq.AvUrlBuilder(api, apiKey: test.ApiKey, symbol: test.Symbol, outputSize: outputSize, interval: test.Interval);

            Avq.UrlContenResult = FfeWeb.GetHttpResponseContent(avUri);
            object actual = Avq.QAVTS(test.Symbol, info: test.Info, interval: test.Interval, tradingDay: test.DatePart, tradingDate: test.QuoteDate, adjusted: test.Adjusted, outputSize: test.OutputSize, bestMatch: test.BestMatch);

            QAVAssert(test, actual);
        }