This is the base for all the concrete test implementations in this package.
Definition at line 29 of file BNFAbstractTest.java.
Public Member Functions | |
BNFAbstractTest (BNFTestImplementor tests[]) throws BNFTestException | |
Creates a new BNFAbstractTest object. | |
Object | collect () |
A method to retrieve data collected during the evaluation of this test. | |
void | reset () |
Resets the test state. | |
void | setCollecting (boolean isCollecting) |
A method to turn on data collection. | |
void | setFormatting (boolean isFormatting) |
abstract BNFTestResult | test (BNFTestableObject obj) |
A method to evaluate this test using the supplied testable object. | |
String | toString () |
Returns a text representation of the test. | |
Protected Member Functions | |
void | checkTests () throws BNFTestException |
A method to check the sub-tests that comprise this test. | |
boolean | isFirstTest () |
A method to determine if the test is evaluating the first sub-test. | |
boolean | isLastTest () |
A method to determine if the test is evaluating the last sub-test. | |
boolean | isNotLastTest () |
A method to determine if the test is evaluating a sub-test other than the last sub-test. | |
Protected Attributes | |
List< Object > | collectedData |
The list containing data collected by this test. | |
boolean | collecting |
A flag indicating whether data collection is turned on. | |
List< BNFTestableObject > | committed |
A list of all subtokens successfully processed by the sub-tests. | |
boolean | formatting |
int | nextTest |
A pointer to the sub-test being evaluated. | |
List< BNFTestableObject > | playable |
A list of tokens to be evaluated by this test. | |
BNFTestResult | result |
The result object for this test. | |
BNFTestImplementor | tests [] |
The list of sub-tests that comprise this test. | |
Static Protected Attributes | |
static BNFI18NFactory | i18n |
The internationalized string factory. |
|
Creates a new BNFAbstractTest object.
Definition at line 64 of file BNFAbstractTest.java. References BNFAbstractTest.checkTests(), BNFAbstractTest.reset(), and BNFAbstractTest.tests. 00065 { 00066 this.collecting = false; 00067 this.tests = tests; 00068 this.result = new BNFTestResult(); 00069 this.playable = new Vector<BNFTestableObject>(); 00070 this.committed = new Vector<BNFTestableObject>(); 00071 this.collectedData = new Vector<Object>(); 00072 checkTests(); 00073 reset(); 00074 }
|
|
A method to check the sub-tests that comprise this test.
Reimplemented in BNFNoFallthruTest. Definition at line 156 of file BNFAbstractTest.java. References BNFI18NFactory.getString(), BNFAbstractTest.i18n, BNFI18NFactory.i18n_TST_REQD, and BNFAbstractTest.tests. Referenced by BNFAbstractTest.BNFAbstractTest(). 00157 { 00158 if((tests == null) || (tests.length == 0)) { 00159 throw new BNFTestException( 00160 i18n.getString(i18n.i18n_TST_REQD)); 00161 } 00162 for(int i = 0;i < tests.length;i++) { 00163 if(tests[i] == null) { 00164 throw new BNFTestException( 00165 i18n.getString(i18n.i18n_TST_REQD)); 00166 } 00167 } 00168 }
|
|
A method to retrieve data collected during the evaluation of this test.
Implements BNFTestImplementor. Reimplemented in AssignmentValidator, BNFValidator, BracedTermValidator, BracketedTermValidator, FactorsValidator, IdentifierValidator, QuotedValidator, RuleValidator, and TermValidator. Definition at line 94 of file BNFAbstractTest.java. References BNFAbstractTest.collectedData, BNFAbstractTest.collecting, and BNFAbstractTest.result. Referenced by BNFRequiredTest.test(), BNFOptionalTest.test(), BNFOneOrMoreRequiredTest.test(), BNFOneOrMoreOptionalTest.test(), and BNFOneOfManyRequiredTest.test(). 00094 { 00095 List<Object> result; 00096 if(collecting) { 00097 result = collectedData; 00098 collectedData = new Vector<Object>(); 00099 } else{result = new Vector<Object>(0);} 00100 00101 return result; 00102 }
|
|
A method to determine if the test is evaluating the first sub-test.
Definition at line 175 of file BNFAbstractTest.java. References BNFAbstractTest.nextTest, and BNFAbstractTest.tests. 00175 { 00176 if((tests == null) || (tests.length == 0)){return true;} 00177 else{return nextTest == 0;} 00178 }
|
|
A method to determine if the test is evaluating the last sub-test.
Definition at line 185 of file BNFAbstractTest.java. References BNFAbstractTest.nextTest, and BNFAbstractTest.tests. Referenced by BNFAbstractTest.isNotLastTest(), BNFRequiredTest.test(), BNFOptionalTest.test(), BNFOneOrMoreRequiredTest.test(), BNFOneOrMoreOptionalTest.test(), and BNFOneOfManyRequiredTest.test(). 00185 { 00186 if((tests == null) || (tests.length == 0)){return true;} 00187 else{return nextTest == (tests.length - 1);} 00188 }
|
|
A method to determine if the test is evaluating a sub-test other than the last sub-test.
Definition at line 196 of file BNFAbstractTest.java. References BNFAbstractTest.isLastTest(). 00196 {return !isLastTest();}
|
|
Resets the test state.
Implements BNFTestImplementor. Reimplemented in BNFOneOrMoreRequiredTest. Definition at line 105 of file BNFAbstractTest.java. References BNFAbstractTest.nextTest, BNFTestImplementor.reset(), and BNFAbstractTest.tests. Referenced by BNFAbstractTest.BNFAbstractTest(), BNFRequiredTest.test(), BNFOptionalTest.test(), BNFOneOrMoreOptionalTest.test(), and BNFOneOfManyRequiredTest.test(). 00105 { 00106 nextTest = 0; 00107 if(tests != null) { 00108 for(int i = 0;i < tests.length;i++) { 00109 if(tests[i] != null){tests[i].reset();} 00110 } 00111 } 00112 }
|
|
A method to turn on data collection.
Implements BNFTestImplementor. Definition at line 120 of file BNFAbstractTest.java. References BNFAbstractTest.collecting, BNFTestImplementor.setCollecting(), and BNFAbstractTest.tests. 00120 { 00121 collecting = isCollecting; 00122 if(tests != null) { 00123 for(int i = 0;i < tests.length;i++) { 00124 tests[i].setCollecting(isCollecting); 00125 } 00126 } 00127 }
|
|
Implements BNFTestImplementor. Definition at line 128 of file BNFAbstractTest.java. References BNFAbstractTest.formatting, BNFTestImplementor.setFormatting(), and BNFAbstractTest.tests. 00128 { 00129 formatting = isFormatting; 00130 if(tests != null) { 00131 for(int i = 0;i < tests.length;i++) { 00132 tests[i].setFormatting(isFormatting); 00133 } 00134 } 00135 }
|
|
A method to evaluate this test using the supplied testable object.
Implements BNFTestImplementor. Implemented in BNFNoFallthruTest, BNFOneOfManyRequiredTest, BNFOneOrMoreOptionalTest, BNFOneOrMoreRequiredTest, BNFOptionalTest, and BNFRequiredTest. |
|
Returns a text representation of the test.
Reimplemented in BNFNoFallthruTest, BNFOneOfManyRequiredTest, BNFOneOrMoreOptionalTest, BNFOneOrMoreRequiredTest, BNFOptionalTest, and BNFRequiredTest. Definition at line 142 of file BNFAbstractTest.java. References BNFI18NFactory.getString(), BNFAbstractTest.i18n, BNFI18NFactory.i18n_CHLD_TSTS, and BNFAbstractTest.tests. 00142 { 00143 String name = getClass().getName(); 00144 int numtests = tests.length; 00145 00146 return String.format(i18n.getString(i18n.i18n_CHLD_TSTS), name, 00147 numtests); 00148 }
|
|
The list containing data collected by this test.
Definition at line 35 of file BNFAbstractTest.java. Referenced by BNFAbstractTest.collect(), BNFRequiredTest.test(), BNFOptionalTest.test(), BNFOneOrMoreRequiredTest.test(), BNFOneOrMoreOptionalTest.test(), BNFOneOfManyRequiredTest.test(), and BNFNoFallthruTest.test(). |
|
A flag indicating whether data collection is turned on.
Definition at line 38 of file BNFAbstractTest.java. Referenced by BNFAbstractTest.collect(), BNFAbstractTest.setCollecting(), BNFRequiredTest.test(), BNFOptionalTest.test(), BNFOneOrMoreRequiredTest.test(), BNFOneOrMoreOptionalTest.test(), BNFOneOfManyRequiredTest.test(), and BNFNoFallthruTest.test(). |
|
A list of all subtokens successfully processed by the sub-tests.
Definition at line 42 of file BNFAbstractTest.java. Referenced by BNFRequiredTest.test(), BNFOptionalTest.test(), BNFOneOrMoreRequiredTest.test(), BNFOneOrMoreOptionalTest.test(), and BNFOneOfManyRequiredTest.test(). |
|
|
The internationalized string factory.
Definition at line 32 of file BNFAbstractTest.java. Referenced by BNFAbstractTest.checkTests(), BNFNoFallthruTest.toString(), and BNFAbstractTest.toString(). |
|
A pointer to the sub-test being evaluated.
Definition at line 45 of file BNFAbstractTest.java. Referenced by BNFAbstractTest.isFirstTest(), BNFAbstractTest.isLastTest(), BNFAbstractTest.reset(), BNFRequiredTest.test(), BNFOptionalTest.test(), BNFOneOrMoreRequiredTest.test(), BNFOneOrMoreOptionalTest.test(), and BNFOneOfManyRequiredTest.test(). |
|
A list of tokens to be evaluated by this test.
Definition at line 48 of file BNFAbstractTest.java. Referenced by BNFRequiredTest.test(), BNFOptionalTest.test(), BNFOneOrMoreRequiredTest.test(), BNFOneOrMoreOptionalTest.test(), and BNFOneOfManyRequiredTest.test(). |
|
The result object for this test.
Definition at line 51 of file BNFAbstractTest.java. Referenced by BNFAbstractTest.collect(), BNFRequiredTest.test(), BNFOptionalTest.test(), BNFOneOrMoreRequiredTest.test(), BNFOneOrMoreOptionalTest.test(), BNFOneOfManyRequiredTest.test(), and BNFNoFallthruTest.test(). |
|