diff --git a/README.md b/README.md index 7f5a7ff5..030f03d5 100644 --- a/README.md +++ b/README.md @@ -144,7 +144,7 @@ Please file your bug reports, enhancement requests, questions and other support ## How to Build -1. [Download](http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html) and install SQL Developer 19.4.0 +1. [Download](http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html) and install SQL Developer 20.2.0 2. [Download](https://maven.apache.org/download.cgi) and install Apache Maven 3.6.3 3. [Download](https://git-scm.com/downloads) and install a git command line client 4. Clone the utPLSQL-SQLDeveloper repository @@ -154,7 +154,7 @@ Please file your bug reports, enhancement requests, questions and other support 6. Run maven build by the following command - mvn -Dsqldev.basedir=/Applications/SQLDeveloper19.4.0.app/Contents/Resources/sqldeveloper -DskipTests=true clean package + mvn -Dsqldev.basedir=/Applications/SQLDeveloper20.2.0.app/Contents/Resources/sqldeveloper -DskipTests=true clean package Amend the parameter sqldev.basedir to match the path of your SQL Developer installation. This folder is used to reference Oracle jar files which are not available in public Maven repositories 7. The resulting file ```utplsql_for_SQLDev_x.x.x-SNAPSHOT.zip``` in the ```target``` directory can be installed within SQL Developer diff --git a/sqldev/pom.xml b/sqldev/pom.xml index 66d32e35..4ed3e129 100644 --- a/sqldev/pom.xml +++ b/sqldev/pom.xml @@ -13,7 +13,7 @@ 1.8 1.8 - /Applications/SQLDeveloper19.4.0.app/Contents/Resources/sqldeveloper + /Applications/SQLDeveloper20.2.0.app/Contents/Resources/sqldeveloper utplsql_for_SQLDev_${project.version} diff --git a/sqldev/src/main/java/org/utplsql/sqldev/ui/preference/PreferencePanel.java b/sqldev/src/main/java/org/utplsql/sqldev/ui/preference/PreferencePanel.java index 89786dae..8a0bf227 100644 --- a/sqldev/src/main/java/org/utplsql/sqldev/ui/preference/PreferencePanel.java +++ b/sqldev/src/main/java/org/utplsql/sqldev/ui/preference/PreferencePanel.java @@ -252,9 +252,9 @@ private CharSequence utSpecTemplate() { sb.append(suitePathTextField.getText()); sb.append(")\n"); } - sb.append('\n'); - sb.append('\t'); - sb.append(utSpecProcTemplate()); + sb.append("\n\t"); + sb.append(utSpecProcTemplate().toString().trim().replace("\n", "\n\t")); + sb.append("\n\n"); sb.append("END "); sb.append(testPackagePrefixTextField.getText()); sb.append("[package_name]"); @@ -271,7 +271,7 @@ private CharSequence utSpecProcTemplate() { if (withContext) { sb.append("--%context([procedure_name])\n\n"); } - for (int i = 0; i < numberOfTestsPerUnit; i ++) { + for (int i = 1; i <= numberOfTestsPerUnit; i ++) { sb.append("--%test\n"); if (disableTestsCheckBox.isSelected()) { sb.append("--%disabled\n"); @@ -297,10 +297,9 @@ private CharSequence utBodyTemplate() { sb.append(testPackagePrefixTextField.getText()); sb.append("[package_name]"); sb.append(testPackageSuffixTextField.getText()); - sb.append(" IS\n\n"); - sb.append('\t'); - sb.append(utBodyProcTemplate()); - sb.append('\n'); + sb.append(" IS\n\n\t"); + sb.append(utBodyProcTemplate().toString().trim().replace("\n", "\n\t")); + sb.append("\n\n"); sb.append("END "); sb.append(testPackagePrefixTextField.getText()); sb.append("[package_name]"); @@ -314,7 +313,7 @@ private CharSequence utBodyProcTemplate() { StringBuilder sb = new StringBuilder(); final Integer numberOfTestsPerUnit = (Integer) numberOfTestsPerUnitModel.getValue(); final boolean withContext = numberOfTestsPerUnit > 1; - for (int i = 0; i < numberOfTestsPerUnit; i++) { + for (int i = 1; i <= numberOfTestsPerUnit; i++) { if (generateCommentsCheckBox.isSelected()) { sb.append("--\n"); sb.append("-- test"); @@ -344,7 +343,7 @@ private CharSequence utBodyProcTemplate() { sb.append("\t-- ...\n\n"); sb.append("\t-- assert\n"); } - sb.append("\tut.expect(l_actual).to_equal(l_expected);"); + sb.append("\tut.expect(l_actual).to_equal(l_expected);\n"); sb.append("END "); sb.append(testUnitPrefixTextField.getText()); sb.append("[procedure_name]");