/// <summary>
        /// Asserts that the given entity exists in DB.
        /// </summary>
        /// <param name="entity">The entity to check.</param>
        protected static void AssertEntityExists(PrivacyIncident entity)
        {
            var parameters = new Dictionary <string, object>();

            parameters["IncidentNumber"]            = entity.IncidentNumber;
            parameters["BusinessUnit_Id"]           = entity.BusinessUnit?.Id;
            parameters["IncidentTitle"]             = entity.IncidentTitle;
            parameters["IncidentType_Id"]           = entity.IncidentType?.Id;
            parameters["RootCause_Id"]              = entity.RootCause?.Id;
            parameters["RootCauseDetail"]           = entity.RootCauseDetail;
            parameters["NumberOfCustomersImpacted"] = entity.NumberOfCustomersImpacted;
            parameters["MitigationDetail"]          = entity.MitigationDetail;
            parameters["IncidentYear_Id"]           = entity.IncidentYear?.Id;
            parameters["IncidentMonth_Id"]          = entity.IncidentMonth?.Id;
            parameters["RemediationYear_Id"]        = entity.RemediationYear?.Id;
            parameters["RemediationMonth_Id"]       = entity.RemediationMonth?.Id;
            parameters["Status_Id"]             = entity.Status?.Id;
            parameters["ReportedToORMYear_Id"]  = entity.ReportedToORMYear?.Id;
            parameters["ReportedToORMMonth_Id"] = entity.ReportedToORMMonth?.Id;
            parameters["CompletionType"]        = entity.CompletionType;
            parameters["CreatedBy"]             = entity.CreatedBy;
            parameters["CreatedTime"]           = entity.CreatedTime;
            parameters["LastUpdatedBy"]         = entity.LastUpdatedBy;
            parameters["LastUpdatedTime"]       = entity.LastUpdatedTime;
            parameters["Id"] = entity.Id;

            TestHelper.AssertDatabaseRecordExists(typeof(PrivacyIncident).Name, parameters);

            AssertManyToManyMappings(entity.Id, entity.MitigationCode,
                                     "PrivacyIncident_PrivacyIncidentMitigationCodeValue",
                                     "PrivacyIncidentId", "PrivacyIncidentMitigationCodeValueId");
        }
        public long Create(PrivacyIncident entity)
        {
            CommonHelper.ValidateArgumentNotNull(entity, nameof(entity));
            Helper.ValidateTodayIsAllowedUpdateDate(entity.IncidentYear, entity.IncidentMonth, InputAllowedInDays);

            // populate audit fields
            PopulateAuditFields(entity, null, creating: true);

            return(PrivacyIncidentService.Create(entity).Id);
        }
Пример #3
0
        public void TestGetAccuracy()
        {
            // arrange
            long id = 2;

            // act
            PrivacyIncident result = instance.Get(id);

            // assert
            AssertResult(result);
        }
Пример #4
0
        public void TestCreateAccuracy()
        {
            // arrange
            PrivacyIncident entity = CreateTestEntity <PrivacyIncident>(2);

            // act
            PrivacyIncident result = instance.Create(entity);

            // assert
            AssertEntityExists(entity);

            result.Id = 0;
            AssertResult(result);
        }
Пример #5
0
        public void TestUpdateAccuracy()
        {
            // arrange
            PrivacyIncident entity = CreateTestEntity <PrivacyIncident>(1);

            entity.Id = 2;

            // act
            PrivacyIncident result = instance.Update(entity);

            // assert
            AssertEntityExists(entity);
            AssertResult(result);
        }
        public PrivacyIncident Update(long id, PrivacyIncident entity)
        {
            CommonHelper.ValidateArgumentNotNull(entity, nameof(entity));
            Helper.ValidateTodayIsAllowedUpdateDate(entity.IncidentYear, entity.IncidentMonth, InputAllowedInDays);

            var existing = PrivacyIncidentService.Get(id);

            if (!IsAdmin())
            {
                Helper.ValidateStatusIsDraft(existing.Status);
            }

            // populate audit fields
            PopulateAuditFields(entity, existing);

            entity.Id = id;
            return(PrivacyIncidentService.Update(entity));
        }