예제 #1
0
        public async Task Test_app_full()
        {
            long distance = 1000000;
            long hours    = 13440;

            _download.GetStarships().Returns(TestFactory.CreateMock());

            Starship   starship   = TestFactory.CreateMock().FirstOrDefault();
            Consumable consumable = new Consumable(TimeUnit.Week, 1);

            _function.SeparateConsumable(starship.consumables).Returns(consumable);
            _function.CalculateHours(consumable).Returns(hours);
            _function.CalculateStops(distance, starship.MGLT.ToInt64(), hours).Returns(74);

            App app = new App(_download, _logger, _function);
            await app.Start(distance);

            long expected = 74;

            _logger.Received().Success($"The starship Millennium Falcon needs {expected} stop(s)");

            _logger.Received(2).Message(Arg.Any <string>());
            _logger.Received(1).Success(Arg.Any <string>());
            _logger.Received(0).Error(Arg.Any <string>());
        }