public void Validate_succeed()
        {
            IOutputInvoiceLine entity = this.CreateEntity();

            var errors = this.validation.Validate(entity).ToList();

            errors.Count.Should().Be(0);
        }
        public void Validate_bad_withHolding_percentage_failed()
        {
            IOutputInvoiceLine entity = this.CreateEntity();

            entity.WithHoldingPercentage = 101.01M;

            var errors = this.validation.Validate(entity);

            errors.Should().Contain(x => !x.IsValid && x.Code == "El campo 'Porcentaje de retención' tiene formato incorrecto");
        }
        public void Validate_bad_withHolding_failed()
        {
            IOutputInvoiceLine entity = this.CreateEntity();

            entity.WithHolding = "op";

            var errors = this.validation.Validate(entity);

            errors.Should().Contain(x => !x.IsValid && x.Code == "No es una retención valida");
        }
        public void Validate_withHolding_succed()
        {
            IOutputInvoiceLine entity = this.CreateEntity();

            entity.WithHolding = "CMO_ORDO";

            var errors = this.validation.Validate(entity).ToList();

            errors.Count.Should().Be(0);
        }
        public void Validate_bad_transaction_failed()
        {
            IOutputInvoiceLine entity = this.CreateEntity();

            entity.Transaction = "op";

            var errors = this.validation.Validate(entity);

            errors.Should().Contain(x => !x.IsValid && x.Code == "No es una operación valida");
        }
        public void Validate_empty_transaction_failed()
        {
            IOutputInvoiceLine entity = this.CreateEntity();

            entity.Transaction = String.Empty;

            var errors = this.validation.Validate(entity);

            errors.Should().Contain(x => !x.IsValid && x.Code == "El campo 'Operación', obligatorio contenido");
        }
        public void Validate_base_amount_failed()
        {
            IOutputInvoiceLine entity = this.CreateEntity();

            entity.BaseAmount = 0;

            var errors = this.validation.Validate(entity);

            errors.Should().Contain(x => !x.IsValid && x.Code == "El campo 'Base imponible', obligatorio contenido");
        }