Skip to content

Commit 29676ee

Browse files
add unit test for runnable DAO
1 parent 750f3d0 commit 29676ee

File tree

1 file changed

+50
-0
lines changed

1 file changed

+50
-0
lines changed

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

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
package org.utplsql.sqldev.tests
1717

1818
import java.util.ArrayList
19+
import java.util.HashMap
1920
import org.junit.AfterClass
2021
import org.junit.Assert
2122
import org.junit.BeforeClass
@@ -244,4 +245,53 @@ class DalTest extends AbstractJdbcTest {
244245
Assert.assertEquals("PROCEDURE.JUNIT_P", effective.get(0).id)
245246
}
246247

248+
@Test
249+
def void runnables() {
250+
val dao = new UtplsqlDao(dataSource.connection)
251+
jdbcTemplate.execute('''
252+
CREATE OR REPLACE PACKAGE junit_utplsql_test_pkg IS
253+
-- %suite
254+
-- %suitepath(a.b.c)
255+
256+
-- %test
257+
PROCEDURE t0;
258+
259+
-- %context(mycontext)
260+
261+
-- %test
262+
PROCEDURE t1;
263+
264+
-- %test
265+
PROCEDURE t2;
266+
267+
-- %endcontext
268+
269+
-- %test
270+
PROCEDURE t3;
271+
END junit_utplsql_test_pkg;
272+
''')
273+
val effectiveNodes = dao.runnables()
274+
Assert.assertEquals(16, effectiveNodes.size)
275+
val effective = new HashMap<String, String>
276+
for (node : effectiveNodes) {
277+
effective.put(node.id, node.parentId)
278+
}
279+
Assert.assertEquals(null, effective.get("SUITE"))
280+
Assert.assertEquals("SUITE", effective.get("SCOTT.JUNIT_UTPLSQL_TEST_PKG"))
281+
Assert.assertEquals("SCOTT.JUNIT_UTPLSQL_TEST_PKG", effective.get("SCOTT.JUNIT_UTPLSQL_TEST_PKG.t0"))
282+
Assert.assertEquals("SCOTT.JUNIT_UTPLSQL_TEST_PKG", effective.get("SCOTT.JUNIT_UTPLSQL_TEST_PKG.t1"))
283+
Assert.assertEquals("SCOTT.JUNIT_UTPLSQL_TEST_PKG", effective.get("SCOTT.JUNIT_UTPLSQL_TEST_PKG.t2"))
284+
Assert.assertEquals("SCOTT.JUNIT_UTPLSQL_TEST_PKG", effective.get("SCOTT.JUNIT_UTPLSQL_TEST_PKG.t3"))
285+
Assert.assertEquals(null, effective.get("SUITEPATH"))
286+
Assert.assertEquals("SUITEPATH", effective.get("SCOTT:a"))
287+
Assert.assertEquals("SCOTT:a", effective.get("SCOTT:a.b"))
288+
Assert.assertEquals("SCOTT:a.b", effective.get("SCOTT:a.b.c"))
289+
Assert.assertEquals("SCOTT:a.b.c", effective.get("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG"))
290+
Assert.assertEquals("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG", effective.get("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG.mycontext"))
291+
Assert.assertEquals("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG", effective.get("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG.t0"))
292+
Assert.assertEquals("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG", effective.get("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG.t3"))
293+
Assert.assertEquals("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG.mycontext", effective.get("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG.mycontext.t1"))
294+
Assert.assertEquals("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG.mycontext", effective.get("SCOTT:a.b.c.JUNIT_UTPLSQL_TEST_PKG.mycontext.t2"))
295+
}
296+
247297
}

0 commit comments

Comments
 (0)