Exemplo n.º 1
0
        /// <summary>
        /// http://docs.intrinio.com/#securities
        /// Returns a list of security for a single ticker. We wrap default Intrinio behaviour to clear out the
        /// 'no match by identifier' case and make sure resultset is empty
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public GetSecuritiesDetailsByCompanyResponse GetSecuritiesDetailsByCompany(GetSecuritiesDetailsByCompany request)
        {
            var dirtyResponse = DirtyGetWhatever <GetSecuritiesDetailsByCompany, List <SecurityDetailDto> >(request);

            // Handle the weird case that an invalid identifier actually sends back data which was being parsed into an empty, nulled out object
            //if (response.data.Count == 1  && IntrinioClientUtils.IsAllNullOrEmpty(response.data.First())) return new GetSecuritiesDetailsByCompanyResponse();
            if (dirtyResponse.Count == 1 && IntrinioClientUtils.IsAllNullOrEmpty(dirtyResponse.First()))
            {
                return(new GetSecuritiesDetailsByCompanyResponse());
            }
            // Otherwise, return the reguarl response
            return(new GetSecuritiesDetailsByCompanyResponse
            {
                api_call_credits = 1, current_page = 1, data = dirtyResponse, result_count = dirtyResponse.Count, total_pages = 1
            });
        }
Exemplo n.º 2
0
        public void CanGetSecurityDetailsByTicker(string ticker, bool expectResults)
        {
            var request = new GetSecuritiesDetailsByCompany {
                identifier = ticker
            };
            var requestUrl = request.ToGetUrl();
            var response   = ApiClient.GetSecuritiesDetailsByCompany(request);

            Assert.True((response.data.IsNullOrEmpty()) == !expectResults);
            if (!expectResults)
            {
                return;
            }
            foreach (var security in response.data)
            {
                Assert.True(security.ticker == request.identifier || ticker.IsNullOrEmpty());
            }
        }