Example #1
0
 public async Task FpnValidator_Validate_Should_Return_True_When_TimeFrom_AndTimeTo_Not_OverLaps_WithNextRecord_SameBMUnit()
 {
     await Task.Run(() =>
     {
         //Arrange
         List <Fpn> fpns = _mockData.GetFpns().ToList();
         List <ParticipantEnergyAsset> bmuUnit = _mockData.GetBMUParticipant();
         Aggregate <Fpn> aggregate             = new Aggregate <Fpn>(new Item(), fpns, bmuUnit, null);
         FpnValidator validator = new FpnValidator();
         //Act
         FluentValidation.Results.ValidationResult result = validator.Validate(aggregate, ruleSet: BusinessValidationConstants.WARNINGCHECK);
         //Assert
         Assert.True(result.IsValid);
     });
 }
Example #2
0
 public async Task FpnValidator_Validate_Should_Return_False_When_TimeFrom_IsNot_EqualTo_TimeTo()
 {
     await Task.Run(() =>
     {
         //Arrange
         List <Fpn> fpns = _mockData.GetFpns().ToList();
         List <ParticipantEnergyAsset> bmuUnit = _mockData.GetBMUParticipant();
         fpns.FirstOrDefault().TimeFrom        = new DateTime(2018, 11, 10, 1, 05, 00);
         fpns.FirstOrDefault().TimeTo          = new DateTime(2018, 11, 10, 1, 15, 00);
         Aggregate <Fpn> aggregate             = new Aggregate <Fpn>(new Item(), fpns, bmuUnit, null);
         FpnValidator validator = new FpnValidator();
         //Act
         FluentValidation.Results.ValidationResult result = validator.Validate(aggregate, ruleSet: BusinessValidationConstants.WARNINGCHECK);
         //Assert
         Assert.False(result.IsValid);
     });
 }
Example #3
0
        public async Task FpnValidator_Validate_Should_Return_True_When_TimeTo_ThereFor_SameBmUnitRecord()
        {
            await Task.Run(() =>
            {
                //Arrange
                List <Fpn> fpns = new List <Fpn>();
                Fpn fpn         = _mockData.GetFpns().FirstOrDefault();
                List <ParticipantEnergyAsset> bmuUnit = _mockData.GetBMUParticipant();
                fpn.TimeFrom = new DateTime(2018, 11, 10, 1, 00, 00);
                fpn.TimeTo   = new DateTime(2018, 11, 10, 1, 30, 00);
                fpns.Add(fpn);
                Aggregate <Fpn> aggregate = new Aggregate <Fpn>(new Item(), fpns, bmuUnit, null);
                FpnValidator validator    = new FpnValidator();

                //Act
                FluentValidation.Results.ValidationResult result = validator.Validate(aggregate, ruleSet: BusinessValidationConstants.WARNINGCHECK);

                //Assert
                Assert.True(result.IsValid);
            });
        }
Example #4
0
        public async Task FpnValidator_Validate_Should_Return_False_When_TimeFrom_IsGreaterThan_TimeTo()
        {
            await Task.Run(() =>
            {
                //Arrange
                List <Fpn> fpns = new List <Fpn>();
                Fpn fpn         = _mockData.GetFpns().FirstOrDefault();
                List <ParticipantEnergyAsset> bmuUnit = _mockData.GetBMUParticipant();
                fpn.TimeFrom = new DateTime(2018, 11, 10, 1, 30, 00);
                fpn.TimeTo   = new DateTime(2018, 11, 10, 1, 00, 00);
                fpns.Add(fpn);
                Aggregate <Fpn> aggregate = new Aggregate <Fpn>(new Item(), fpns, bmuUnit, null);
                FpnValidator validator    = new FpnValidator();

                //Act
                FluentValidation.Results.ValidationResult result = validator.Validate(aggregate, ruleSet: BusinessValidationConstants.WARNINGCHECK);

                //Assert
                Assert.False(result.IsValid);
                Assert.Equal(result.Errors.FirstOrDefault().ToString(), BusinessValidationConstants.MSG_TOTIMEGREATERTHANFROMTIME);
            });
        }
