Revision 46088 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.impl/src/test/java/org/gvsig/expressionevaluator/TestGrammarCompiler.java

View differences:

TestGrammarCompiler.java
157 157
        checkEquals("testSelectCountWhere", "SELECT_COUNT(\"countries\", (\"LASTCENSUS\" > 0))", code.toString());
158 158
    }
159 159

  
160
    public void testSelectCountWhere2() {
161
        StringBuilder source = new StringBuilder();
162
        source.append("BEGIN");
163
        source.append("  tableName := 'countries';");
164
        source.append("  SELECT COUNT(*) FROM :tableName  ");
165
        source.append("    WHERE countries.LASTCENSUS > 0 ; ");
166
        source.append("END");
167

  
168
        Compiler compiler = createCompiler();
169

  
170
        Code code = compiler.compileExpression(source.toString());
171
        link(code);
172
        checkEquals("testSelectCountWhere", "BLOCK(LET('tableName', 'countries'), SELECT_COUNT($HOSTEXPRESSION(\"tableName\", 'IN'), (\"countries\".\"LASTCENSUS\" > 0)))", code.toString());
173
    }
174

  
160 175
    public void testSelectWhere2() {
161 176
        StringBuilder source = new StringBuilder();
162 177
        source.append("SELECT * FROM countries  ");
......
169 184
        checkEquals("testSelectWhere2", "SELECT(TUPLE(), \"countries\", (\"countries\".\"LASTCENSUS\" > 0), TUPLE(), TUPLE(), NULL)", code.toString());
170 185
    }
171 186

  
187
    public void testSelectWhere3() {
188
        StringBuilder source = new StringBuilder();
189
        source.append("BEGIN");
190
        source.append("  tableName := 'countries';");
191
        source.append("  SELECT * FROM :tableName  ");
192
        source.append("    WHERE countries.LASTCENSUS > 0 ; ");
193
        source.append("END");
194

  
195
        Compiler compiler = createCompiler();
196

  
197
        Code code = compiler.compileExpression(source.toString());
198
        link(code);
199
        checkEquals("testSelectWhere3", "BLOCK(LET('tableName', 'countries'), SELECT(TUPLE(), $HOSTEXPRESSION(\"tableName\", 'IN'), (\"countries\".\"LASTCENSUS\" > 0), TUPLE(), TUPLE(), NULL))", code.toString());
200
    }
201

  
172 202
    public void testSelectOrder() {
173 203
        StringBuilder source = new StringBuilder();
174 204
        source.append("SELECT * FROM countries  ");

Also available in: Unified diff