Changes in release 3.1.2

New features

  • Added ability to join and compare cursor content by specific columns (PK/UK) (#453)
  • Added support for comma separated list of suite paths/packages when calling ut.run (#479)
  • Added ability to run a test package that got invalidated due to dependency invalidation (#489)
  • Added support for package level constants and predefined exceptions in --%throws annotation (#685)
  • Added support for standalone --%beforeall, --%beforeeach, --%afterall, --%aftereach annotations with list of procedures to execute (#649)
  • Added support for list of procedure names in before/after annotations (#649)
  • Added support for BLOB/CLOB in is_empty() matcher (#707)

Enchancements

  • utPLSQL will now provide additional warnings, when unsupported annotations are found in a unit test suite package (#624)
  • utPLSQL will now produce valid XML in UT_JUNIT_REPORTER when dbms_output or test results contain <![CDATA[ text (#643)
  • improved installation process for non-DBA users (#658)
  • added uninstall_all.sql script that completely removes utPLSQL objects (#673)
  • Changed the way contexts are named (#674)
  • Added ability to pass client encoding information for XML/HTML reporting (requires utPLSQL-cli 3.1.1) (#676)
  • Exposed base objects for expectations, so that IDE like DataGrip can provide auto-complete (#675)
  • Both context-name as well as procedure inside context can now be passed as parameter to ut.run() (#679)
  • Added validation of privileges before installation of utPLSQL (#693)

Bug-fixes

  • UT_JUNIT_REPORTER does not report tests when procedure names are not all lower-case (#659) (#696)
  • Fixed utPLSQL installation order to avoid warnings/failures on install (#657)
  • Fixed uninstall process for utPLSQL (#673)
  • Fixed syntax errors in HTML coverage report (#681) (#682)
  • Fixed install requirements documentation (#687)
  • Fixed capturing of DBMS_OUTPUT buffer at the start of test run (#686)

Internal enhancements

  • Added continuous testing of XML/HTML reports format (#684)
  • Added sonarcloud branch-based and PR code analysis (#708)
  • Added ability to trigger builds on sub-projects (#501)