Revision 44379 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/test/java/org/gvsig/expresionevaluator/impl/TestGrammarInterpreter.java
TestGrammarInterpreter.java | ||
---|---|---|
108 | 108 |
Interpreter interpreter = createInterpreter(symbolTable); |
109 | 109 |
|
110 | 110 |
symbolTable.setVar("V1", 10); |
111 |
String source = "IF V1 = 11 THEN SET V2 = 22"; |
|
111 |
String source = "IF V1 = 11 THEN SET V2 = 22; END IF";
|
|
112 | 112 |
Code code = compiler.compileExpression(source); |
113 | 113 |
Object v = interpreter.run(code); |
114 | 114 |
|
... | ... | |
117 | 117 |
assertEquals(null, symbolTable.value("V2")); |
118 | 118 |
|
119 | 119 |
symbolTable.setVar("V1", 11); |
120 |
source = "IF V1 = 11 THEN SET V2 = 22"; |
|
120 |
source = "IF V1 = 11 THEN SET V2 = 22; END IF";
|
|
121 | 121 |
code = compiler.compileExpression(source); |
122 | 122 |
v = interpreter.run(code); |
123 | 123 |
|
... | ... | |
132 | 132 |
Interpreter interpreter = createInterpreter(symbolTable); |
133 | 133 |
|
134 | 134 |
symbolTable.setVar("V1", 10); |
135 |
String source = "IF V1 = 11 THEN SET V2 = 11 ELSE SET V2 = 22";
|
|
135 |
String source = "IF V1 = 11 THEN SET V2 = 11; ELSE SET V2 = 22; END IF";
|
|
136 | 136 |
Code code = compiler.compileExpression(source); |
137 | 137 |
Object v = interpreter.run(code); |
138 | 138 |
|
... | ... | |
147 | 147 |
Interpreter interpreter = createInterpreter(symbolTable); |
148 | 148 |
|
149 | 149 |
symbolTable.setVar("V1", 11); |
150 |
String source = "IF V1 = 11 THEN BEGIN LET V2 = 22; LET V1 = 10 END";
|
|
150 |
String source = "IF V1 = 11 THEN LET V2 = 22; LET V1 = 10; END IF";
|
|
151 | 151 |
Code code = compiler.compileExpression(source); |
152 | 152 |
Object v = interpreter.run(code); |
153 | 153 |
|
... | ... | |
162 | 162 |
Interpreter interpreter = createInterpreter(symbolTable); |
163 | 163 |
|
164 | 164 |
symbolTable.setVar("n",0); |
165 |
String source = "WHILE n < 10 SET n = n + 1";
|
|
165 |
String source = "WHILE n < 10 BEGIN SET n = n + 1; END WHILE";
|
|
166 | 166 |
Code code = compiler.compileExpression(source); |
167 | 167 |
Object v = interpreter.run(code); |
168 | 168 |
|
... | ... | |
221 | 221 |
Compiler compiler = createCompiler(); |
222 | 222 |
Interpreter interpreter = createInterpreter(symbolTable); |
223 | 223 |
|
224 |
String source = "FOR n in RANGE(10) print(n)";
|
|
224 |
String source = "FOR n in RANGE(10) BEGIN print(n); END FOR";
|
|
225 | 225 |
Code code = compiler.compileExpression(source); |
226 | 226 |
Object v = interpreter.run(code); |
227 | 227 |
|
... | ... | |
282 | 282 |
Compiler compiler = createCompiler(); |
283 | 283 |
Interpreter interpreter = createInterpreter(symbolTable); |
284 | 284 |
|
285 |
String source = "DEF test1() 'Hola'";
|
|
285 |
String source = "CREATE FUNCTION test1() RETURN 'Hola'; END FUNCTION";
|
|
286 | 286 |
Code code = compiler.compileExpression(source); |
287 | 287 |
Object v = interpreter.run(code); |
288 | 288 |
|
... | ... | |
298 | 298 |
Compiler compiler = createCompiler(); |
299 | 299 |
Interpreter interpreter = createInterpreter(symbolTable); |
300 | 300 |
|
301 |
String source = "DEF test1(nombre) 'Hola ' || nombre";
|
|
301 |
String source = "CREATE FUNCTION test1(nombre) RETURN 'Hola ' || nombre; END FUNCTION";
|
|
302 | 302 |
Code code = compiler.compileExpression(source); |
303 | 303 |
Object v = interpreter.run(code); |
304 | 304 |
|
... | ... | |
314 | 314 |
Compiler compiler = createCompiler(); |
315 | 315 |
Interpreter interpreter = createInterpreter(symbolTable); |
316 | 316 |
|
317 |
String source = "DEF test1(nombre) BEGIN RETURN 'Hola ' || nombre END";
|
|
317 |
String source = "CREATE FUNCTION test1(nombre) RETURN 'Hola ' || nombre; END FUNCTION";
|
|
318 | 318 |
Code code = compiler.compileExpression(source); |
319 | 319 |
Object v = interpreter.run(code); |
320 | 320 |
|
... | ... | |
330 | 330 |
Compiler compiler = createCompiler(); |
331 | 331 |
Interpreter interpreter = createInterpreter(symbolTable); |
332 | 332 |
|
333 |
String source = "DEF test1(nombre) BEGIN RETURN 'Hola ' || nombre; 'Oh!...'; END";
|
|
333 |
String source = "CREATE FUNCTION test1(nombre) RETURN 'Hola ' || nombre; END FUNCTION";
|
|
334 | 334 |
Code code = compiler.compileExpression(source); |
335 | 335 |
Object v = interpreter.run(code); |
336 | 336 |
|
... | ... | |
346 | 346 |
Compiler compiler = createCompiler(); |
347 | 347 |
Interpreter interpreter = createInterpreter(symbolTable); |
348 | 348 |
|
349 |
String source = "begin set x = ''; for n in list('hola','adios','fin'): let x = x || ' ' || n end"; |
|
349 |
String source = "begin set x = ''; for n in list('hola','adios','fin'): let x = x || ' ' || n; end for; end";
|
|
350 | 350 |
Code code = compiler.compileExpression(source); |
351 | 351 |
Object v = interpreter.run(code); |
352 | 352 |
|
... | ... | |
358 | 358 |
Compiler compiler = createCompiler(); |
359 | 359 |
Interpreter interpreter = createInterpreter(symbolTable); |
360 | 360 |
|
361 |
String source = "begin set s = ''; set x = LIST('hola','adios','fin'); FOR n in RANGE(3): set s = s || ' ' || x[n] end"; |
|
361 |
String source = "begin set s = ''; set x = LIST('hola','adios','fin'); FOR n in RANGE(3): set s = s || ' ' || x[n]; end for; end";
|
|
362 | 362 |
Code code = compiler.compileExpression(source); |
363 | 363 |
Object v = interpreter.run(code); |
364 | 364 |
|
Also available in: Unified diff