コード例 #1
0
        public async Task ShouldADdBabySitterWithSpecifiedRates()
        {
            var args  = new AddBabySitterArgs("one", "two", 32, 20, 89);
            var model = await _command.Execute(args);

            var sitter = _context.Find <Sitter>(model.Id);

            Assert.Equal("one", sitter.FirstName);
            Assert.Equal("two", sitter.LastName);
            Assert.Equal(32, sitter.HourlyRates.Standard);
            Assert.Equal(20, sitter.HourlyRates.BetweenBedtimeAndMidnight);
            Assert.Equal(89, sitter.HourlyRates.AfterMidnight);
        }
コード例 #2
0
        public async Task ShouldAddBabySitterWithDefaultRates()
        {
            var args  = new AddBabySitterArgs("Jack", "Billy");
            var model = await _command.Execute(args);

            var sitter = _context.Find <Sitter>(model.Id);

            Assert.Equal("Jack", sitter.FirstName);
            Assert.Equal("Billy", sitter.LastName);
            Assert.Equal(12, sitter.HourlyRates.Standard);
            Assert.Equal(8, sitter.HourlyRates.BetweenBedtimeAndMidnight);
            Assert.Equal(16, sitter.HourlyRates.AfterMidnight);
        }
コード例 #3
0
        public async Task <SitterModel> AddBabySitter(
            string firstName,
            string lastName,
            int?hourlyRate = null,
            int?hourlyRateBetweenBedtimeAndMidnight = null,
            int?hourlyRateAfterMidnight             = null)
        {
            var addArgs = new AddBabySitterArgs(
                firstName,
                lastName,
                hourlyRate,
                hourlyRateBetweenBedtimeAndMidnight,
                hourlyRateAfterMidnight);

            using (var client = CreateClient())
            {
                var response = await client.PostJsonAsync("babysitters", addArgs);

                return(await client.GetJsonAsync <SitterModel>(response.Headers.Location));
            }
        }
コード例 #4
0
        public async Task ShouldThrowValidationException()
        {
            var args = new AddBabySitterArgs(null, "bob");

            await Assert.ThrowsAsync <ValidationException>(() => _command.Execute(args));
        }
コード例 #5
0
        public async Task <IActionResult> AddBabySitter([FromBody] AddBabySitterArgs args)
        {
            var model = await _commandBus.Execute <AddBabySitterArgs, SitterModel>(args);

            return(CreatedAtRoute("GetBabySitterById", new { id = model.Id }, model));
        }