Ejemplo n.º 1
0
        public void ExecuteTrade_NoAvailableQuotes()
        {
            var repository = new Mock <IRepository>();

            repository.Setup(x => x.GetAllAvailableBySymbol(It.IsAny <string>())).Returns(new List <IQuote>());

            var sut = new QuoteManagerClass(repository.Object);
            var res = sut.ExecuteTrade("DEF", 1000);

            Assert.AreEqual(null, res);
        }
Ejemplo n.º 2
0
        public void ExecuteTrade_DidNotReachRequestedVolume()
        {
            var repository = new Mock <IRepository>();

            repository.Setup(x => x.GetAllAvailableBySymbol(It.IsAny <string>())).Returns(quotes);

            var sut = new QuoteManagerClass(repository.Object);
            var res = sut.ExecuteTrade("DEF", 5000);

            Assert.AreEqual(res.VolumeExecuted, (uint)4200);
            Assert.AreEqual(res.VolumeRequested, (uint)5000);
            Assert.AreEqual(res.Symbol, "DEF");
            Assert.AreEqual(res.VolumeWeightedAveragePrice, 9.583333333333334);
        }