avocado-framework/avocado

View on GitHub

Showing 489 of 903 total issues

Function handle_starttag has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
Open

    def handle_starttag(self, tag, attrs):
        if tag != "a":
            return
        for attr in attrs:
            if attr[0] == "href" and re.match(self.pattern, attr[1]):
Severity: Minor
Found in avocado/utils/vmimage.py - About 45 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

Function _set_collectibles has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
Open

    def _set_collectibles(self):
        timeout = self.config.get("sysinfo.collect.commands_timeout")
        locale = self.config.get("sysinfo.collect.locale")
        if self.profiler:
            for cmd in self.sysinfo_files["profilers"]:
Severity: Minor
Found in avocado/core/sysinfo.py - About 45 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

Function __init__ has 6 arguments (exceeds 4 allowed). Consider refactoring.
Open

    def __init__(
Severity: Minor
Found in avocado/core/task/statemachine.py - About 45 mins to fix

    Function _create_connection has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
    Open

        def _create_connection(self):
            """
            Creates connection with `self.uri` based on `socket.create_connection`
            """
            if ":" in self.uri:
    Severity: Minor
    Found in avocado/core/nrunner/task.py - About 45 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

    Function _extend_test_list has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
    Open

    def _extend_test_list(current, new):
        for test in new:
            test_method_name = test[0]
            found = False
            for current_test in current:
    Severity: Minor
    Found in avocado/core/safeloader/core.py - About 45 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

    Function __init__ has 6 arguments (exceeds 4 allowed). Consider refactoring.
    Open

        def __init__(
    Severity: Minor
    Found in avocado/core/test.py - About 45 mins to fix

      Avoid deeply nested control flow statements.
      Open

                          if not _must_key_val_matches(
                              must_key_val, test_tags, include_empty_key
                          ):
                              continue
      
      
      Severity: Major
      Found in avocado/core/tags.py - About 45 mins to fix

        Avoid deeply nested control flow statements.
        Open

                            if not must_flat.issubset(test_tags):
                                continue
        
        
        Severity: Major
        Found in avocado/core/tags.py - About 45 mins to fix

          Function emit has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
          Open

              def emit(self, record):
                  try:
                      msg = self.format(record)
                      if record.levelno < logging.INFO:  # Most messages are INFO
                          pass
          Severity: Minor
          Found in avocado/core/output.py - About 45 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

          Function merge_with_arguments has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
          Open

              def merge_with_arguments(self, arg_parse_config):
                  """Merge the current settings with the command-line args.
          
                  After parsing argument options this method should be executed to have
                  an unified settings.
          Severity: Minor
          Found in avocado/core/settings.py - About 45 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

          Function add_log_handler has 6 arguments (exceeds 4 allowed). Consider refactoring.
          Open

          def add_log_handler(
          Severity: Minor
          Found in avocado/core/output.py - About 45 mins to fix

            Consider simplifying this complex logical expression.
            Open

                    if len(line) > 2 and (line[:3] == "+++" or line[:3] == "---"):
                        continue
                    # ignore line range information in the output
                    elif len(line) > 1 and line[:2] == "@@":
                        continue
            Severity: Major
            Found in avocado/utils/diff_validator.py - About 40 mins to fix

              Function _test has 5 arguments (exceeds 4 allowed). Consider refactoring.
              Open

                  def _test(self, name, content, exp_str, mode=MODE_0664, count=1):
              Severity: Minor
              Found in selftests/functional/list.py - About 35 mins to fix

                Function __init__ has 5 arguments (exceeds 4 allowed). Consider refactoring.
                Open

                    def __init__(self, name, version, release, checksum, arch):
                Severity: Minor
                Found in avocado/plugins/distro.py - About 35 mins to fix

                  Function fetch_assets has 5 arguments (exceeds 4 allowed). Consider refactoring.
                  Open

                  def fetch_assets(
                  Severity: Minor
                  Found in avocado/plugins/assets.py - About 35 mins to fix

                    Function test_send_signal_sudo_enabled has 5 arguments (exceeds 4 allowed). Consider refactoring.
                    Open

                        def test_send_signal_sudo_enabled(self, run, get_children, get_pid, sudo, _):
                    Severity: Minor
                    Found in selftests/unit/utils/process.py - About 35 mins to fix

                      Function test_send_signal_sudo_enabled_with_exception has 5 arguments (exceeds 4 allowed). Consider refactoring.
                      Open

                          def test_send_signal_sudo_enabled_with_exception(
                      Severity: Minor
                      Found in selftests/unit/utils/process.py - About 35 mins to fix

                        Function test_kill_process_tree_dont_timeout_infinity has 5 arguments (exceeds 4 allowed). Consider refactoring.
                        Open

                            def test_kill_process_tree_dont_timeout_infinity(
                        Severity: Minor
                        Found in selftests/unit/utils/process.py - About 35 mins to fix

                          Function __init__ has 5 arguments (exceeds 4 allowed). Consider refactoring.
                          Open

                              def __init__(self, name="", value=None, parent=None, children=None):

                            Function reconfigure_dax_device has 5 arguments (exceeds 4 allowed). Consider refactoring.
                            Open

                                def reconfigure_dax_device(
                            Severity: Minor
                            Found in avocado/utils/pmem.py - About 35 mins to fix
                              Severity
                              Category
                              Status
                              Source
                              Language