public void TagParseTest() { var text = System.IO.File.ReadAllText("testResponse.json"); var response = PubTatorResponse.ParseString(text); Assert.IsTrue(response.Tags.Any(tag => tag.data == "8622" && tag.tag == Tag.Gene)); }
public void AuthorsParseTest() { var text = System.IO.File.ReadAllText("testResponse.json"); var response = PubTatorResponse.ParseString(text); Assert.IsTrue(response.Authors.Any(s => s.Contains("Halfter"))); }
public void PassageParseTest() { var text = System.IO.File.ReadAllText("testResponse.json"); var response = PubTatorResponse.ParseString(text); Assert.IsTrue(response.Passages.Any(passage => passage.Offset == 99)); }
public void GeneralTotalParseTest() { var text = System.IO.File.ReadAllText("testResponse.json"); var response = PubTatorResponse.ParseString(text); Assert.AreEqual("20085714", response.Id); Assert.AreEqual(2010, response.Year); Assert.IsTrue(response.Created.Equals(DateTimeOffset.FromUnixTimeMilliseconds(1572526582545) .DateTime)); }
public PubTatorResponse GetArticleByPmId(string id) { var response = Client.GetAsync("?pmids=" + id).Result; if (response.IsSuccessStatusCode) { return(PubTatorResponse.ParseString(response.Content.ReadAsStringAsync().Result)); } throw new HttpRequestException("This request failed :( " + response.StatusCode); }
/// <summary> /// This function returns the article results assuming you have more than one variable /// </summary> /// <param name="id">A list of ids in any form that can be looped over</param> /// <returns></returns> /// <exception cref="HttpRequestException"></exception> public PubTatorResponse[] GetArticleByPmId(IEnumerable <string> id) { var requestUri = "?pmids="; var i = false; foreach (var s in id) //Simple loop to add every id to the end { if (!i) { i = true; requestUri += s; continue; } requestUri += "," + s; } var response = Client.GetAsync(requestUri).Result; if (!response.IsSuccessStatusCode) { throw new HttpRequestException("This request failed :( " + response.StatusCode); } var contentString = response.Content.ReadAsStringAsync().Result; var pubArray = new List <PubTatorResponse>(); var iter = 0; foreach (var s in contentString.Split("\n")) { if (iter == contentString.Split("\n").Length - 1) { break; } try { pubArray.Add(PubTatorResponse.ParseString(s)); } catch (Exception e) { Console.WriteLine(e); } iter++; } return(pubArray.ToArray()); }