-
Notifications
You must be signed in to change notification settings - Fork 77
Expand file tree
/
Copy pathtestPLSQLCallSpec.java
More file actions
34 lines (28 loc) · 1.37 KB
/
Copy pathtestPLSQLCallSpec.java
File metadata and controls
34 lines (28 loc) · 1.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package common;
/*
* Date: 11-4-3
*/
import gudusoft.gsqlparser.EDbVendor;
import gudusoft.gsqlparser.TGSqlParser;
import gudusoft.gsqlparser.nodes.TCallSpec;
import gudusoft.gsqlparser.stmt.oracle.TPlsqlCreateFunction;
import gudusoft.gsqlparser.stmt.oracle.TPlsqlCreatePackage;
import junit.framework.TestCase;
public class testPLSQLCallSpec extends TestCase {
public void test1(){
TGSqlParser sqlparser = new TGSqlParser(EDbVendor.dbvoracle);
sqlparser.sqltext = "package body a is\n" +
"\n" +
"function XXPCK_STR2(key in varchar2, value in varchar2) return varchar2 is\n" +
"language java name 'oracle.apps.fnd.security.WebSessionManagerProc.decrypt(java.lang.String,java.lang.String) return java.lang.String';\n" +
"\n" +
"end;";
assertTrue(sqlparser.parse() == 0);
TPlsqlCreatePackage pkg = (TPlsqlCreatePackage)sqlparser.sqlstatements.get(0);
TPlsqlCreateFunction f = (TPlsqlCreateFunction)pkg.getDeclareStatements().get(0);
TCallSpec cs = f.getCallSpec();
assertTrue(cs.getLang().equalsIgnoreCase("java"));
assertTrue(cs.getDeclaration().toString().equalsIgnoreCase("'oracle.apps.fnd.security.WebSessionManagerProc.decrypt(java.lang.String,java.lang.String) return java.lang.String'"));
//System.out.println(f.toString());
}
}