public void SerializeEstimizeEstimateSuccessfully() { var data = new EstimizeEstimate() { Id = "0", CreatedAt = new DateTime(2019, 6, 10) }; var content = JsonConvert.SerializeObject(data, _jsonSerializerSettings); Assert.IsTrue(content.Contains("\"id\":\"0\"")); Assert.IsTrue(content.Contains("\"created_at\":\"2019-06-10T00:00:00Z\"")); Assert.IsTrue(content.Contains("\"eps\":null")); data.Eps = 1.2m; content = JsonConvert.SerializeObject(data, _jsonSerializerSettings); Assert.IsTrue(content.Contains("\"eps\":1.2")); }
private IEnumerable <EstimizeConsensus> Unpack(EstimizeEstimate estimizeEstimate, Source source, Type type, JObject jObject) { var jToken = jObject[source.ToLower()][type.ToLower()]; var revisionsJToken = jToken["revisions"]; var consensuses = revisionsJToken == null ? new List <EstimizeConsensus>() : JsonConvert.DeserializeObject <List <EstimizeConsensus> >(revisionsJToken.ToString()); consensuses.Add(JsonConvert.DeserializeObject <EstimizeConsensus>(jToken.ToString())); foreach (var consensus in consensuses) { consensus.Id = estimizeEstimate.Id; consensus.FiscalYear = estimizeEstimate.FiscalYear; consensus.FiscalQuarter = estimizeEstimate.FiscalQuarter; consensus.Source = source; consensus.Type = type; } return(consensuses.Where(x => x.UpdatedAt > DateTime.MinValue)); }
/// <summary> /// OnData event is the primary entry point for your algorithm. Each new data point will be pumped in here. /// </summary> /// <param name="data">EstimizeEstimate object containing the stock release data</param> public void OnData(EstimizeEstimate data) { Log($"{Time} - {data}"); }