Skip to content
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

feat(freespace_planning_algorithms): add tests for updated astar algorithm #6623

Closed
wants to merge 5 commits into from

style(pre-commit): autofix

9ec58dc
Select commit
Loading
Failed to load commit list.
Closed

feat(freespace_planning_algorithms): add tests for updated astar algorithm #6623

style(pre-commit): autofix
9ec58dc
Select commit
Loading
Failed to load commit list.
CodeScene Delta Analysis / CodeScene Cloud Delta Analysis (main) failed Apr 10, 2024 in 38s

CodeScene PR Check

Code Health Quality Gates: FAILED

  • Declining Code Health: 8 findings(s) 🚩

View detailed results in CodeScene

Details

🚩 Declining Code Health (highest to lowest):

  • Complex Conditional test_freespace_planning_algorithms_no_obstacles.cpp: construct_cost_map
  • Overall Code Complexity test_freespace_planning_algorithms_no_obstacles.cpp
  • Deep, Nested Complexity test_freespace_planning_algorithms_no_obstacles.cpp: test_algorithm
  • Complex Method test_freespace_planning_algorithms_no_obstacles.cpp: construct_cost_map
  • Primitive Obsession test_freespace_planning_algorithms_no_obstacles.cpp
  • Complex Method test_freespace_planning_algorithms_no_obstacles.cpp: test_algorithm
  • Bumpy Road Ahead test_freespace_planning_algorithms_no_obstacles.cpp: construct_cost_map
  • Bumpy Road Ahead test_freespace_planning_algorithms_no_obstacles.cpp: test_algorithm

Annotations

Check warning on line 153 in planning/freespace_planning_algorithms/test/src/test_freespace_planning_algorithms_no_obstacles.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Complex Method

construct_cost_map has a cyclomatic complexity of 38, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.

Check warning on line 382 in planning/freespace_planning_algorithms/test/src/test_freespace_planning_algorithms_no_obstacles.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Complex Method

test_algorithm has a cyclomatic complexity of 20, threshold = 9. This function has many conditional statements (e.g. if, for, while), leading to lower code health. Avoid adding more conditionals and code to it without refactoring.

Check warning on line 124 in planning/freespace_planning_algorithms/test/src/test_freespace_planning_algorithms_no_obstacles.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Complex Conditional

construct_cost_map has 7 complex conditionals with 21 branches, threshold = 2. A complex conditional is an expression inside a branch (e.g. if, for, while) which consists of multiple, logical operators such as AND/OR. The more logical operators in an expression, the more severe the code smell.

Check warning on line 153 in planning/freespace_planning_algorithms/test/src/test_freespace_planning_algorithms_no_obstacles.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Bumpy Road Ahead

construct_cost_map has 3 blocks with nested conditional logic. Any nesting of 2 or deeper is considered. Threshold is one single, nested block per function. The Bumpy Road code smell is a function that contains multiple chunks of nested conditional logic. The deeper the nesting and the more bumps, the lower the code health.

Check warning on line 382 in planning/freespace_planning_algorithms/test/src/test_freespace_planning_algorithms_no_obstacles.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Bumpy Road Ahead

test_algorithm has 2 blocks with nested conditional logic. Any nesting of 2 or deeper is considered. Threshold is one single, nested block per function. The Bumpy Road code smell is a function that contains multiple chunks of nested conditional logic. The deeper the nesting and the more bumps, the lower the code health.

Check warning on line 1 in planning/freespace_planning_algorithms/test/src/test_freespace_planning_algorithms_no_obstacles.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Overall Code Complexity

This module has a mean cyclomatic complexity of 4.93 across 15 functions. The mean complexity threshold is 4. This file has many conditional statements (e.g. if, for, while) across its implementation, leading to lower code health. Avoid adding more conditionals.

Check warning on line 382 in planning/freespace_planning_algorithms/test/src/test_freespace_planning_algorithms_no_obstacles.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Deep, Nested Complexity

test_algorithm has a nested complexity depth of 4, threshold = 4. This function contains deeply nested logic such as if statements and/or loops. The deeper the nesting, the lower the code health.

Check warning on line 1 in planning/freespace_planning_algorithms/test/src/test_freespace_planning_algorithms_no_obstacles.cpp

See this annotation in the file changed.

@codescene-delta-analysis codescene-delta-analysis / CodeScene Cloud Delta Analysis (main)

❌ New issue: Primitive Obsession

In this module, 61.1% of all function arguments are primitive types, threshold = 30.0%. The functions in this file have too many primitive types (e.g. int, double, float) in their function argument lists. Using many primitive types lead to the code smell Primitive Obsession. Avoid adding more primitive arguments.