/*
 * Copyright 2003 - 2018 The eFaps Team
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 */
package org.efaps.dataexporter.output.texttable;

import java.util.List;

import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

import com.openpojo.reflection.PojoClass;
import com.openpojo.reflection.impl.PojoClassFactory;
import com.openpojo.validation.PojoValidator;
import com.openpojo.validation.test.impl.GetterTester;
import com.openpojo.validation.test.impl.SetterTester;

public class TestPojos
{

    // The package to test
    private static final String POJO_PACKAGE = TestPojos.class.getPackage().getName();

    private List<PojoClass> pojoClasses;
    private PojoValidator pojoValidator;

    @BeforeTest
    public void setup()
    {
        this.pojoClasses = PojoClassFactory.getPojoClasses(POJO_PACKAGE, pojoClass -> {
            System.out.println(pojoClass.getName());
            return pojoClass.getName().endsWith("Style");
        });

        this.pojoValidator = new PojoValidator();

        // Create Testers to validate behavior for POJO_PACKAGE
        this.pojoValidator.addTester(new SetterTester());
        this.pojoValidator.addTester(new GetterTester());
    }

    @Test
    public void testPojos()
    {
        for (final PojoClass pojoClass : this.pojoClasses) {
            this.pojoValidator.runValidation(pojoClass);
        }
    }
}

@@ -881,20 +881,16 @@
 idation.
-Pojo
 Validato
@@ -892,16 +892,65 @@
 idator;%0A
+import com.openpojo.validation.ValidatorBuilder;%0A
 import c
@@ -1246,20 +1246,16 @@
 private 
-Pojo
 Validato
@@ -1563,16 +1563,8 @@
 r = 
-new Pojo
 Vali
@@ -1572,113 +1572,54 @@
 ator
-();%0A%0A        // Create Testers to validate behavior for POJO_PACKAGE%0A        this.pojoValidator.addTester
+Builder.create()%0A                        .with
 (new
@@ -1630,25 +1630,24 @@
 terTester())
-;
 %0A        thi
@@ -1647,174 +1647,135 @@
     
-this.pojoValidator.addTester(new GetterTester());%0A    %7D%0A%0A    @Test%0A    public void testPojos()%0A    %7B%0A        for (final PojoClass pojoClass : this.pojoClasses) %7B%0A    
+                .with(new GetterTester())%0A                        .build();%0A    %7D%0A%0A    @Test%0A    public void testPojos()%0A    %7B%0A
     
@@ -1801,22 +1801,22 @@
 tor.
-runV
+v
 alidat
-ion(
+e(this.
 pojo
@@ -1820,28 +1820,20 @@
 ojoClass
+es
 );
-%0A        %7D
 %0A    %7D%0A%7D

Update pojo tester