Revision 44198 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/TestGrammarCompiler.java

View differences:

TestGrammarCompiler.java
109 109
        Compiler compiler = createCompiler();
110 110

  
111 111
        Code code = compiler.compileExpression(source);
112
        assertEquals("IFF(=(\"V1\", 11), LET('V2', 22))", code.toString());
112
        assertEquals("IFF((\"V1\" = 11), LET('V2', 22))", code.toString());
113 113
    }
114 114

  
115 115
    public void testIfThen2() {
......
118 118
        Compiler compiler = createCompiler();
119 119

  
120 120
        Code code = compiler.compileExpression(source);
121
        assertEquals("IFF(=(\"V1\", 11), LET('V2', 22))", code.toString());
121
        assertEquals("IFF((\"V1\" = 11), LET('V2', 22))", code.toString());
122 122
    }
123 123

  
124 124
    public void testIfThen3() {
......
127 127
        Compiler compiler = createCompiler();
128 128

  
129 129
        Code code = compiler.compileExpression(source);
130
        assertEquals("IFF(=(\"V1\", 11), LET('V2', 22))", code.toString());
130
        assertEquals("IFF((\"V1\" = 11), LET('V2', 22))", code.toString());
131 131
    }
132 132

  
133 133
    public void testIfThenElse() {
......
136 136
        Compiler compiler = createCompiler();
137 137

  
138 138
        Code code = compiler.compileExpression(source);
139
        assertEquals("IFF(=(\"V1\", 11), LET('V2', 11), LET('V2', 22))", code.toString());
139
        assertEquals("IFF((\"V1\" = 11), LET('V2', 11), LET('V2', 22))", code.toString());
140 140
    }
141 141

  
142 142
    public void testIfThenBlock() {
......
145 145
        Compiler compiler = createCompiler();
146 146

  
147 147
        Code code = compiler.compileExpression(source);
148
        assertEquals("IFF(=(\"V1\", 11), BLOCK(LET('V2', 22), LET('V1', 10)))", code.toString());
148
        assertEquals("IFF((\"V1\" = 11), BLOCK(LET('V2', 22), LET('V1', 10)))", code.toString());
149 149
    }
150 150

  
151 151
    public void testWhile() {
......
154 154
        Compiler compiler = createCompiler();
155 155

  
156 156
        Code code = compiler.compileExpression(source);
157
        assertEquals("WHILE(<(\"n\", 10), LET('n', +(\"n\", 1)))", code.toString());
157
        assertEquals("WHILE((\"n\" < 10), LET('n', (\"n\" + 1)))", code.toString());
158 158
    }
159 159

  
160 160
    public void testWhileBlock() {
......
163 163
        Compiler compiler = createCompiler();
164 164

  
165 165
        Code code = compiler.compileExpression(source);
166
        assertEquals("WHILE(<(\"n\", 10), BLOCK(LET('n', +(\"n\", 1)), print(\"n\")))", code.toString());
166
        assertEquals("WHILE((\"n\" < 10), BLOCK(LET('n', (\"n\" + 1)), print(\"n\")))", code.toString());
167 167
    }
168 168

  
169 169
    public void testCast() {
......
226 226
        Compiler compiler = createCompiler();
227 227

  
228 228
        Code code = compiler.compileExpression(source);
229
        assertEquals("CASE(LIKE(\"software\", '%gvSIG%'), 'gvSIG', 'Other')", code.toString());
229
        assertEquals("CASE((\"software\" LIKE '%gvSIG%'), 'gvSIG', 'Other')", code.toString());
230 230
    }
231 231

  
232 232
    public void testCase1() {
......
235 235
        Compiler compiler = createCompiler();
236 236

  
237 237
        Code code = compiler.compileExpression(source);
238
        assertEquals("CASE(LIKE(\"software\", '%gvSIG%'), 'gvSIG', 'Other')", code.toString());
238
        assertEquals("CASE((\"software\" LIKE '%gvSIG%'), 'gvSIG', 'Other')", code.toString());
239 239
    }
240 240

  
241 241
    public void testCase2() {
......
244 244
        Compiler compiler = createCompiler();
245 245

  
246 246
        Code code = compiler.compileExpression(source);
247
        assertEquals("CASE(AND(>=(\"Field_1\", 75), <=(\"Field_1\", 79)), AND(>=(\"Field_1\", 80), <=(\"Field_1\", 84)), 100, 110)", code.toString());
247
        assertEquals("CASE(((\"Field_1\" >= 75) AND (\"Field_1\" <= 79)), ((\"Field_1\" >= 80) AND (\"Field_1\" <= 84)), 100, 110)", code.toString());
248 248
    }
249 249
    
250 250
    public void testCase3() {
......
253 253
        Compiler compiler = createCompiler();
254 254

  
255 255
        Code code = compiler.compileExpression(source);
256
        assertEquals("CASE(AND(>=(\"Field_1\", 75), <=(\"Field_1\", 79)), AND(>=(\"Field_1\", 80), <=(\"Field_1\", 84)), 100, 110, 120)", code.toString());
256
        assertEquals("CASE(((\"Field_1\" >= 75) AND (\"Field_1\" <= 79)), ((\"Field_1\" >= 80) AND (\"Field_1\" <= 84)), 100, 110, 120)", code.toString());
257 257
    }
258 258
    
259 259
    public void testDef1() {
......
271 271
        Compiler compiler = createCompiler();
272 272

  
273 273
        Code code = compiler.compileExpression(source);
274
        assertEquals("CREATE_FUNCTION('test1', LIST('nombre'), print(+('Hola ', \"nombre\")))", code.toString());
274
        assertEquals("CREATE_FUNCTION('test1', LIST('nombre'), print(('Hola ' + \"nombre\")))", code.toString());
275 275
    }
276 276

  
277 277
    public void testDef3() {
......
280 280
        Compiler compiler = createCompiler();
281 281

  
282 282
        Code code = compiler.compileExpression(source);
283
        assertEquals("CREATE_FUNCTION('test1', LIST('nombre'), BLOCK(RETURN(||('Hola ', \"nombre\"))))", code.toString());
283
        assertEquals("CREATE_FUNCTION('test1', LIST('nombre'), BLOCK(RETURN(('Hola ' || \"nombre\"))))", code.toString());
284 284
    }
285 285

  
286 286
    public void testUseCase1() {
......
289 289
        Compiler compiler = createCompiler();
290 290

  
291 291
        Code code = compiler.compileExpression(source);
292
        assertEquals("BLOCK(LET('x', ''), FOREACH('n', list('hola', 'adios', 'fin'), LET('x', ||(||(\"x\", ' '), \"n\"))))", code.toString());
292
        assertEquals("BLOCK(LET('x', ''), FOREACH('n', list('hola', 'adios', 'fin'), LET('x', ((\"x\" || ' ') || \"n\"))))", code.toString());
293 293
    }
294 294

  
295 295
    public void testUseCase2() {
......
298 298
        Compiler compiler = createCompiler();
299 299

  
300 300
        Code code = compiler.compileExpression(source);
301
        assertEquals("BLOCK(LET('s', ''), LET('x', LIST('hola', 'adios', 'fin')), FOREACH('n', RANGE(3), LET('s', ||(||(\"s\", ' '), GETITEM(\"x\", \"n\")))))", code.toString());
301
        assertEquals("BLOCK(LET('s', ''), LET('x', LIST('hola', 'adios', 'fin')), FOREACH('n', RANGE(3), LET('s', ((\"s\" || ' ') || GETITEM(\"x\", \"n\")))))", code.toString());
302 302
    }
303 303

  
304 304

  

Also available in: Unified diff