Ejemplo n.º 1
0
        public async Task AnimalFactsTests_FactsReturnsMultipleCorrectCount(FactSubject factSubject)
        {
            var multipleFacts = await _facts.GetFacts(new AnimalFactQuery(factSubject, 10));

            Assert.IsNotNull(multipleFacts is IReadOnlyList <Fact>);
            Assert.IsTrue(multipleFacts.Count() == _fakeFacts.Count);
        }
Ejemplo n.º 2
0
        public async Task AnimalFactsTests_FactsReturnsOne(FactSubject factSubject)
        {
            var oneFact = await _facts.GetFact(new AnimalFactQuery(factSubject, 10));

            Assert.IsTrue(oneFact is Fact);
            Assert.IsNotNull(oneFact);
            Assert.IsTrue(_fakeFacts.Any(x => x.Id == oneFact.Id));
        }
Ejemplo n.º 3
0
        public static async Task WriteFacts(FactSubject subject, int repeatSeconds, ConsoleColor consoleColor)
        {
            AnimalFacts facts = new AnimalFacts(HttpClient);

            while (true)
            {
                var fact = await facts.GetFact(new AnimalFactQuery(subject));

                Console.ForegroundColor = consoleColor;
                Console.WriteLine(fact.ToString(), consoleColor);
                await Task.Delay(TimeSpan.FromSeconds(repeatSeconds));
            }
        }
Ejemplo n.º 4
0
        public async Task AnimalFactsTests_HandlesExceptionReturnsNull(FactSubject factSubject)
        {
            var mockMessageHandler = new Mock <HttpMessageHandler>();

            mockMessageHandler.Protected()
            .Setup <Task <HttpResponseMessage> >(
                "SendAsync",
                ItExpr.IsAny <HttpRequestMessage>(),
                ItExpr.IsAny <CancellationToken>()
                )
            .ThrowsAsync(new Exception("No cat facts for you."));

            _facts = new AnimalFacts(new HttpClient(mockMessageHandler.Object));

            var oneFact = await _facts.GetFact(new AnimalFactQuery(factSubject, 10));

            Assert.IsTrue(oneFact is null);
        }
Ejemplo n.º 5
0
 public AnimalFactQuery(FactSubject subject, int amount = 1)
 {
     Subject = subject;
     Amount  = amount;
 }