-
Notifications
You must be signed in to change notification settings - Fork 67
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
False-Positive: DB Access in UT #433
Comments
The Code Inspector does not provide the inherited class to perform the scan on its tokens. Should we skip inherited test classes? |
Short-term, I'd second skipping inherited test classes. We're constantly confronted with this check's false negatives which undermines developer confidence/buy-in. Mid-term, superclass information needs to be made available to code pal, as it forms the basis for several conceivable checks. For example, this check is very reasonable and definitely needs it. |
* partially solves #433 * changelog * renaming variable Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co>
* fixes #433 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co>
Solution available under branch |
* 1.16.0 * enabling changelog * RAP needs CREATE OBJECT ... FOR TESTING (#448) * resolves #444 * changelog * COLLECT restrictions (#442) * new check * abapLint * supporting programs * closing gaps * adding documentation * Adding Changelog * exempt ddic typed table * supporting ddic table type * supporting header line * removing gap section * supporting class attributes * Use functional writing style for method calls * Adding example * Prefer Pragmas to Pseudo Comments (#446) * new check * new check * documentation * exempting SLIN * Adding example * Unit-Test Assert Validator (#450) * Unit-Test Assert Validator resolve #449 * changelog * BAdI example class vs Percentage Comment (#451) * BAdI example class vs Percentage Comment resolve #443 * changelog * Allow Exemptions (#453) * big refactoring * isolating unit tests * changelog * forcing commit * forcing commit * Handle functional operand in assert check (#462) * Functional operand check * Fix unit test and nesting syntax * Lint * Update exemption unit test * Fix unit test * Add functional operand fix #460 to changelog * removing static test, and adding more test cases Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.com> * Unit Test on 752 (#463) * fix #461 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Refactoring Code Pal (#457) * saving progress * saving progress * Update changelog.txt * global class vs local class * local vs global test class * Global Test Class fix * enabling unit test * refactoring y_check_function uts * abaplint feedback * abaplint feedback * removing unecessary fields and fixing checksum * fixing coverages (statement) * default noaunit for test * fixing bug in chain declaration * fixing unit test * Less than 3 newlines and at least a single newline are required in between metho * ref #461 * solving conflict * Update changelog.txt * Update src/foundation/y_code_pal_ref_scan_double.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * Update src/foundation/y_code_pal_ref_scan_double.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * fixing collect dump * fixing pseudo comment dump and performance issue * reusing refscan (performance) * Update src/checks/y_check_pseudo_comment_usage.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * Update src/checks/y_check_pseudo_comment_usage.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * Update src/checks/y_check_pseudo_comment_usage.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * Update src/checks/y_check_pseudo_comment_usage.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * pseudo comment refactoring (performance) * collect (performance) * Update changelog.txt * Reorder definitions to top of routine * pseudo_comment_usage ignore_pseudo * more performance improvements * removing deprecated methods * activating prefer_inline (#465) * activating prefer_inline * Prefer Inline Declarations, PERCENTAGE * Prefer Inline Declarations, RISK_LVL * Prefer Inline Declarations, HAS_REDIRECTION * Prefer Inline Declarations, TITLE * Prefer Inline Declarations, CLASS_SEARCH_STRING Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * performance improvement (check statement pos) * Prefer Inline Declarations, PROFILE_CONFIGURATIONS * Line break multiple parameters * Reorder definitions to top of routine * Update changelog.txt * magic number * adding pseudo comments * Adding pseudo comment * Fixing magic number * Use | to assemble text! * Use | to assemble text! * Prefer RETURNING to EXPORTING! * Prefer LINE_EXISTS or LINE_INDEX to READ TABLE or LOOP AT! * Prefer IS NOT to NOT IS! * replacing pseudo * removing unecessary pseudos * unecessary pseudo * clean coding f4call * new SAP note dependency Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * use native *_wa variables (#475) * resolves #474 * changelog * forcing commit * restore Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * disabling abaplint check_syntax * Magic Number: Table Index (#477) * resolves #474 * fix #475 * fixing case * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Prefer New to Create Object: Dynamic Type (#478) * Fixes #469 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Magic Number: Leading Zeros (#479) * fixing magic number for leading zeros * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Magic Number: CASE SY-TABIX and CO NUMBERS (#480) * case sy-tabix and Co numbers * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Y_CHECK_FORM: Screen Events (#482) * Fixes #454 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Empty Catch: Test Double Framework (#483) * Fixes #332 * Missing space between string or character literal and parentheses * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * line_exists does not support the operator IN (#485) * Fixes #484 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Alternative Pseudo Comment (#486) * saving progress * saving progress * saving progress * alternative pseudo * fixing 7.40 compatibility * 7.40 compatibility * revert checksum * adjusting pseudo comment usage * adding unit tests * Missing space between string or character literal and parentheses * new pseudo comment * changelog * alt_pcom in ut * Update empty_catch.md Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Chain Declaration for Complex Structures (#488) * new test scope * fixes #466 * cleaning self-reference * cleaning chain declaration * cleaning chain declaration * cleaning chain declaration * fixing syntax error * changelog * documentation Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * fixing syntax error * `Y_CHECK_MESSAGE_EASY_TO_FIND` dump (#492) * fixes #491 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * short review (#493) Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Prefer Pragmas to Pseudo Comments (#495) * fixes #489 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Pseudo Comment Usage: Multiple Inline Entries (#496) * fixes #494 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Skip `Prefer RETURNING to EXPORTING` when both exist (#497) * fixes #490 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * DB Access in UT: Local Inheritance (#498) * partially solves #433 * changelog * renaming variable Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * DB Access in UT: Global Inheritance (#500) * fixes #433 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * fixing short dump (#501) Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * removing unecessary pseudo comment * Prefer New: Dynamic Call with Parameters (#503) * fixes #502 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * mass change of check data * Update changelog.txt * UI finetuning * minor change * abaplint compliance * abaplint picky compliance * UI Changes * Revert "UI Changes" This reverts commit cac373d. * UI Changes * small UI adjustments * Update changelog.txt Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.com> Co-authored-by: Mike Pokraka <mike@quirky.me.uk> Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com>
* new version * Quickfix: Pseudo Comment (#509) * adding quickfixes * Less than 3 newlines and at least a single newline are required in between metho * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * fixing (#515) Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * abapgit 1.112.0 * remove unused variable (#522) Co-authored-by: Eugen Günther <64586309+eugen-guenther-sap@users.noreply.github.com> * mass change of check data (#507) * 1.16.0 * enabling changelog * RAP needs CREATE OBJECT ... FOR TESTING (#448) * resolves #444 * changelog * COLLECT restrictions (#442) * new check * abapLint * supporting programs * closing gaps * adding documentation * Adding Changelog * exempt ddic typed table * supporting ddic table type * supporting header line * removing gap section * supporting class attributes * Use functional writing style for method calls * Adding example * Prefer Pragmas to Pseudo Comments (#446) * new check * new check * documentation * exempting SLIN * Adding example * Unit-Test Assert Validator (#450) * Unit-Test Assert Validator resolve #449 * changelog * BAdI example class vs Percentage Comment (#451) * BAdI example class vs Percentage Comment resolve #443 * changelog * Allow Exemptions (#453) * big refactoring * isolating unit tests * changelog * forcing commit * forcing commit * Handle functional operand in assert check (#462) * Functional operand check * Fix unit test and nesting syntax * Lint * Update exemption unit test * Fix unit test * Add functional operand fix #460 to changelog * removing static test, and adding more test cases Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.com> * Unit Test on 752 (#463) * fix #461 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Refactoring Code Pal (#457) * saving progress * saving progress * Update changelog.txt * global class vs local class * local vs global test class * Global Test Class fix * enabling unit test * refactoring y_check_function uts * abaplint feedback * abaplint feedback * removing unecessary fields and fixing checksum * fixing coverages (statement) * default noaunit for test * fixing bug in chain declaration * fixing unit test * Less than 3 newlines and at least a single newline are required in between metho * ref #461 * solving conflict * Update changelog.txt * Update src/foundation/y_code_pal_ref_scan_double.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * Update src/foundation/y_code_pal_ref_scan_double.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * fixing collect dump * fixing pseudo comment dump and performance issue * reusing refscan (performance) * Update src/checks/y_check_pseudo_comment_usage.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * Update src/checks/y_check_pseudo_comment_usage.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * Update src/checks/y_check_pseudo_comment_usage.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * Update src/checks/y_check_pseudo_comment_usage.clas.abap Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * pseudo comment refactoring (performance) * collect (performance) * Update changelog.txt * Reorder definitions to top of routine * pseudo_comment_usage ignore_pseudo * more performance improvements * removing deprecated methods * activating prefer_inline (#465) * activating prefer_inline * Prefer Inline Declarations, PERCENTAGE * Prefer Inline Declarations, RISK_LVL * Prefer Inline Declarations, HAS_REDIRECTION * Prefer Inline Declarations, TITLE * Prefer Inline Declarations, CLASS_SEARCH_STRING Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * performance improvement (check statement pos) * Prefer Inline Declarations, PROFILE_CONFIGURATIONS * Line break multiple parameters * Reorder definitions to top of routine * Update changelog.txt * magic number * adding pseudo comments * Adding pseudo comment * Fixing magic number * Use | to assemble text! * Use | to assemble text! * Prefer RETURNING to EXPORTING! * Prefer LINE_EXISTS or LINE_INDEX to READ TABLE or LOOP AT! * Prefer IS NOT to NOT IS! * replacing pseudo * removing unecessary pseudos * unecessary pseudo * clean coding f4call * new SAP note dependency Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * use native *_wa variables (#475) * resolves #474 * changelog * forcing commit * restore Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * disabling abaplint check_syntax * Magic Number: Table Index (#477) * resolves #474 * fix #475 * fixing case * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Prefer New to Create Object: Dynamic Type (#478) * Fixes #469 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Magic Number: Leading Zeros (#479) * fixing magic number for leading zeros * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Magic Number: CASE SY-TABIX and CO NUMBERS (#480) * case sy-tabix and Co numbers * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Y_CHECK_FORM: Screen Events (#482) * Fixes #454 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Empty Catch: Test Double Framework (#483) * Fixes #332 * Missing space between string or character literal and parentheses * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * line_exists does not support the operator IN (#485) * Fixes #484 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Alternative Pseudo Comment (#486) * saving progress * saving progress * saving progress * alternative pseudo * fixing 7.40 compatibility * 7.40 compatibility * revert checksum * adjusting pseudo comment usage * adding unit tests * Missing space between string or character literal and parentheses * new pseudo comment * changelog * alt_pcom in ut * Update empty_catch.md Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Chain Declaration for Complex Structures (#488) * new test scope * fixes #466 * cleaning self-reference * cleaning chain declaration * cleaning chain declaration * cleaning chain declaration * fixing syntax error * changelog * documentation Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * fixing syntax error * `Y_CHECK_MESSAGE_EASY_TO_FIND` dump (#492) * fixes #491 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * short review (#493) Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Prefer Pragmas to Pseudo Comments (#495) * fixes #489 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Pseudo Comment Usage: Multiple Inline Entries (#496) * fixes #494 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * Skip `Prefer RETURNING to EXPORTING` when both exist (#497) * fixes #490 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * DB Access in UT: Local Inheritance (#498) * partially solves #433 * changelog * renaming variable Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * DB Access in UT: Global Inheritance (#500) * fixes #433 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * fixing short dump (#501) Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * removing unecessary pseudo comment * Prefer New: Dynamic Call with Parameters (#503) * fixes #502 * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> * mass change of check data * Update changelog.txt * UI finetuning * minor change * abaplint compliance * abaplint picky compliance * UI Changes * Revert "UI Changes" This reverts commit cac373d. * UI Changes * small UI adjustments * Update changelog.txt Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.com> Co-authored-by: Mike Pokraka <mike@quirky.me.uk> Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> * Refactoring Quick Fixes (#523) * quickfixes are now mandatory * first check + message * no quickfix * wip * implementing abstract method * pseudo comments won't enable the quickfix * removing unnecessary : * removing duplicated quick fix * changelog Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> Co-authored-by: Eugen Günther <64586309+eugen-guenther-sap@users.noreply.github.com> * Replace class by interface in check documentation (#543) * Update test-seam-usage.md * Update db-access-in-ut.md * Update external-call-in-ut.md * Update unit_test_assert.md * Replace class by interface In the check "Constants Interface Check", the documentation of the exception referred to class definition instead of interface definition. * Update db-access-in-ut.md * Update external-call-in-ut.md * Update test-seam-usage.md * Update test-seam-usage.md * Update unit_test_assert.md * Update unit_test_assert.md * Update unit_test_assert.md Co-authored-by: estevao-schultz-neto-SAP <63100656+estevao-schultz-neto-SAP@users.noreply.github.com> Co-authored-by: Eugen Günther <64586309+eugen-guenther-sap@users.noreply.github.com> * Update changelog.txt * Update changelog.txt Co-authored-by: Lucas Borin <5233413+lucasborin@users.noreply.github.co> Co-authored-by: Lars Hvam <larshp@hotmail.com> Co-authored-by: Eugen Günther <64586309+eugen-guenther-sap@users.noreply.github.com> Co-authored-by: Mike Pokraka <mike@quirky.me.uk> Co-authored-by: abaplint[bot] <24845621+abaplint[bot]@users.noreply.github.com> Co-authored-by: Michael Schneider <micha.schneider@sap.com> Co-authored-by: estevao-schultz-neto-SAP <63100656+estevao-schultz-neto-SAP@users.noreply.github.com>
Check Name
Y_CHECK_DB_ACCESS_IN_UT
Actual Behavior
There are two classes. The first one prepares the CDS test environment (cl_cds_test_environment), and the second performs the CDS test inheriting from the first class. The Code Pal reports the second test class as it performs a SELECT in a CDS view.
Expected Behavior
The check should automatically exempt this case.
The text was updated successfully, but these errors were encountered: