felipebz / zpa

Parser and static code analysis tool for PL/SQL and Oracle SQL.
https://zpa.felipebz.com
GNU Lesser General Public License v3.0
211 stars 77 forks source link

Adding mutliple Custom rule #142

Closed tplazaro closed 3 years ago

tplazaro commented 3 years ago

Hi, I'm trying to run the test with templates in plsql-custom-rules using assertj-core 3.18.1, java 8 and getting below error:

[ERROR] com.company.plsql.ForbiddenDmlCheckTest.com.company.plsql.ForbiddenDmlCheckTest.test() Time elapsed: 0.166 s <<< FAILURE! java.lang.NoSuchMethodError: org.assertj.core.api.AbstractStringAssert.as(Ljava/lang/String;[Ljava/lang/Object;)Lorg/assertj/core/api/AbstractAssert; at org.sonar.plsqlopen.checks.verifier.PlSqlCheckVerifier$Companion.verifyIssue(PlSqlCheckVerifier.kt:144) at org.sonar.plsqlopen.checks.verifier.PlSqlCheckVerifier$Companion.verify(PlSqlCheckVerifier.kt:122) at org.sonar.plsqlopen.checks.verifier.PlSqlCheckVerifier$Companion.verify$default(PlSqlCheckVerifier.kt:112) at org.sonar.plsqlopen.checks.verifier.PlSqlCheckVerifier.verify(PlSqlCheckVerifier.kt) at com.company.plsql.ForbiddenDmlCheckTest.test(ForbiddenDmlCheckTest.java:10)

Any idea on this please? Am I using wrong version of assertj?

tplazaro commented 3 years ago

Update: I was able to run tests successfully using 3.12.0. Just probably a dumb question (sorry new to java). How does one add multiple rules in PlSqlCustomRulesDefinition.java? Specifically in this code block: @Override public Class[] checkClasses() { return new Class[] { ForbiddenDMLCheck.class }; }

felipebz commented 3 years ago

Hi. You can add multiple rules doing this:

@Override public Class[] checkClasses() { return new Class[] { ForbiddenDMLCheck.class, Rule2.class, Another.class }; }

tplazaro commented 3 years ago

thank you!