Beispiel #1
0
        public async Task adding_the_same_member_to_a_capability_multiple_times_yields_single_membership()
        {
            var capability = new CapabilityBuilder().Build();

            var sut = new CapabilityApplicationServiceBuilder()
                      .WithCapabilityRepository(new StubCapabilityRepository(capability))
                      .Build();

            var stubMemberEmail = "*****@*****.**";

            await sut.JoinCapability(capability.Id, stubMemberEmail);

            await sut.JoinCapability(capability.Id, stubMemberEmail);

            Assert.Equal(new[] { stubMemberEmail }, capability.Members.Select(x => x.Email));
        }
Beispiel #2
0
        public async Task throws_exception_when_adding_member_to_a_non_existing_capability()
        {
            var sut = new CapabilityApplicationServiceBuilder()
                      .WithCapabilityRepository(new StubCapabilityRepository())
                      .Build();

            var nonExistingCapabilityId = Guid.Empty;
            var dummyMemberEmail        = "*****@*****.**";

            await Assert.ThrowsAsync <CapabilityDoesNotExistException>(() => sut.JoinCapability(nonExistingCapabilityId, dummyMemberEmail));
        }
Beispiel #3
0
        public async Task expected_member_is_added_to_capability()
        {
            var capability = new CapabilityBuilder().Build();

            var sut = new CapabilityApplicationServiceBuilder()
                      .WithCapabilityRepository(new StubCapabilityRepository(capability))
                      .Build();

            var stubMemberEmail = "*****@*****.**";

            await sut.JoinCapability(capability.Id, stubMemberEmail);

            Assert.Equal(new[] { stubMemberEmail }, capability.Members.Select(x => x.Email));
        }