Changeset 30

Show
Ignore:
Timestamp:
06/01/09 19:37:06 (3 years ago)
Author:
fumanchu
Message:

Fix for #4 (Allow VALUES Query in assert_rows()).

Location:
trunk/epic
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/epic/epic.sql

    r29 r30  
    217217BEGIN 
    218218  result := rtrim(call, ';'); 
    219   IF NOT result ~* '^[[:space:]]*(SELECT|EXECUTE)[[:space:]]' THEN 
    220     result := 'SELECT * FROM ' || result; 
    221   END IF; 
    222   RETURN result; 
     219  IF result ~* '^[[:space:]]*(SELECT|EXECUTE)[[:space:]]' THEN 
     220    return result; 
     221  ELSIF result ~* E'^[[:space:]]*(VALUES)[[:space:]]*\\(' THEN 
     222    return result; 
     223  ELSE 
     224    return 'SELECT * FROM ' || result; 
     225  END IF; 
    223226END; 
    224227$$ LANGUAGE plpgsql; 
  • trunk/epic/test/test_core.sql

    r28 r30  
    2727  PERFORM test.assert_equal(t, 'EXECUTE myfoo'); 
    2828   
     29  -- Test VALUES 
     30  SELECT INTO t * FROM test.statement('VALUES (99, ''foo'')'); 
     31  PERFORM test.assert_equal(t, 'VALUES (99, ''foo'')'); 
     32  SELECT INTO t * FROM test.statement('VALUES(99, ''foo'')'); 
     33  PERFORM test.assert_equal(t, 'VALUES(99, ''foo'')'); 
     34   
    2935  PERFORM test.pass(); 
    3036END;