示例#1
0
        public void Test_Default_Constructor()
        {
            // ACT
            CommitteeDto dto = new CommitteeDto();

            // ASSERT
            Assert.AreEqual(Guid.Empty, dto.Id);
            Assert.AreEqual(Guid.Empty, dto.OrganisationId);
            Assert.AreEqual(null, dto.Name);
            Assert.AreEqual(null, dto.Description);
        }
示例#2
0
        /// <inheritdoc/>
        public async Task CreateCommitteeAsync(
            IWho who,
            IAuditHeaderWithAuditDetails auditHeader,
            ICommittee committee)
        {
            this.logger.ReportEntry(
                who,
                new { Committee = committee });

            CommitteeDto dto = CommitteeDto.ToDto(committee);

            this.context.Committees.Add(dto);
            await this.context.SaveChangesAsync().ConfigureAwait(false);

            Audit.AuditCreate(auditHeader, dto, dto.Id);

            this.logger.ReportExit(who);
        }
示例#3
0
        /// <inheritdoc/>
        public async Task UpdateCommitteeAsync(
            IWho who,
            IAuditHeaderWithAuditDetails auditHeader,
            ICommittee committee)
        {
            this.logger.ReportEntry(
                who,
                new { Committee = committee });

            CommitteeDto dto      = CommitteeDto.ToDto(committee);
            CommitteeDto original = await this.context.FindAsync <CommitteeDto>(committee.Id);

            Audit.AuditUpdate(auditHeader, dto.Id, original, dto);

            this.context.Entry(original).CurrentValues.SetValues(dto);
            await this.context.SaveChangesAsync().ConfigureAwait(false);

            this.logger.ReportExit(who);
        }
示例#4
0
        public void Test_Basic_Constructor()
        {
            // ARRANGE
            Guid         paramId             = Guid.NewGuid();
            Guid         paramOrganisationId = Guid.NewGuid();
            const string paramName           = "TSC";
            const string paramDescription    = "Tournament Sub-Committee";

            // ACT
            CommitteeDto dto = new CommitteeDto(
                id: paramId,
                organisationId: paramOrganisationId,
                name: paramName,
                description: paramDescription);

            // ASSERT
            Assert.AreEqual(paramId, dto.Id);
            Assert.AreEqual(paramOrganisationId, dto.OrganisationId);
            Assert.AreEqual(paramName, dto.Name);
            Assert.AreEqual(paramDescription, dto.Description);
        }
示例#5
0
        public void Test_Passing_Valid_Values()
        {
            // ARRANGE
            ICommittee committee = new Committee(
                id: Guid.NewGuid(),
                organisation: new Organisation(
                    id: Guid.NewGuid(),
                    code: "CBC",
                    name: "County Bridge Club",
                    bgColour: "000000"),
                name: "TSC",
                description: "Tournament Sub-Committee");

            // ACT
            CommitteeDto committeeDto = CommitteeDto.ToDto(committee);

            // ASSERT
            Assert.AreEqual(committee.Id, committeeDto.Id);
            Assert.AreEqual(committee.Organisation.Id, committeeDto.OrganisationId);
            Assert.AreEqual(committee.Name, committeeDto.Name);
            Assert.AreEqual(committee.Description, committeeDto.Description);
        }
示例#6
0
        public void Test_That_Null_List_Of_Meetings_Throws_Exception()
        {
            Guid         paramId          = Guid.NewGuid();
            const string paramName        = "TSC";
            const string paramDescription = "Tournament Sub-Committee";

            OrganisationDto organisationDto = new OrganisationDto(
                id: Guid.NewGuid(),
                code: "CBC",
                name: "County Bridge Club",
                bgColour: "000000");

            CommitteeDto committeeDto = new CommitteeDto(
                id: paramId,
                organisationId: organisationDto.Id,
                name: paramName,
                description: paramDescription,
                organisation: organisationDto);

            // ACT
            _ = committeeDto.ToDomainWithMeetings();
        }
示例#7
0
        public void Test_WithNull_Committee_Throws_Exception()
        {
            // ARRANGE
            OrganisationDto organisationDto = new OrganisationDto(
                id: Guid.NewGuid(),
                code: "CBC",
                name: "County Bridge Club",
                bgColour: "000000");
            CommitteeDto committeeDto = new CommitteeDto(
                id: Guid.NewGuid(),
                organisationId: organisationDto.Id,
                name: "TSC",
                description: "Tournament Sub-Committee",
                organisation: organisationDto);
            MeetingDto meetingDto = new MeetingDto(
                Guid.NewGuid(),
                committeeId: committeeDto.Id,
                meetingDateTime: new DateTime(2019, 12, 30, 19, 15, 00),
                committee: null !);

            // ACT
            _ = meetingDto.ToDomain();
        }