Class BasicInterviewParameters

  • All Implemented Interfaces:
    Parameters
    Direct Known Subclasses:
    DefaultInterviewParameters, LegacyParameters

    public abstract class BasicInterviewParameters
    extends InterviewParameters
    A basic implementation of InterviewParameters that uses standard interviews for all the various interview sections, except the environment section, which remains to be implemented by subtypes.
    • Constructor Detail

      • BasicInterviewParameters

        protected BasicInterviewParameters​(java.lang.String tag)
                                    throws Interview.Fault
        Create a BasicInterviewParameters object. The test suite for which this interview applies should be set with setTestSuite.
        Parameters:
        tag - the tag used to qualify questions in this interview
        Throws:
        Interview.Fault - if there is a problem creating this object
      • BasicInterviewParameters

        protected BasicInterviewParameters​(java.lang.String tag,
                                           TestSuite ts)
                                    throws Interview.Fault
        Create a BasicInterviewParameters object.
        Parameters:
        tag - the tag used to qualify questions in this interview
        ts - The test suite to which this interview applies.
        Throws:
        Interview.Fault - if there is a problem creating this object
    • Method Detail

      • dispose

        public void dispose()
        Description copied from class: InterviewParameters
        Clean up an InterviewParameters object. This method should be invoked at the moment InterviewParameters object becomes useless by the code, that controls it's lifecycle. For example, at the end of the method which created it's local instance.

        Any following invocations on this object may result in unpredictable exceptions because of object inconsistence.

        Overrides:
        dispose in class InterviewParameters
      • createTestsInterview

        protected TestsInterview createTestsInterview​(InterviewParameters parent)
                                               throws Interview.Fault
        creation of {#link TestsInterview} is extracted into separate class to enable 'hooks' and return {#link TestsInterview} sub class
        Parameters:
        parent -
        Returns:
        instance of {#link TestsInterview}
        Throws:
        Interview.Fault
      • isNameAndDescriptionInPrologEnabled

        public boolean isNameAndDescriptionInPrologEnabled()
        Check whether or not to include standard questions in the prolog to get a name and description for this configuration. If these standard questions are not used, it is the responsibility of the EnvParameters interview to get the name and description.
        Returns:
        true if the standard questions should be included, and false otherwise.
        See Also:
        setNameAndDescriptionInPrologEnabled(boolean)
      • setNameAndDescriptionInPrologEnabled

        public void setNameAndDescriptionInPrologEnabled​(boolean on)
        Specify whether or not to include standard questions in the prolog to get a name and description for this configuration. If these standard questions are not used, it is the responsibility of the EnvParameters interview to get the name and description. If the standard prolog is bypassed by using setFirstQuestion, this method has no effect.
        Parameters:
        on - if true, questions will be included in the standard prolog to get a name and description for this configuration.
        See Also:
        isNameAndDescriptionInPrologEnabled()
      • getName

        public java.lang.String getName()
        Get the name for this configuration. If the standard question for the name has been included in the prolog, it will be used to get the result; otherwise the default implementation to get the name from the environment will be used.
        Overrides:
        getName in class InterviewParameters
        Returns:
        the name for this configuration, or null if not known
        See Also:
        setNameAndDescriptionInPrologEnabled(boolean)
      • getDescription

        public java.lang.String getDescription()
        Get a description for this configuration. If the standard question for the description has been included in the prolog, it will be used to get the result; otherwise the default implementation to get the description from the environment will be used.
        Overrides:
        getDescription in class InterviewParameters
        Returns:
        a description for this configuration, or null if not known
      • setTestSuite

        public void setTestSuite​(TestSuite ts)
        Set the test suite for the test run. The test suite may only be set once.
        Parameters:
        ts - the test suite to be set.
        Throws:
        java.lang.NullPointerException - if ts is null
        java.lang.IllegalStateException - if the test suite has already been set to something different
        See Also:
        getTestSuite()
      • setWorkDirectory

        public void setWorkDirectory​(WorkDirectory wd)
        Set the work directory for the test run. The work directory may only be set once. If the test suite has already been set, it must exactly match the test suite for the work directory; if the test suite has not yet been set, it will be set to the test suite for this work directory.
        Specified by:
        setWorkDirectory in interface Parameters
        Specified by:
        setWorkDirectory in class InterviewParameters
        Parameters:
        wd - the work directory to be set.
        Throws:
        java.lang.NullPointerException - if wd is null
        java.lang.IllegalStateException - if the work directory has already been set to something different
        See Also:
        getWorkDirectory()
      • getTestsParameters

        public Parameters.TestsParameters getTestsParameters()
        Description copied from interface: Parameters
        Get an object which provides access to the paths identifying the tests or folders of tests to be run.
        Returns:
        an object which provides access to the paths identifying tests to be run.
      • getExcludeListParameters

        public Parameters.ExcludeListParameters getExcludeListParameters()
        Description copied from interface: Parameters
        Get an object which provides access to the exclude list which identifies tests or test cases to be excluded from the test run.
        Returns:
        an object which provides access to the exclude list identifying tests or test cases to be excluded from the test run.
      • getKflFirstQuestion

        protected Question getKflFirstQuestion()
      • getKflSuccessorQuestion

        protected Question getKflSuccessorQuestion()
      • setKnownFailureFiles

        public void setKnownFailureFiles​(java.io.File... files)
        Description copied from class: InterviewParameters
        Set the set of KFL files.
        Overrides:
        setKnownFailureFiles in class InterviewParameters
        Parameters:
        files - The known failures list files. The array should contain one or more elements.
      • getKeywordsParameters

        public Parameters.KeywordsParameters getKeywordsParameters()
        Description copied from interface: Parameters
        Get an object which provides access to the keywords object which identifies tests to be run according to their keywords.
        Returns:
        an object which provides access to the keywords object which identifies tests to be run according to their keywords.
      • getPriorStatusParameters

        public Parameters.PriorStatusParameters getPriorStatusParameters()
        Description copied from interface: Parameters
        Get an object which provides access to an array of booleans which identify tests to be run according to their prior execution status.
        Returns:
        an object which provides access to an array of booleans which identify tests to be run according to their prior execution status, or null if no such selection criteria is required.
      • getConcurrencyParameters

        public Parameters.ConcurrencyParameters getConcurrencyParameters()
        Description copied from interface: Parameters
        Get an object which provides access to the integer specifying the maximum number of tests that may be run in parallel.
        Returns:
        an object which provides access to the integer specifying the maximum number of tests that may be run in parallel.
      • getMaxConcurrency

        protected int getMaxConcurrency()
        Discover the maximum allowable concurrency value that should be accepted.
        Returns:
        The maximum allowable concurrency value that should be accepted by the interview.
        See Also:
        Parameters.ConcurrencyParameters.MAX_CONCURRENCY
      • getTimeoutFactorParameters

        public Parameters.TimeoutFactorParameters getTimeoutFactorParameters()
        Description copied from interface: Parameters
        Get an object which provides access to the integer specifying a scale factor to be applied to the standard timeout for the test.
        Returns:
        an object which provides access to the integer specifying a scale factor to be applied to the standard timeout for each test.
      • getEpilogFirstQuestion

        protected Question getEpilogFirstQuestion()
        Description copied from class: InterviewParameters
        Get the first question of the epilog, which should be asked after all the other questions in the configuration interview have been asked. The epilog should terminate in the standard way with a FinalQuestion.
        Specified by:
        getEpilogFirstQuestion in class InterviewParameters
        Returns:
        the first question of the epilog, which should be asked after all the other questions in the configuration interview have been asked.