Skip to content

Commit c59c506

Browse files
Merge pull request #72 from PhilippSalvisberg/feature/63_coverage
#63 - Improve code coverage for other schemas
2 parents 0e1e46e + 467a4bd commit c59c506

File tree

3 files changed

+20
-11
lines changed

3 files changed

+20
-11
lines changed

sqldev/src/main/java/org/utplsql/sqldev/dal/UtplsqlDao.xtend

+4-4
Original file line numberDiff line numberDiff line change
@@ -922,11 +922,11 @@ class UtplsqlDao {
922922
* @param name test package name
923923
* @return list of dependencies in the current schema
924924
*/
925-
def List<String> includes(String name) {
925+
def List<String> includes(String owner, String name) {
926926
val sql = '''
927-
select referenced_name
927+
select referenced_owner || '.' || referenced_name AS dep_name
928928
from «IF dbaViewAccessible»dba«ELSE»all«ENDIF»_dependencies
929-
WHERE owner = user
929+
WHERE owner = upper(?)
930930
AND name = upper(?)
931931
AND referenced_owner NOT IN (
932932
'SYS', 'SYSTEM', 'XS$NULL', 'OJVMSYS', 'LBACSYS', 'OUTLN', 'SYS$UMF',
@@ -940,7 +940,7 @@ class UtplsqlDao {
940940
AND referenced_owner NOT LIKE 'APEX\_______'
941941
AND referenced_type IN ('PACKAGE', 'TYPE', 'PROCEDURE', 'FUNCTION', 'TRIGGER')
942942
'''
943-
val deps = jdbcTemplate.queryForList(sql, String, #[name])
943+
val deps = jdbcTemplate.queryForList(sql, String, #[owner, name])
944944
return deps
945945
}
946946

sqldev/src/main/java/org/utplsql/sqldev/menu/UtplsqlController.xtend

+13-4
Original file line numberDiff line numberDiff line change
@@ -313,12 +313,21 @@ class UtplsqlController implements Controller {
313313
}
314314
}
315315
}
316-
316+
317317
def List<String> dependencies(String name, String connectionName) {
318+
var List<String> ret = null
319+
if (connectionName !== null) {
320+
val owner = Connections.instance.getConnection(connectionName).schema
321+
ret = dependencies(owner, name, connectionName)
322+
}
323+
return ret
324+
}
325+
326+
def List<String> dependencies(String owner, String name, String connectionName) {
318327
var List<String> ret = null
319328
if (connectionName !== null) {
320329
val dao = new UtplsqlDao(Connections.instance.getConnection(connectionName))
321-
ret = dao.includes(name)
330+
ret = dao.includes(owner, name)
322331
}
323332
return ret
324333
}
@@ -328,12 +337,12 @@ class UtplsqlController implements Controller {
328337
for (i : 0 ..< context.selection.length) {
329338
val element = context.selection.get(i)
330339
if (element instanceof PlSqlNode) {
331-
val dep = dependencies(element.objectName, connectionName)
340+
val dep = dependencies(element.owner, element.objectName, connectionName)
332341
for (d : dep) {
333342
ret.add(d)
334343
}
335344
} else if (element instanceof ChildObjectElement) {
336-
val dep = dependencies(element.URL.memberObject, connectionName)
345+
val dep = dependencies(element.URL.schema, element.URL.memberObject, connectionName)
337346
for (d : dep) {
338347
ret.add(d)
339348
}

sqldev/src/test/java/org/utplsql/sqldev/test/dal/DalTest.xtend

+3-3
Original file line numberDiff line numberDiff line change
@@ -488,10 +488,10 @@ class DalTest extends AbstractJdbcTest {
488488
END junit_utplsql_test_pkg;
489489
''')
490490
val dao = new UtplsqlDao(dataSource.connection)
491-
val actualEmpty = dao.includes('TEST_F1')
491+
val actualEmpty = dao.includes('SCOTT', 'TEST_F1')
492492
Assert.assertEquals(#[], actualEmpty)
493-
val actual = dao.includes('junit_utplsql_test_pkg')
494-
Assert.assertEquals(#['JUNIT_UTPLSQL_TEST_PKG','JUNIT_F','UT_EXPECTATION'].sort, actual.sort)
493+
val actual = dao.includes('SCOTT', 'junit_utplsql_test_pkg')
494+
Assert.assertEquals(#['SCOTT.JUNIT_UTPLSQL_TEST_PKG','SCOTT.JUNIT_F','UT3_LATEST_RELEASE.UT_EXPECTATION'].sort, actual.sort)
495495
}
496496

497497
@Test

0 commit comments

Comments
 (0)