Skip to content

Commit

Permalink
test(it): Add extracted code from the PL/SQL Language Reference
Browse files Browse the repository at this point in the history
  • Loading branch information
felipebz committed Jun 21, 2024
1 parent 473a8da commit 039af64
Show file tree
Hide file tree
Showing 815 changed files with 14,329 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,10 @@ class OracleDocsExtractor {

val entries = zipFile.entries()

val booksToExtract = listOf("sqlrf")
val booksToExtract = listOf(
"lnpls", // PL/SQL Language Reference
"sqlrf", // SQL Language Reference
)

entries.asSequence()
.filter { !it.isDirectory }
Expand All @@ -59,10 +62,11 @@ class OracleDocsExtractor {
var text = element.text()
.replace('', '\'')

val name = "${File(entry.name).nameWithoutExtension}-$index.sql"

val fileContent = extractValidStatementsFrom(text)

if (fileContent.isNotEmpty()) {
val name = "${File(entry.name).nameWithoutExtension}-$index.sql"
val path = entry.name.substring(entry.name.indexOf(parent))
text = "-- https://docs.oracle.com/en/database/oracle/oracle-database/23/$path\n$fileContent"

Expand All @@ -78,7 +82,14 @@ class OracleDocsExtractor {
}

private fun extractValidStatementsFrom(text: String): String {
val parser = ScriptParser(text)
val alteredText =
if (text.startsWith("PACKAGE")) {
"CREATE $text"
} else {
text
}

val parser = ScriptParser(alteredText)
var cmd: ISQLCommand
var validText = ""
while ((parser.next().also { cmd = it }) != null) {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"lnpls/plsql-triggers-36.sql" : [
10
]
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,75 @@
{
"lnpls/CREATE-TYPE-statement-15.sql" : [
4,
8
],
"lnpls/CREATE-TYPE-statement-9.sql" : [
7
],
"lnpls/plsql-control-statements-16.sql" : [
3
],
"lnpls/plsql-control-statements-19.sql" : [
3
],
"lnpls/plsql-control-statements-24.sql" : [
3
],
"lnpls/plsql-control-statements-26.sql" : [
3
],
"lnpls/plsql-control-statements-71.sql" : [
3
],
"lnpls/plsql-data-types-44.sql" : [
3
],
"lnpls/plsql-data-types-48.sql" : [
3
],
"lnpls/plsql-data-types-67.sql" : [
3
],
"lnpls/plsql-language-fundamentals-112.sql" : [
3
],
"lnpls/plsql-language-fundamentals-114.sql" : [
3
],
"lnpls/plsql-language-fundamentals-121.sql" : [
3
],
"lnpls/plsql-language-fundamentals-123.sql" : [
3
],
"lnpls/plsql-language-fundamentals-37.sql" : [
3
],
"lnpls/plsql-language-fundamentals-43.sql" : [
3
],
"lnpls/plsql-subprograms-102.sql" : [
4
],
"lnpls/plsql-subprograms-87.sql" : [
2,
3
],
"lnpls/plsql-subprograms-88.sql" : [
3
],
"lnpls/plsql-subprograms-91.sql" : [
3,
4,
5,
9
],
"lnpls/plsql-triggers-44.sql" : [
6
],
"lnpls/plsql-triggers-45.sql" : [
8
],
"sqlrf/CAST-7.sql" : [
12
],
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,18 @@
{
"lnpls/dynamic-sql-25.sql" : [
14,
14,
14
],
"lnpls/plsql-collections-and-records-82.sql" : [
4,
4,
4
],
"lnpls/static-sql-42.sql" : [
4,
4
],
"sqlrf/Comments-0.sql" : [
2,
2,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
{
"lnpls/plsql-error-handling-51.sql" : [
18
],
"lnpls/plsql-optimization-and-tuning-26.sql" : [
19,
32
],
"lnpls/plsql-optimization-and-tuning-33.sql" : [
19,
44
],
"lnpls/static-sql-70.sql" : [
25
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"lnpls/plsql-language-fundamentals-110.sql" : [
8,
14
],
"lnpls/plsql-language-fundamentals-121.sql" : [
17
],
"lnpls/plsql-language-fundamentals-63.sql" : [
7
],
"lnpls/plsql-language-fundamentals-76.sql" : [
9
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"lnpls/plsql-language-fundamentals-27.sql" : [
7
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"lnpls/plsql-language-fundamentals-66.sql" : [
3,
3
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"lnpls/plsql-packages-14.sql" : [
10
]
}
Loading

0 comments on commit 039af64

Please sign in to comment.