Beispiel #1
0
        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));
        }
Beispiel #2
0
        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")));
        }
Beispiel #3
0
        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));
        }
Beispiel #4
0
        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));
        }
Beispiel #5
0
        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);
        }
Beispiel #6
0
        /// <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());
        }