public FiscalQuarterPeriod FetchLatestFiscalQuarter(string ticker, bool isConfigureAwait, bool useCache) { var company = Fetch(DataTypeConfig.Company, TickerEmptyPeriodParameter.Create(ticker, Snapshot.GetInstance()), isConfigureAwait, useCache) as Company; // use ondemand latest quarter period return(company.SupportedQuarterRanges.OndemandTierRange.To); }
public void GetCompanyTest() { var client = new BuffettCodeApiV2Client(mockApiCore); var parameter = TickerEmptyPeriodParameter.Create("6501", Snapshot.GetInstance()); Assert.IsNotNull(client.GetCompany(parameter, true, false)); }
public void ToApiV3ParametersTest() { var ticker = "1234"; var parameter = TickerEmptyPeriodParameter.Create(ticker, Snapshot.GetInstance()).ToApiV3Parameters(); Assert.AreEqual(1, parameter.Count()); Assert.AreEqual(ticker, parameter["ticker"]); }
public void CreateGetCompanyRequestTest() { var ticker = "1234"; var request = BuffettCodeApiV3RequestCreator.CreateGetCompanyRequest(TickerEmptyPeriodParameter.Create(ticker, Snapshot.GetInstance())); Assert.AreEqual(request.EndPoint, BuffettCodeApiV3Config.ENDPOINT_COMPANY); Assert.AreEqual(ticker, request.Parameters["ticker"]); }
public void GetHashCodeTest() { var a = TickerEmptyPeriodParameter.Create("1234", Snapshot.GetInstance()).GetHashCode(); var b = TickerEmptyPeriodParameter.Create("1234", Snapshot.GetInstance()).GetHashCode(); var c = TickerEmptyPeriodParameter.Create("2345", Snapshot.GetInstance()).GetHashCode(); Assert.AreEqual(a, b); Assert.AreNotEqual(a, c); }
public void CreateGetIndicatorRequestTest() { var ticker = "6501"; var parameter = TickerEmptyPeriodParameter.Create(ticker, Snapshot.GetInstance()); var request = BuffettCodeApiV2RequestCreator.CreateGetIndicatorRequest(parameter); Assert.AreEqual(request.EndPoint, BuffettCodeApiV2Config.ENDPOINT_INDICATOR); Assert.AreEqual(ticker, request.Parameters["tickers"]); }
public void GetTest() { var ticker = "2345"; var client = new BuffettCodeApiV2Client(mockApiCore); var day = TickerDayParameter.Create(ticker, DayPeriod.Create(2021, 2, 1)); var fyFq = TickerQuarterParameter.Create(ticker, FiscalQuarterPeriod.Create(2019, 4)); var empty = TickerEmptyPeriodParameter.Create(ticker, Snapshot.GetInstance()); Assert.IsNotNull(client.Get(DataTypeConfig.Indicator, empty, false, true, false)); Assert.IsNotNull(client.Get(DataTypeConfig.Quarter, fyFq, false, true, false)); Assert.IsNotNull(client.Get(DataTypeConfig.Company, empty, false, true, false)); Assert.ThrowsException <NotSupportedDataTypeException>(() => client.Get(DataTypeConfig.Daily, day, false, true, false)); }
public ITickerPeriodParameter Build() { switch (dataType) { case DataTypeConfig.Indicator: return(TickerEmptyPeriodParameter.Create(ticker, Snapshot.GetInstance())); case DataTypeConfig.Quarter: if (string.IsNullOrWhiteSpace(parameter1) && string.IsNullOrWhiteSpace(parameter2)) { return(TickerQuarterParameter.Create(ticker, RelativeFiscalQuarterPeriod.CreateLatest())); } else { return(TickerQuarterParameter.Create(ticker, FiscalQuarterPeriod.Create(parameter1, parameter2))); } case DataTypeConfig.Daily: return(TickerDayParameter.Create(ticker, LatestDayPeriod.GetInstance())); default: throw new NotSupportedDataTypeException($"dataType ={dataType} is not supported."); } }
public void GetPeriodTest() { var parameter = TickerEmptyPeriodParameter.Create("1234", Snapshot.GetInstance()); Assert.AreEqual(Snapshot.GetInstance(), parameter.GetPeriod()); }
private Company GetCompany(string ticker, bool isConfigureAwait, bool useCache) { var json = apiClient.Get(DataTypeConfig.Company, TickerEmptyPeriodParameter.Create(ticker, Snapshot.GetInstance()), false, isConfigureAwait, useCache); return(parser.Parse(DataTypeConfig.Company, json) as Company); }