Example #5
0
        public async Task BodValidator_Validate_Should_Return_True_When_BMUUnit_Is_Valid()
        {
            await Task.Run(() =>
            {
                //Arrange
                List <Fpn> fpns = _mockData.GetFpns();
                List <ParticipantEnergyAsset> bmuUnit = _mockData.GetBMUParticipant();
                fpns.FirstOrDefault().BmuName         = "GTYPE150";
                Aggregate <Fpn> aggregate             = new Aggregate <Fpn>(new Item(), fpns, bmuUnit, null)
                {
                    SettlementDuration = 30
                };

                FpnValidator validator = new FpnValidator();

                //Act
                FluentValidation.Results.ValidationResult result = validator.Validate(aggregate, ruleSet: BusinessValidationConstants.WARNINGCHECK);

                //Assert
                Assert.True(result.IsValid);
            });
        }
Example #6
0
        public async Task FpnValidator_Validate_Should_Return_True_When_RecordExists()
        {
            await Task.Run(() =>
            {
                //Arrange
                List <Fpn> fpns = _mockData.GetFpns();
                List <ParticipantEnergyAsset> bmuUnit = _mockData.GetBMUParticipant();
                fpns.FirstOrDefault().TimeFrom        = new DateTime(2018, 11, 10, 1, 00, 00);
                fpns.FirstOrDefault().TimeTo          = new DateTime(2018, 11, 10, 1, 30, 00);
                Aggregate <Fpn> aggregate             = new Aggregate <Fpn>(new Item(), fpns, bmuUnit, null)
                {
                    SettlementDuration = 30
                };
                FpnValidator validator = new FpnValidator();

                //Act
                FluentValidation.Results.ValidationResult result = validator.Validate(aggregate, ruleSet: BusinessValidationConstants.ERRORCHECK);

                //Assert
                Assert.True(result.IsValid);
            });
        }
Example #7
0
        public async Task FpnValidator_Validate_Should_Return_False_When_BMUUnit_Is_InValid()
        {
            await Task.Run(() =>
            {
                //Arrange
                List <Fpn> fpns = _mockData.GetFpns();
                List <ParticipantEnergyAsset> bmuUnit = _mockData.GetBMUParticipant();
                fpns.FirstOrDefault().BmuName         = "ABCD123";
                Aggregate <Fpn> aggregate             = new Aggregate <Fpn>(new Item(), fpns, bmuUnit, null)
                {
                    SettlementDuration = 30
                };

                FpnValidator validator = new FpnValidator();

                //Act
                FluentValidation.Results.ValidationResult result = validator.Validate(aggregate, ruleSet: BusinessValidationConstants.WARNINGCHECK);

                //Assert
                Assert.False(result.IsValid);
                Assert.Equal(result.Errors[0].ToString(), BusinessValidationConstants.MSG_INVALIDBMU);
            });
        }
Example #8
0
        public async Task FpnValidator_Validate_Should_Return_False_When_FileAlreadyExists()
        {
            await Task.Run(() =>
            {
                //Arrange
                List <Fpn> fpns = _mockData.GetFpns();
                List <ParticipantEnergyAsset> bmuUnit = _mockData.GetBMUParticipant();
                fpns.FirstOrDefault().TimeFrom        = new DateTime(2018, 11, 10, 1, 00, 00);
                fpns.FirstOrDefault().TimeTo          = new DateTime(2018, 11, 10, 1, 30, 00);
                Aggregate <Fpn> aggregate             = new Aggregate <Fpn>(new Item(), fpns, bmuUnit, null)
                {
                    SettlementDuration = 30
                };
                string blobName        = "Processing/SAA-I003-FPN/2018/11/10/3/FPN/PN.json";
                FpnValidator validator = new FpnValidator();
                _mockQuery.Setup(s => s.ExistsAsync(blobName)).Returns(Task.FromResult(true));
                aggregate.FileAlreadyExistOrNot = true;
                //Act
                FluentValidation.Results.ValidationResult result = validator.Validate(aggregate, ruleSet: BusinessValidationConstants.ERRORCHECK);

                //Assert
                Assert.False(result.IsValid);
            });
        }