tim-vandecasteele/grape-swagger

View on GitHub
lib/grape-swagger.rb

Summary

Maintainability
C
7 hrs
Test Coverage

Method combine_routes has a Cognitive Complexity of 17 (exceeds 5 allowed). Consider refactoring.
Open

      def combine_routes(app, doc_klass)
        app.routes.each do |route|
          route_path = route.path
          route_match = route_path.split(/^.*?#{route.prefix.to_s}/).last
          next unless route_match
Severity: Minor
Found in lib/grape-swagger.rb - About 2 hrs to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method combine_namespace_routes has a Cognitive Complexity of 17 (exceeds 5 allowed). Consider refactoring.
Open

      def combine_namespace_routes(namespaces)
        # iterate over each single namespace
        namespaces.each do |name, namespace|
          # get the parent route for the namespace
          parent_route_name = extract_parent_route(name)
Severity: Minor
Found in lib/grape-swagger.rb - About 2 hrs to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method combine_namespace_routes has 31 lines of code (exceeds 25 allowed). Consider refactoring.
Open

      def combine_namespace_routes(namespaces)
        # iterate over each single namespace
        namespaces.each do |name, namespace|
          # get the parent route for the namespace
          parent_route_name = extract_parent_route(name)
Severity: Minor
Found in lib/grape-swagger.rb - About 1 hr to fix

    Method standalone_sub_namespaces has a Cognitive Complexity of 10 (exceeds 5 allowed). Consider refactoring.
    Open

          def standalone_sub_namespaces(name, namespaces)
            # assign all nested namespace routes to this resource, too
            # (unless they are assigned to another standalone namespace themselves)
            sub_namespaces = {}
            # fetch all namespaces that are children of the current namespace
    Severity: Minor
    Found in lib/grape-swagger.rb - About 1 hr to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Method combine_namespaces has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
    Open

          def combine_namespaces(app)
            app.endpoints.each do |endpoint|
              ns = if endpoint.respond_to?(:namespace_stackable)
                     endpoint.namespace_stackable(:namespace).last
                   else
    Severity: Minor
    Found in lib/grape-swagger.rb - About 55 mins to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    There are no issues that match your filters.

    Category
    Status