public async Task ShouldThrowNotFoundException()
        {
            var command = new CreateVemittlerGesellschaftForAllVermittler()
            {
                NeueGesellschaftsId = -1
            };

            FluentActions.Invoking(async() =>
                                   await SendAsync(command)).Should().Throw <NotFoundException>();
        }
        public async Task ShouldCreateVermittlerGesellschaftFürVermittler()
        {
            int gesellschaftId = await CreateGesellschaft();

            int vermittlerId = await CreateVemittler();

            var command = new CreateVemittlerGesellschaftForAllVermittler()
            {
                NeueGesellschaftsId = gesellschaftId
            };

            await SendAsync(command);

            var result = await FindVermittlerAsync(vermittlerId);

            result.VermittlerGesellschafften.Count.Should().BeGreaterThan(0);
            result.VermittlerGesellschafften[0].GesellschaftId.Should().Be(gesellschaftId);
            result.VermittlerGesellschafften[0].VermittlerId.Should().Be(vermittlerId);
        }
        public async Task ShouldCreateVermittlerGesellschaftFürVermittlerThatDoesNotAlreadyHaveThatGesellschaft()
        {
            int gesellschaftId = await CreateGesellschaft();

            int vermittlerId = await CreateVemittler();

            int vermittlerId2 = await CreateVemittler2MitGesellschaft(gesellschaftId);

            var command = new CreateVemittlerGesellschaftForAllVermittler()
            {
                NeueGesellschaftsId = gesellschaftId
            };

            //Vermittler2 should already have the VermittlerGesellschaft eintrag
            var resultVermittler2BeforeCommand = await FindVermittlerAsync(vermittlerId2);

            var vermittlerGesellschaftRowVersionForVermittler2 =
                resultVermittler2BeforeCommand.VermittlerGesellschafften[0].RowVersion;

            resultVermittler2BeforeCommand.VermittlerGesellschafften[0].GesellschaftId.Should().Be(gesellschaftId);
            resultVermittler2BeforeCommand.VermittlerGesellschafften[0].VermittlerId.Should().Be(vermittlerId2);

            await SendAsync(command);

            var result = await FindVermittlerAsync(vermittlerId);

            var resultVermittler2AfterCommand = await FindVermittlerAsync(vermittlerId2);

            result.VermittlerGesellschafften.Count.Should().BeGreaterThan(0);
            result.VermittlerGesellschafften[0].GesellschaftId.Should().Be(gesellschaftId);
            result.VermittlerGesellschafften[0].VermittlerId.Should().Be(vermittlerId);

            //Vermittler2 should still have the same VermittlerGesellschaft eintrag
            resultVermittler2AfterCommand.VermittlerGesellschafften[0].RowVersion.Should()
            .Be(vermittlerGesellschaftRowVersionForVermittler2);
        }