Ejemplo n.º 1
0
            public async Task Should_Delete()
            {
                using var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled);

                //Arrange
                var periodTypes    = new List <PeriodType>();
                var identityWorkId = Guid.NewGuid();
                var id             = Guid.NewGuid();

                var periodType = PeriodTypeBuilder.Build(id, identityWorkId, "Quincenal");

                periodTypes.Add(periodType);

                //Act
                var middlewareManager = new MiddlewareManager <PeriodType>(new BaseRecordManager <PeriodType>(), new PeriodTypeValidator());

                await middlewareManager.CreateAsync(periodTypes, identityWorkId);

                //Assert
                var found = await middlewareManager.GetByIdsAsync(new List <Guid>() { id }, identityWorkId);

                Assert.True(found.Any());
                var register = found.FirstOrDefault(x => x.ID == id);

                Assert.NotNull(register);

                await middlewareManager.DeleteAsync(new List <Guid>() { id }, identityWorkId);

                found = await middlewareManager.GetByIdsAsync(new List <Guid>() { id }, identityWorkId);

                register = found.FirstOrDefault(x => x.ID == id);
                Assert.Null(register);
            }
Ejemplo n.º 2
0
            public async Task Should_Fail_When_Period_Total_Days_Is_TooBig()
            {
                using var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled);

                //Arrange
                var periodTypes    = new List <PeriodType>();
                var identityWorkId = Guid.NewGuid();
                var periodType     = PeriodTypeBuilder.Build(Guid.NewGuid(), identityWorkId, "name");

                periodType.PeriodTotalDays = 366;

                periodTypes.Add(periodType);

                //Act
                var middlewareManager = new MiddlewareManager <PeriodType>(new BaseRecordManager <PeriodType>(), new PeriodTypeValidator());

                try
                {
                    await middlewareManager.CreateAsync(periodTypes, identityWorkId);
                }
                catch (CotorraException ex)
                {
                    //Assert
                    var res = ex.ValidationInfo;
                    Assert.NotEmpty(res);
                    Assert.Equal(9002, ex.ErrorCode);
                }
            }
Ejemplo n.º 3
0
            public async Task Should_Fail_When_Payment_Periodicity_Is_BadValue()
            {
                using var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled);

                //Arrange
                var periodTypes    = new List <PeriodType>();
                var identityWorkId = Guid.NewGuid();
                var id             = Guid.NewGuid();
                var originalName   = "some";

                var periodType = PeriodTypeBuilder.Build(id, identityWorkId, originalName);

                periodTypes.Add(periodType);


                var middlewareManager = new MiddlewareManager <PeriodType>(new BaseRecordManager <PeriodType>(), new PeriodTypeValidator());

                await middlewareManager.CreateAsync(periodTypes, identityWorkId);

                var found = await middlewareManager.GetByIdsAsync(new List <Guid>() { id }, identityWorkId);

                Assert.True(found.Any());
                var register = found.FirstOrDefault(x => x.ID == id);

                Assert.NotNull(register);
                Assert.Equal(register.Name, originalName);

                register.PaymentPeriodicity = (PaymentPeriodicity)11;


                try
                {
                    await middlewareManager.UpdateAsync(new List <PeriodType>() { register }, identityWorkId);
                }
                catch (CotorraException ex)
                {
                    //Assert
                    var res = ex.ValidationInfo;
                    Assert.NotEmpty(res);
                    Assert.Equal(9003, ex.ErrorCode);
                }
                finally
                {
                    await middlewareManager.DeleteAsync(new List <Guid>() { id }, identityWorkId);
                }
            }