gitlab.com/evatix-go/core@v1.3.55/corevalidator/SimpleSliceValidator.go (about) 1 package corevalidator 2 3 import ( 4 "gitlab.com/evatix-go/core/coredata/corestr" 5 "gitlab.com/evatix-go/core/enums/stringcompareas" 6 ) 7 8 type SimpleSliceValidator struct { 9 Expected *corestr.SimpleSlice 10 actual *corestr.SimpleSlice 11 ValidatorCoreCondition 12 CompareAs stringcompareas.Variant 13 } 14 15 func (it *SimpleSliceValidator) SetActual(lines []string) *SimpleSliceValidator { 16 it.actual = corestr.New.SimpleSlice.Direct( 17 false, 18 lines) 19 20 return it 21 } 22 23 func (it *SimpleSliceValidator) SliceValidator() *SliceValidator { 24 sliceValidator := SliceValidator{ 25 CompareAs: it.CompareAs, 26 ValidatorCoreCondition: it.ValidatorCoreCondition, 27 ActualLines: it.actual.Items, 28 ExpectedLines: it.Expected.Items, 29 } 30 31 return &sliceValidator 32 } 33 34 func (it *SimpleSliceValidator) VerifyAll( 35 actual []string, 36 params *ValidatorParamsBase, 37 ) error { 38 sliceValidator := it.SliceValidator() 39 sliceValidator.ActualLines = actual 40 41 return sliceValidator.AllVerifyError(params) 42 } 43 44 func (it *SimpleSliceValidator) VerifyFirst( 45 actual []string, 46 params *ValidatorParamsBase, 47 ) error { 48 sliceValidator := it.SliceValidator() 49 sliceValidator.ActualLines = actual 50 51 return sliceValidator.VerifyFirstError(params) 52 } 53 54 func (it *SimpleSliceValidator) VerifyUpto( 55 actual []string, 56 params *ValidatorParamsBase, 57 length int, 58 ) error { 59 sliceValidator := it.SliceValidator() 60 sliceValidator.ActualLines = actual 61 62 return sliceValidator.AllVerifyErrorUptoLength( 63 false, 64 params, 65 length) 66 }