private void checkDataDrivenParameters()

in wilma-functionaltest/src/main/java/com/epam/gepard/generic/GenericListTestSuite.java [195:223]


    private void checkDataDrivenParameters(final TestClassExecutionData classData, final DataFeederLoader dataFeeder) {
        if (classData.getDrivenData() == null) { // this must not be data driven
            if (classData.getDrivenDataRowNo() > 0) {
                AllTestRunner.CONSOLE_LOG.info("\nERROR: Parameters are not loaded for a data driven test class."
                        + "\nPlease check and fix it!\nNow exiting...");
                AllTestRunner.exitFromGepard(ExitCode.EXIT_CODE_DATA_DRIVEN_TEST_CLASS_WITHOUT_DATA);
            }
            if (dataFeeder != null) {
                AllTestRunner.CONSOLE_LOG.info("\nERROR: DataFeederLoader is used on a non-data driven test class."
                        + "\nPlease check and fix it!\nNow exiting...");
                AllTestRunner.exitFromGepard(ExitCode.EXIT_CODE_NON_DATA_DRIVEN_TEST_CLASS_WITH_DATA);
            }
            return;
        }
        //we have parameters, now check its correctness
        String[] parameterNames = classData.getDrivenData().getParameterNames();
        if (parameterNames == null) { //we must have names for the parameters
            AllTestRunner.CONSOLE_LOG.info("\nERROR: Parameters are not loaded correctly for a data driven test class. ParameterNames are missing."
                    + "\nPlease check and fix it!\nNow exiting...");
            AllTestRunner.exitFromGepard(ExitCode.EXIT_CODE_DATA_DRIVEN_TEST_CLASS_WITHOUT_DATA_NAMES);
        }
        int columns = classData.getDrivenData().getParameters().length;
        int namesNo = parameterNames.length;
        if (columns != namesNo) { //we must have as many parameter names as parameters we have
            AllTestRunner.CONSOLE_LOG.info("\nERROR: Parameters are not loaded correctly for a data driven test class. "
                    + "Number of ParameterNames differs from the number of parameters." + "\nPlease check and fix it!\nNow exiting...");
            AllTestRunner.exitFromGepard(ExitCode.EXIT_CODE_DATA_DRIVEN_TEST_CLASS_INCORRECT_NUMBER_OF_DATA_NAMES);
        }
    }