@ -324,29 +323,9 @@ public class SpelCompilationCoverageTests extends AbstractExpressionTests {
@@ -324,29 +323,9 @@ public class SpelCompilationCoverageTests extends AbstractExpressionTests {
@ -476,8 +455,7 @@ public class SpelCompilationCoverageTests extends AbstractExpressionTests {
@@ -476,8 +455,7 @@ public class SpelCompilationCoverageTests extends AbstractExpressionTests {
// Code gen is different for -1 .. 6 because there are bytecode instructions specifically for those
// values
// Code gen is different for -1 .. 6 because there are bytecode instructions specifically for those values
// Not an int literal but an opminus with one operand:
// expression = parser.parseExpression("-1");
@ -4372,7 +4350,8 @@ public class SpelCompilationCoverageTests extends AbstractExpressionTests {
@@ -4372,7 +4350,8 @@ public class SpelCompilationCoverageTests extends AbstractExpressionTests {
@ -4620,14 +4599,16 @@ public class SpelCompilationCoverageTests extends AbstractExpressionTests {
@@ -4620,14 +4599,16 @@ public class SpelCompilationCoverageTests extends AbstractExpressionTests {
// This next call was failing because the isCompilable check in Indexer did not check on the key being compilable
// (and also generateCode in the Indexer was missing the optimization that it didn't need necessarily need to call
// generateCode for that accessor)
// This next call was failing because the isCompilable check in Indexer
// did not check on the key being compilable (and also generateCode in the
// Indexer was missing the optimization that it didn't need necessarily
// need to call generateCode for that accessor)
assertEquals("wibble",expression.getValue(root));
assertCanCompile(expression);
@ -4803,6 +4784,25 @@ public class SpelCompilationCoverageTests extends AbstractExpressionTests {
@@ -4803,6 +4784,25 @@ public class SpelCompilationCoverageTests extends AbstractExpressionTests {
assertIsCompiled(exp);
}
@Test
publicvoidrepeatedCompilation()throwsException{
// Verifying that after a number of compilations, the classloaders
// used to load the compiled expressions are discarded/replaced.
@ -241,7 +219,6 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
@@ -241,7 +219,6 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
System.out.println("One million iterations: "+(System.currentTimeMillis()-stime)+"ms");
@ -287,12 +264,6 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
@@ -287,12 +264,6 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
System.out.println("One million iterations: "+(System.currentTimeMillis()-stime)+"ms");
@ -407,28 +378,6 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
@@ -407,28 +378,6 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
@ -481,7 +430,6 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
@@ -481,7 +430,6 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
@ -666,13 +614,14 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
@@ -666,13 +614,14 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
logln(">>"+title+": average for "+count+": compiled="+averageCompiled+"ms interpreted="+averageInterpreted+"ms: compiled takes "+((int)ratio)+"% of the interpreted time");
logln(">>"+title+": average for "+count+": compiled="+averageCompiled+
fail("Compiled version took longer than interpreted! CompiledSpeed=~"+averageCompiled+
"ms InterpretedSpeed="+averageInterpreted+"ms");
@ -688,7 +637,7 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
@@ -688,7 +637,7 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
privatevoidlogln(String...message){
if(noisyTests){
if(message!=null&&message.length>0){
if(message.length>0){
System.out.println(message[0]);
}
else{
@ -700,4 +649,84 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {
@@ -700,4 +649,84 @@ public class SpelCompilationPerformanceTests extends AbstractExpressionTests {