jarvisteach/appJar

View on GitHub
tests/widget_test.py

Summary

Maintainability
F
3 wks
Test Coverage

File widget_test.py has 2888 lines of code (exceeds 250 allowed). Consider refactoring.
Open

# -*- coding: utf-8 -*-
import sys
import time
import datetime
import pytest
Severity: Major
Found in tests/widget_test.py - About 1 wk to fix

    Cyclomatic complexity is too high in function test_containers. (123)
    Open

    def test_containers():
    Severity: Minor
    Found in tests/widget_test.py by radon

    Cyclomatic Complexity

    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

    Construct Effect on CC Reasoning
    if +1 An if statement is a single decision.
    elif +1 The elif statement adds another decision.
    else +0 The else statement does not cause a new decision. The decision is at the if.
    for +1 There is a decision at the start of the loop.
    while +1 There is a decision at the while statement.
    except +1 Each except branch adds a new conditional path of execution.
    finally +0 The finally block is unconditionally executed.
    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
    assert +1 The assert statement internally roughly equals a conditional statement.
    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

    Source: http://radon.readthedocs.org/en/latest/intro.html

    Cyclomatic complexity is too high in function test_entries. (98)
    Open

    def test_entries():
        print("\tTesting entries")
        assert isinstance(app.addEntry("e1"), Entry)
        with pytest.raises(Exception) :
            app.addEntry("e1")
    Severity: Minor
    Found in tests/widget_test.py by radon

    Cyclomatic Complexity

    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

    Construct Effect on CC Reasoning
    if +1 An if statement is a single decision.
    elif +1 The elif statement adds another decision.
    else +0 The else statement does not cause a new decision. The decision is at the if.
    for +1 There is a decision at the start of the loop.
    while +1 There is a decision at the while statement.
    except +1 Each except branch adds a new conditional path of execution.
    finally +0 The finally block is unconditionally executed.
    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
    assert +1 The assert statement internally roughly equals a conditional statement.
    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

    Source: http://radon.readthedocs.org/en/latest/intro.html

    Function test_containers has 346 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

    def test_containers():
        print("\tTesting containers")
    
        ## LABEL FRAMES
        lf = app.startLabelFrame("lf1")
    Severity: Major
    Found in tests/widget_test.py - About 1 day to fix

      Cyclomatic complexity is too high in function test_gui_properties. (78)
      Open

      def test_gui_properties():
      Severity: Minor
      Found in tests/widget_test.py by radon

      Cyclomatic Complexity

      Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

      Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

      Construct Effect on CC Reasoning
      if +1 An if statement is a single decision.
      elif +1 The elif statement adds another decision.
      else +0 The else statement does not cause a new decision. The decision is at the if.
      for +1 There is a decision at the start of the loop.
      while +1 There is a decision at the while statement.
      except +1 Each except branch adds a new conditional path of execution.
      finally +0 The finally block is unconditionally executed.
      with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
      assert +1 The assert statement internally roughly equals a conditional statement.
      Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
      Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

      Source: http://radon.readthedocs.org/en/latest/intro.html

      Cyclomatic complexity is too high in function test_text_areas. (58)
      Open

      def test_text_areas():
          print("\tTesting text areas")
          assert isinstance(app.addTextArea("t1"), AjText)
          ta2 = app.addTextArea("t2")
          with pytest.raises(Exception) :
      Severity: Minor
      Found in tests/widget_test.py by radon

      Cyclomatic Complexity

      Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

      Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

      Construct Effect on CC Reasoning
      if +1 An if statement is a single decision.
      elif +1 The elif statement adds another decision.
      else +0 The else statement does not cause a new decision. The decision is at the if.
      for +1 There is a decision at the start of the loop.
      while +1 There is a decision at the while statement.
      except +1 Each except branch adds a new conditional path of execution.
      finally +0 The finally block is unconditionally executed.
      with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
      assert +1 The assert statement internally roughly equals a conditional statement.
      Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
      Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

      Source: http://radon.readthedocs.org/en/latest/intro.html

      Cyclomatic complexity is too high in function test_lists. (43)
      Open

      def test_lists():
          print("\tTesting lists")
      
          assert isinstance(app.addListBox("l1", LIST_ONE), Listbox)
          app.addListBox("l2", LIST_TWO)
      Severity: Minor
      Found in tests/widget_test.py by radon

      Cyclomatic Complexity

      Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

      Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

      Construct Effect on CC Reasoning
      if +1 An if statement is a single decision.
      elif +1 The elif statement adds another decision.
      else +0 The else statement does not cause a new decision. The decision is at the if.
      for +1 There is a decision at the start of the loop.
      while +1 There is a decision at the while statement.
      except +1 Each except branch adds a new conditional path of execution.
      finally +0 The finally block is unconditionally executed.
      with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
      assert +1 The assert statement internally roughly equals a conditional statement.
      Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
      Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

      Source: http://radon.readthedocs.org/en/latest/intro.html

      Function test_entries has 197 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

      def test_entries():
          print("\tTesting entries")
          assert isinstance(app.addEntry("e1"), Entry)
          with pytest.raises(Exception) :
              app.addEntry("e1")
      Severity: Major
      Found in tests/widget_test.py - About 7 hrs to fix

        Cyclomatic complexity is too high in function test_checks. (42)
        Open

        def test_checks():
            print("\tTesting checks")
            assert isinstance(app.addCheckBox(TEXT_ONE), Checkbutton)
            app.addCheckBox(TEXT_TWO)
            with pytest.raises(Exception):
        Severity: Minor
        Found in tests/widget_test.py by radon

        Cyclomatic Complexity

        Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

        Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

        Construct Effect on CC Reasoning
        if +1 An if statement is a single decision.
        elif +1 The elif statement adds another decision.
        else +0 The else statement does not cause a new decision. The decision is at the if.
        for +1 There is a decision at the start of the loop.
        while +1 There is a decision at the while statement.
        except +1 Each except branch adds a new conditional path of execution.
        finally +0 The finally block is unconditionally executed.
        with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
        assert +1 The assert statement internally roughly equals a conditional statement.
        Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
        Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

        Source: http://radon.readthedocs.org/en/latest/intro.html

        Cyclomatic complexity is too high in function test_options. (41)
        Open

        def test_options():
            print("\tTesting options")
            # add two option boxes
            assert isinstance(app.addOptionBox("l1", LIST_ONE), OptionMenu)
            app.addOptionBox("l2", LIST_TWO)
        Severity: Minor
        Found in tests/widget_test.py by radon

        Cyclomatic Complexity

        Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

        Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

        Construct Effect on CC Reasoning
        if +1 An if statement is a single decision.
        elif +1 The elif statement adds another decision.
        else +0 The else statement does not cause a new decision. The decision is at the if.
        for +1 There is a decision at the start of the loop.
        while +1 There is a decision at the while statement.
        except +1 Each except branch adds a new conditional path of execution.
        finally +0 The finally block is unconditionally executed.
        with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
        assert +1 The assert statement internally roughly equals a conditional statement.
        Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
        Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

        Source: http://radon.readthedocs.org/en/latest/intro.html

        Cyclomatic complexity is too high in function test_scales. (35)
        Open

        def test_scales():
            print("\tTesting scales")
            assert isinstance(app.addScale("s1"), Scale)
            app.addScale("s2")
            with pytest.raises(Exception) :
        Severity: Minor
        Found in tests/widget_test.py by radon

        Cyclomatic Complexity

        Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

        Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

        Construct Effect on CC Reasoning
        if +1 An if statement is a single decision.
        elif +1 The elif statement adds another decision.
        else +0 The else statement does not cause a new decision. The decision is at the if.
        for +1 There is a decision at the start of the loop.
        while +1 There is a decision at the while statement.
        except +1 Each except branch adds a new conditional path of execution.
        finally +0 The finally block is unconditionally executed.
        with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
        assert +1 The assert statement internally roughly equals a conditional statement.
        Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
        Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

        Source: http://radon.readthedocs.org/en/latest/intro.html

        Function test_gui_properties has 141 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

        def test_gui_properties():
        
            def propFunc(param=None): return True
        
            app.config(
        Severity: Major
        Found in tests/widget_test.py - About 5 hrs to fix

          Cyclomatic complexity is too high in function test_spins. (28)
          Open

          def test_spins():
              print("\tTesting spins")
          
              assert isinstance(app.addSpinBox("s1", ["a", "b", "c", "d", "e"]), Spinbox)
              app.addSpinBox("s2", ["a", "b", "c", "d", "e"])
          Severity: Minor
          Found in tests/widget_test.py by radon

          Cyclomatic Complexity

          Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

          Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

          Construct Effect on CC Reasoning
          if +1 An if statement is a single decision.
          elif +1 The elif statement adds another decision.
          else +0 The else statement does not cause a new decision. The decision is at the if.
          for +1 There is a decision at the start of the loop.
          while +1 There is a decision at the while statement.
          except +1 Each except branch adds a new conditional path of execution.
          finally +0 The finally block is unconditionally executed.
          with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
          assert +1 The assert statement internally roughly equals a conditional statement.
          Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
          Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

          Source: http://radon.readthedocs.org/en/latest/intro.html

          Cyclomatic complexity is too high in function test_properties. (26)
          Open

          def test_properties():
              print("\tTesting properties")
          
              app.startToggleFrame("PP_frame")
              assert isinstance(app.addProperties("tog_p1", HASH_ONE), Properties)
          Severity: Minor
          Found in tests/widget_test.py by radon

          Cyclomatic Complexity

          Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

          Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

          Construct Effect on CC Reasoning
          if +1 An if statement is a single decision.
          elif +1 The elif statement adds another decision.
          else +0 The else statement does not cause a new decision. The decision is at the if.
          for +1 There is a decision at the start of the loop.
          while +1 There is a decision at the while statement.
          except +1 Each except branch adds a new conditional path of execution.
          finally +0 The finally block is unconditionally executed.
          with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
          assert +1 The assert statement internally roughly equals a conditional statement.
          Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
          Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

          Source: http://radon.readthedocs.org/en/latest/intro.html

          Function test_text_areas has 125 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

          def test_text_areas():
              print("\tTesting text areas")
              assert isinstance(app.addTextArea("t1"), AjText)
              ta2 = app.addTextArea("t2")
              with pytest.raises(Exception) :
          Severity: Major
          Found in tests/widget_test.py - About 5 hrs to fix

            Cyclomatic complexity is too high in function test_date_pickers. (24)
            Open

            def test_date_pickers():
                print("\tTesting date pickers")
                app.addDatePicker("d1")
                with pytest.raises(Exception) :
                    app.addDatePicker("d1")
            Severity: Minor
            Found in tests/widget_test.py by radon

            Cyclomatic Complexity

            Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

            Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

            Construct Effect on CC Reasoning
            if +1 An if statement is a single decision.
            elif +1 The elif statement adds another decision.
            else +0 The else statement does not cause a new decision. The decision is at the if.
            for +1 There is a decision at the start of the loop.
            while +1 There is a decision at the while statement.
            except +1 Each except branch adds a new conditional path of execution.
            finally +0 The finally block is unconditionally executed.
            with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
            assert +1 The assert statement internally roughly equals a conditional statement.
            Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
            Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

            Source: http://radon.readthedocs.org/en/latest/intro.html

            Cyclomatic complexity is too high in function test_labels. (23)
            Open

            def test_labels():
                print("\tTesting labels")
                assert isinstance(app.addEmptyLabel("el1"), Label)
                assert isinstance(app.addLabel("l0", TEXT_ONE), Label)
                with pytest.raises(Exception) :
            Severity: Minor
            Found in tests/widget_test.py by radon

            Cyclomatic Complexity

            Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

            Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

            Construct Effect on CC Reasoning
            if +1 An if statement is a single decision.
            elif +1 The elif statement adds another decision.
            else +0 The else statement does not cause a new decision. The decision is at the if.
            for +1 There is a decision at the start of the loop.
            while +1 There is a decision at the while statement.
            except +1 Each except branch adds a new conditional path of execution.
            finally +0 The finally block is unconditionally executed.
            with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
            assert +1 The assert statement internally roughly equals a conditional statement.
            Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
            Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

            Source: http://radon.readthedocs.org/en/latest/intro.html

            Function test_lists has 102 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

            def test_lists():
                print("\tTesting lists")
            
                assert isinstance(app.addListBox("l1", LIST_ONE), Listbox)
                app.addListBox("l2", LIST_TWO)
            Severity: Major
            Found in tests/widget_test.py - About 4 hrs to fix

              Cyclomatic complexity is too high in function test_message_boxes. (19)
              Open

              def test_message_boxes():
                  print("\tTesting messages")
                  assert isinstance(app.addMessage("m1", TEXT_ONE), Message)
                  app.addMessage("m2", TEXT_TWO)
                  with pytest.raises(Exception) :
              Severity: Minor
              Found in tests/widget_test.py by radon

              Cyclomatic Complexity

              Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

              Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

              Construct Effect on CC Reasoning
              if +1 An if statement is a single decision.
              elif +1 The elif statement adds another decision.
              else +0 The else statement does not cause a new decision. The decision is at the if.
              for +1 There is a decision at the start of the loop.
              while +1 There is a decision at the while statement.
              except +1 Each except branch adds a new conditional path of execution.
              finally +0 The finally block is unconditionally executed.
              with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
              assert +1 The assert statement internally roughly equals a conditional statement.
              Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
              Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

              Source: http://radon.readthedocs.org/en/latest/intro.html

              Cyclomatic complexity is too high in function test_buttons. (19)
              Open

              def test_buttons():
                  print("\tTesting buttons")
                  with pytest.raises(Exception) :
                      app.addButton(["brk1", "brk1", "brk1", "brk1"], [None, None])
              
              
              Severity: Minor
              Found in tests/widget_test.py by radon

              Cyclomatic Complexity

              Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

              Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

              Construct Effect on CC Reasoning
              if +1 An if statement is a single decision.
              elif +1 The elif statement adds another decision.
              else +0 The else statement does not cause a new decision. The decision is at the if.
              for +1 There is a decision at the start of the loop.
              while +1 There is a decision at the while statement.
              except +1 Each except branch adds a new conditional path of execution.
              finally +0 The finally block is unconditionally executed.
              with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
              assert +1 The assert statement internally roughly equals a conditional statement.
              Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
              Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

              Source: http://radon.readthedocs.org/en/latest/intro.html

              Cyclomatic complexity is too high in function test_radios. (18)
              Open

              def test_radios():
                  print("\tTesting radios")
                  assert isinstance(app.addRadioButton("rb", TEXT_ONE), Radiobutton)
              
                  app.addRadioButton("rb", TEXT_TWO)
              Severity: Minor
              Found in tests/widget_test.py by radon

              Cyclomatic Complexity

              Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

              Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

              Construct Effect on CC Reasoning
              if +1 An if statement is a single decision.
              elif +1 The elif statement adds another decision.
              else +0 The else statement does not cause a new decision. The decision is at the if.
              for +1 There is a decision at the start of the loop.
              while +1 There is a decision at the while statement.
              except +1 Each except branch adds a new conditional path of execution.
              finally +0 The finally block is unconditionally executed.
              with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
              assert +1 The assert statement internally roughly equals a conditional statement.
              Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
              Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

              Source: http://radon.readthedocs.org/en/latest/intro.html

              Cyclomatic complexity is too high in function test_menus. (15)
              Open

              def test_menus():
                  print("\tTesting Menubar")
              
                  app.addMenuList("a", LIST_ONE, tester_function)
                  app.createMenu("MEN2")
              Severity: Minor
              Found in tests/widget_test.py by radon

              Cyclomatic Complexity

              Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

              Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

              Construct Effect on CC Reasoning
              if +1 An if statement is a single decision.
              elif +1 The elif statement adds another decision.
              else +0 The else statement does not cause a new decision. The decision is at the if.
              for +1 There is a decision at the start of the loop.
              while +1 There is a decision at the while statement.
              except +1 Each except branch adds a new conditional path of execution.
              finally +0 The finally block is unconditionally executed.
              with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
              assert +1 The assert statement internally roughly equals a conditional statement.
              Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
              Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

              Source: http://radon.readthedocs.org/en/latest/intro.html

              Function test_options has 83 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

              def test_options():
                  print("\tTesting options")
                  # add two option boxes
                  assert isinstance(app.addOptionBox("l1", LIST_ONE), OptionMenu)
                  app.addOptionBox("l2", LIST_TWO)
              Severity: Major
              Found in tests/widget_test.py - About 3 hrs to fix

                Function test_scales has 82 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                def test_scales():
                    print("\tTesting scales")
                    assert isinstance(app.addScale("s1"), Scale)
                    app.addScale("s2")
                    with pytest.raises(Exception) :
                Severity: Major
                Found in tests/widget_test.py - About 3 hrs to fix

                  Cyclomatic complexity is too high in function test_gui_options. (13)
                  Open

                  def test_gui_options():
                      print("\tTesting gui options")
                      app.setTitle("New title")
                      assert app.getTitle() == "New title"
                      assert app.title == "New title"
                  Severity: Minor
                  Found in tests/widget_test.py by radon

                  Cyclomatic Complexity

                  Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

                  Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

                  Construct Effect on CC Reasoning
                  if +1 An if statement is a single decision.
                  elif +1 The elif statement adds another decision.
                  else +0 The else statement does not cause a new decision. The decision is at the if.
                  for +1 There is a decision at the start of the loop.
                  while +1 There is a decision at the while statement.
                  except +1 Each except branch adds a new conditional path of execution.
                  finally +0 The finally block is unconditionally executed.
                  with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
                  assert +1 The assert statement internally roughly equals a conditional statement.
                  Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
                  Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

                  Source: http://radon.readthedocs.org/en/latest/intro.html

                  Function test_checks has 68 lines of code (exceeds 25 allowed). Consider refactoring.
                  Open

                  def test_checks():
                      print("\tTesting checks")
                      assert isinstance(app.addCheckBox(TEXT_ONE), Checkbutton)
                      app.addCheckBox(TEXT_TWO)
                      with pytest.raises(Exception):
                  Severity: Major
                  Found in tests/widget_test.py - About 2 hrs to fix

                    Cyclomatic complexity is too high in function test_status. (11)
                    Open

                    def test_status():
                        print("\tTesting Statusbar")
                    
                        app.addStatusbar(TEXT_ONE, 4, "RIGHT")
                        assert len(app._statusFields) == 4
                    Severity: Minor
                    Found in tests/widget_test.py by radon

                    Cyclomatic Complexity

                    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

                    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

                    Construct Effect on CC Reasoning
                    if +1 An if statement is a single decision.
                    elif +1 The elif statement adds another decision.
                    else +0 The else statement does not cause a new decision. The decision is at the if.
                    for +1 There is a decision at the start of the loop.
                    while +1 There is a decision at the while statement.
                    except +1 Each except branch adds a new conditional path of execution.
                    finally +0 The finally block is unconditionally executed.
                    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
                    assert +1 The assert statement internally roughly equals a conditional statement.
                    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
                    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

                    Source: http://radon.readthedocs.org/en/latest/intro.html

                    Cyclomatic complexity is too high in function test_meters. (10)
                    Open

                    def test_meters():
                        print("\tTesting meters")
                        assert isinstance(app.addMeter("m1"), Meter)
                        with pytest.raises(Exception) :
                            app.addMeter("m1")
                    Severity: Minor
                    Found in tests/widget_test.py by radon

                    Cyclomatic Complexity

                    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

                    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

                    Construct Effect on CC Reasoning
                    if +1 An if statement is a single decision.
                    elif +1 The elif statement adds another decision.
                    else +0 The else statement does not cause a new decision. The decision is at the if.
                    for +1 There is a decision at the start of the loop.
                    while +1 There is a decision at the while statement.
                    except +1 Each except branch adds a new conditional path of execution.
                    finally +0 The finally block is unconditionally executed.
                    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
                    assert +1 The assert statement internally roughly equals a conditional statement.
                    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
                    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

                    Source: http://radon.readthedocs.org/en/latest/intro.html

                    Cyclomatic complexity is too high in function test_images. (10)
                    Open

                    def test_images():
                        print("\tTesting images")
                    
                        assert isinstance(app.addImage("im1", "1_flash.gif", compound="left"), PhotoImage)
                        with pytest.raises(Exception) :
                    Severity: Minor
                    Found in tests/widget_test.py by radon

                    Cyclomatic Complexity

                    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

                    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

                    Construct Effect on CC Reasoning
                    if +1 An if statement is a single decision.
                    elif +1 The elif statement adds another decision.
                    else +0 The else statement does not cause a new decision. The decision is at the if.
                    for +1 There is a decision at the start of the loop.
                    while +1 There is a decision at the while statement.
                    except +1 Each except branch adds a new conditional path of execution.
                    finally +0 The finally block is unconditionally executed.
                    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
                    assert +1 The assert statement internally roughly equals a conditional statement.
                    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
                    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

                    Source: http://radon.readthedocs.org/en/latest/intro.html

                    Cyclomatic complexity is too high in function testScrollPaneScrolling. (9)
                    Open

                    def testScrollPaneScrolling(sp):
                        event = Event()
                    
                        sp._mouseEnter(event)
                        sp._mouseLeave(event)
                    Severity: Minor
                    Found in tests/widget_test.py by radon

                    Cyclomatic Complexity

                    Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

                    Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

                    Construct Effect on CC Reasoning
                    if +1 An if statement is a single decision.
                    elif +1 The elif statement adds another decision.
                    else +0 The else statement does not cause a new decision. The decision is at the if.
                    for +1 There is a decision at the start of the loop.
                    while +1 There is a decision at the while statement.
                    except +1 Each except branch adds a new conditional path of execution.
                    finally +0 The finally block is unconditionally executed.
                    with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
                    assert +1 The assert statement internally roughly equals a conditional statement.
                    Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
                    Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

                    Source: http://radon.readthedocs.org/en/latest/intro.html

                    Function test_gui_options has 57 lines of code (exceeds 25 allowed). Consider refactoring.
                    Open

                    def test_gui_options():
                        print("\tTesting gui options")
                        app.setTitle("New title")
                        assert app.getTitle() == "New title"
                        assert app.title == "New title"
                    Severity: Major
                    Found in tests/widget_test.py - About 2 hrs to fix

                      Function test_setters has 55 lines of code (exceeds 25 allowed). Consider refactoring.
                      Open

                      def test_setters(widg_type, widg_id, widg_val=None):
                          print("\tTesting setters")
                          exec("app.set" + widg_type + "Bg(\""+widg_id +"\", \"red\")")
                          exec("app.set" + widg_type + "Fg(\""+widg_id +"\", \"red\")")
                          exec("app.set" + widg_type + "DisabledFg(\""+widg_id +"\", \"red\")")
                      Severity: Major
                      Found in tests/widget_test.py - About 2 hrs to fix

                        Function test_properties has 55 lines of code (exceeds 25 allowed). Consider refactoring.
                        Open

                        def test_properties():
                            print("\tTesting properties")
                        
                            app.startToggleFrame("PP_frame")
                            assert isinstance(app.addProperties("tog_p1", HASH_ONE), Properties)
                        Severity: Major
                        Found in tests/widget_test.py - About 2 hrs to fix

                          Function test_menus has 55 lines of code (exceeds 25 allowed). Consider refactoring.
                          Open

                          def test_menus():
                              print("\tTesting Menubar")
                          
                              app.addMenuList("a", LIST_ONE, tester_function)
                              app.createMenu("MEN2")
                          Severity: Major
                          Found in tests/widget_test.py - About 2 hrs to fix

                            Cyclomatic complexity is too high in function test_sets. (8)
                            Open

                            def test_sets():
                                print("\tTesting setters")
                                app.setLabelBg("xx1", COL_ONE)
                                app.setLabelFg("xx1", COL_TWO)
                                app.setLabelDisabledFg("xx1", COL_THREE)
                            Severity: Minor
                            Found in tests/widget_test.py by radon

                            Cyclomatic Complexity

                            Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

                            Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

                            Construct Effect on CC Reasoning
                            if +1 An if statement is a single decision.
                            elif +1 The elif statement adds another decision.
                            else +0 The else statement does not cause a new decision. The decision is at the if.
                            for +1 There is a decision at the start of the loop.
                            while +1 There is a decision at the while statement.
                            except +1 Each except branch adds a new conditional path of execution.
                            finally +0 The finally block is unconditionally executed.
                            with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
                            assert +1 The assert statement internally roughly equals a conditional statement.
                            Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
                            Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

                            Source: http://radon.readthedocs.org/en/latest/intro.html

                            Cyclomatic complexity is too high in function test_googlemap. (7)
                            Open

                            def test_googlemap():
                                print("\tTesting GoogleMaps:", PY_VER)
                                gm2 = app.addGoogleMap("gm2")
                                with pytest.raises(Exception) :
                                    app.addGoogleMap("gm2")
                            Severity: Minor
                            Found in tests/widget_test.py by radon

                            Cyclomatic Complexity

                            Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

                            Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

                            Construct Effect on CC Reasoning
                            if +1 An if statement is a single decision.
                            elif +1 The elif statement adds another decision.
                            else +0 The else statement does not cause a new decision. The decision is at the if.
                            for +1 There is a decision at the start of the loop.
                            while +1 There is a decision at the while statement.
                            except +1 Each except branch adds a new conditional path of execution.
                            finally +0 The finally block is unconditionally executed.
                            with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
                            assert +1 The assert statement internally roughly equals a conditional statement.
                            Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
                            Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

                            Source: http://radon.readthedocs.org/en/latest/intro.html

                            Function test_date_pickers has 47 lines of code (exceeds 25 allowed). Consider refactoring.
                            Open

                            def test_date_pickers():
                                print("\tTesting date pickers")
                                app.addDatePicker("d1")
                                with pytest.raises(Exception) :
                                    app.addDatePicker("d1")
                            Severity: Minor
                            Found in tests/widget_test.py - About 1 hr to fix

                              Cyclomatic complexity is too high in function test_sounds. (6)
                              Open

                              def test_sounds():
                                  print("\tTesting sounds")
                              # only support windows
                                  app.bell()
                                  try:
                              Severity: Minor
                              Found in tests/widget_test.py by radon

                              Cyclomatic Complexity

                              Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

                              Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

                              Construct Effect on CC Reasoning
                              if +1 An if statement is a single decision.
                              elif +1 The elif statement adds another decision.
                              else +0 The else statement does not cause a new decision. The decision is at the if.
                              for +1 There is a decision at the start of the loop.
                              while +1 There is a decision at the while statement.
                              except +1 Each except branch adds a new conditional path of execution.
                              finally +0 The finally block is unconditionally executed.
                              with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
                              assert +1 The assert statement internally roughly equals a conditional statement.
                              Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
                              Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

                              Source: http://radon.readthedocs.org/en/latest/intro.html

                              Cyclomatic complexity is too high in function test_gui. (6)
                              Open

                              def test_gui(btn=None):
                                  print("Testing GUI")
                                  global doStop
                                  if doStop == 0:
                                      test_pop_ups()
                              Severity: Minor
                              Found in tests/widget_test.py by radon

                              Cyclomatic Complexity

                              Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

                              Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

                              Construct Effect on CC Reasoning
                              if +1 An if statement is a single decision.
                              elif +1 The elif statement adds another decision.
                              else +0 The else statement does not cause a new decision. The decision is at the if.
                              for +1 There is a decision at the start of the loop.
                              while +1 There is a decision at the while statement.
                              except +1 Each except branch adds a new conditional path of execution.
                              finally +0 The finally block is unconditionally executed.
                              with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
                              assert +1 The assert statement internally roughly equals a conditional statement.
                              Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
                              Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

                              Source: http://radon.readthedocs.org/en/latest/intro.html

                              Cyclomatic complexity is too high in function test_gui4. (6)
                              Open

                              def test_gui4(btn=None):
                                  print("Testing GUI4")
                                  global doStopAgain
                                  if doStopAgain == 2:
                                      press(None)
                              Severity: Minor
                              Found in tests/widget_test.py by radon

                              Cyclomatic Complexity

                              Cyclomatic Complexity corresponds to the number of decisions a block of code contains plus 1. This number (also called McCabe number) is equal to the number of linearly independent paths through the code. This number can be used as a guide when testing conditional logic in blocks.

                              Radon analyzes the AST tree of a Python program to compute Cyclomatic Complexity. Statements have the following effects on Cyclomatic Complexity:

                              Construct Effect on CC Reasoning
                              if +1 An if statement is a single decision.
                              elif +1 The elif statement adds another decision.
                              else +0 The else statement does not cause a new decision. The decision is at the if.
                              for +1 There is a decision at the start of the loop.
                              while +1 There is a decision at the while statement.
                              except +1 Each except branch adds a new conditional path of execution.
                              finally +0 The finally block is unconditionally executed.
                              with +1 The with statement roughly corresponds to a try/except block (see PEP 343 for details).
                              assert +1 The assert statement internally roughly equals a conditional statement.
                              Comprehension +1 A list/set/dict comprehension of generator expression is equivalent to a for loop.
                              Boolean Operator +1 Every boolean operator (and, or) adds a decision point.

                              Source: http://radon.readthedocs.org/en/latest/intro.html

                              Function test_labels has 45 lines of code (exceeds 25 allowed). Consider refactoring.
                              Open

                              def test_labels():
                                  print("\tTesting labels")
                                  assert isinstance(app.addEmptyLabel("el1"), Label)
                                  assert isinstance(app.addLabel("l0", TEXT_ONE), Label)
                                  with pytest.raises(Exception) :
                              Severity: Minor
                              Found in tests/widget_test.py - About 1 hr to fix

                                Function test_toolbars has 44 lines of code (exceeds 25 allowed). Consider refactoring.
                                Open

                                def test_toolbars():
                                    print("\tTesting Toolbar")
                                
                                    app.addToolbar(["a", "b", "c", "ABOUT"], 
                                        [tester_function, tester_function, tester_function, tester_function],
                                Severity: Minor
                                Found in tests/widget_test.py - About 1 hr to fix

                                  Function test_images has 44 lines of code (exceeds 25 allowed). Consider refactoring.
                                  Open

                                  def test_images():
                                      print("\tTesting images")
                                  
                                      assert isinstance(app.addImage("im1", "1_flash.gif", compound="left"), PhotoImage)
                                      with pytest.raises(Exception) :
                                  Severity: Minor
                                  Found in tests/widget_test.py - About 1 hr to fix

                                    Function test_spins has 40 lines of code (exceeds 25 allowed). Consider refactoring.
                                    Open

                                    def test_spins():
                                        print("\tTesting spins")
                                    
                                        assert isinstance(app.addSpinBox("s1", ["a", "b", "c", "d", "e"]), Spinbox)
                                        app.addSpinBox("s2", ["a", "b", "c", "d", "e"])
                                    Severity: Minor
                                    Found in tests/widget_test.py - About 1 hr to fix

                                      Function test_buttons has 37 lines of code (exceeds 25 allowed). Consider refactoring.
                                      Open

                                      def test_buttons():
                                          print("\tTesting buttons")
                                          with pytest.raises(Exception) :
                                              app.addButton(["brk1", "brk1", "brk1", "brk1"], [None, None])
                                      
                                      
                                      Severity: Minor
                                      Found in tests/widget_test.py - About 1 hr to fix

                                        Function test_radios has 37 lines of code (exceeds 25 allowed). Consider refactoring.
                                        Open

                                        def test_radios():
                                            print("\tTesting radios")
                                            assert isinstance(app.addRadioButton("rb", TEXT_ONE), Radiobutton)
                                        
                                            app.addRadioButton("rb", TEXT_TWO)
                                        Severity: Minor
                                        Found in tests/widget_test.py - About 1 hr to fix

                                          Function test_message_boxes has 34 lines of code (exceeds 25 allowed). Consider refactoring.
                                          Open

                                          def test_message_boxes():
                                              print("\tTesting messages")
                                              assert isinstance(app.addMessage("m1", TEXT_ONE), Message)
                                              app.addMessage("m2", TEXT_TWO)
                                              with pytest.raises(Exception) :
                                          Severity: Minor
                                          Found in tests/widget_test.py - About 1 hr to fix

                                            Function test_status has 31 lines of code (exceeds 25 allowed). Consider refactoring.
                                            Open

                                            def test_status():
                                                print("\tTesting Statusbar")
                                            
                                                app.addStatusbar(TEXT_ONE, 4, "RIGHT")
                                                assert len(app._statusFields) == 4
                                            Severity: Minor
                                            Found in tests/widget_test.py - About 1 hr to fix

                                              Function testScrollPaneScrolling has 30 lines of code (exceeds 25 allowed). Consider refactoring.
                                              Open

                                              def testScrollPaneScrolling(sp):
                                                  event = Event()
                                              
                                                  sp._mouseEnter(event)
                                                  sp._mouseLeave(event)
                                              Severity: Minor
                                              Found in tests/widget_test.py - About 1 hr to fix

                                                Function testScrollPaneScrolling has a Cognitive Complexity of 10 (exceeds 5 allowed). Consider refactoring.
                                                Open

                                                def testScrollPaneScrolling(sp):
                                                    event = Event()
                                                
                                                    sp._mouseEnter(event)
                                                    sp._mouseLeave(event)
                                                Severity: Minor
                                                Found in tests/widget_test.py - 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

                                                Avoid deeply nested control flow statements.
                                                Open

                                                                with app3.frame():
                                                                    app3.label("stacks-1")
                                                                with app3.frame():
                                                Severity: Major
                                                Found in tests/widget_test.py - About 45 mins to fix

                                                  Avoid deeply nested control flow statements.
                                                  Open

                                                                  with app3.page():
                                                                      app3.addLabel("l3", "label")
                                                                  with app3.page():
                                                  Severity: Major
                                                  Found in tests/widget_test.py - About 45 mins to fix

                                                    Avoid deeply nested control flow statements.
                                                    Open

                                                                    with app3.panedFrame("vpf1", vertical=True):
                                                                        app3.addLabel("l2", "label")
                                                            with app3.tab("t3", beforeTab='t2'):
                                                    Severity: Major
                                                    Found in tests/widget_test.py - About 45 mins to fix

                                                      Avoid deeply nested control flow statements.
                                                      Open

                                                                      with app3.frame():
                                                                          app3.label("stacks-3")
                                                      
                                                      
                                                      Severity: Major
                                                      Found in tests/widget_test.py - About 45 mins to fix

                                                        Avoid deeply nested control flow statements.
                                                        Open

                                                                        with app3.page():
                                                                            app3.addLabel("l4", "label")
                                                                with app3.tab("t4", afterTab='a', beforeTab='a'):
                                                        Severity: Major
                                                        Found in tests/widget_test.py - About 45 mins to fix

                                                          Avoid deeply nested control flow statements.
                                                          Open

                                                                          with app3.frame():
                                                                              app3.label("stacks-2")
                                                                          with app3.frame():
                                                          Severity: Major
                                                          Found in tests/widget_test.py - About 45 mins to fix

                                                            Function compareDictionaries has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                                                            Open

                                                            def compareDictionaries(d1, d2):
                                                                for key in d1.keys():
                                                                    if d1[key] != d2[key]:
                                                                        return False
                                                                for key in d2.keys():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py - About 25 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 test_options has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                                                            Open

                                                            def test_options():
                                                                print("\tTesting options")
                                                                # add two option boxes
                                                                assert isinstance(app.addOptionBox("l1", LIST_ONE), OptionMenu)
                                                                app.addOptionBox("l2", LIST_TWO)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py - About 25 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 test_gui has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                                                            Open

                                                            def test_gui(btn=None):
                                                                print("Testing GUI")
                                                                global doStop
                                                                if doStop == 0:
                                                                    test_pop_ups()
                                                            Severity: Minor
                                                            Found in tests/widget_test.py - About 25 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

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                if doStopAgain == 5:
                                                                    print("Show app2")
                                                                    app2.show()
                                                                elif doStopAgain == 6:
                                                                    print("Hide app2")
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 4 hrs to fix
                                                            tests/widget_test.py on lines 3620..3630

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 74.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                elif doStopAgain == 3:
                                                                    updateApp4(None)
                                                                elif doStopAgain == 5:
                                                                    print("Show app4")
                                                                    app4.show()
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 4 hrs to fix
                                                            tests/widget_test.py on lines 3753..3761

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 74.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                            def test_hideShow():
                                                                print("\tTesting hideshow")
                                                            
                                                                app.disableLabel("l0")
                                                                app.enableLabel("l0")
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 3 hrs to fix
                                                            tests/widget_test.py on lines 2198..2208

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 72.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                            def test_messages():
                                                                print("\tTesting messages")
                                                                app.warn("warn message")
                                                                app.debug("debug message")
                                                            
                                                            
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 3 hrs to fix
                                                            tests/widget_test.py on lines 2250..2261

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 72.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                        with app3.frameStack("stacks", start=2, change=cbB):
                                                                            with app3.frame():
                                                                                app3.label("stacks-1")
                                                                            with app3.frame():
                                                                                app3.label("stacks-2")
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 2 hrs to fix
                                                            appJar/examples/showcase.py on lines 292..295

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 58.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Identical blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                for delta in [300, 30, -300, -30]:
                                                                    event.delta = delta
                                                                    sp._horizMouseScroll(event)
                                                                    sp._vertMouseScroll(event)
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 1 hr to fix
                                                            tests/widget_test.py on lines 2880..2883

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 44.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Identical blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                for state in states:
                                                                    event.state = state
                                                                    for key in ["Up", "Down", "Left", "Right", "Prior", "Next", "Home", "End"]:
                                                                        event.keysym = key
                                                                        sp._keyPressed(event)
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 1 hr to fix
                                                            tests/widget_test.py on lines 2910..2914

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 44.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Identical blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                for state in states:
                                                                    event.state = state
                                                                    for key in ["Up", "Down", "Left", "Right", "Prior", "Next", "Home", "End"]:
                                                                        event.keysym = key
                                                                        sp._keyPressed(event)
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 1 hr to fix
                                                            tests/widget_test.py on lines 2889..2893

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 44.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Identical blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                for delta in [300, 30, -300, -30]:
                                                                    event.delta = delta
                                                                    sp._horizMouseScroll(event)
                                                                    sp._vertMouseScroll(event)
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 1 hr to fix
                                                            tests/widget_test.py on lines 2904..2907

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 44.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                try:
                                                                    app.playSound("error3.wav")
                                                                    app.stopSound()
                                                                    app.soundLoop("error4.wav")
                                                                    app.stopSound()
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 1 hr to fix
                                                            tests/widget_test.py on lines 2222..2228

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 44.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                try:
                                                                    app.playSound("error1.wav")
                                                                    app.stopSound()
                                                                    app.soundLoop("error2.wav")
                                                                    app.stopSound()
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 1 other location - About 1 hr to fix
                                                            tests/widget_test.py on lines 2234..2240

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 44.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 4 locations. Consider refactoring.
                                                            Open

                                                                app4.entry("sd1", row=3, column=1, kind="directory", default="directory", text='press', submit=changer, change=changer, limit=5, case="upper", rows=3)
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 3 other locations - About 1 hr to fix
                                                            tests/widget_test.py on lines 3684..3684
                                                            tests/widget_test.py on lines 3686..3686
                                                            tests/widget_test.py on lines 3687..3687

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 40.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 4 locations. Consider refactoring.
                                                            Open

                                                                app4.entry("sf1", row=2, column=1, kind="file", default="file", text='press', submit=changer, change=changer, limit=5, case="upper", rows=3)
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 3 other locations - About 1 hr to fix
                                                            tests/widget_test.py on lines 3685..3685
                                                            tests/widget_test.py on lines 3686..3686
                                                            tests/widget_test.py on lines 3687..3687

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 40.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 4 locations. Consider refactoring.
                                                            Open

                                                                app4.entry("so1", row=3, column=1, kind="open", default="open", text='press', submit=changer, change=changer, limit=5, case="upper", rows=3)
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 3 other locations - About 1 hr to fix
                                                            tests/widget_test.py on lines 3684..3684
                                                            tests/widget_test.py on lines 3685..3685
                                                            tests/widget_test.py on lines 3687..3687

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 40.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 4 locations. Consider refactoring.
                                                            Open

                                                                app4.entry("ss1", row=3, column=1, kind="save", default="save", text='press', submit=changer, change=changer, limit=5, case="upper", rows=3)
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 3 other locations - About 1 hr to fix
                                                            tests/widget_test.py on lines 3684..3684
                                                            tests/widget_test.py on lines 3685..3685
                                                            tests/widget_test.py on lines 3686..3686

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 40.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                app4.entry("sv1", row=1, column=1, kind="validation", default="validation", submit=changer, change=changer, limit=5, case="upper", rows=3)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py and 1 other location - About 55 mins to fix
                                                            tests/widget_test.py on lines 3689..3689

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 37.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                app4.entry("sn1", row=4, column=1, kind="numeric", default="numeric", submit=changer, change=changer, limit=5, case="upper", rows=3)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py and 1 other location - About 55 mins to fix
                                                            tests/widget_test.py on lines 3683..3683

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 37.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                for key in d1.keys():
                                                                    if d1[key] != d2[key]:
                                                                        return False
                                                            Severity: Minor
                                                            Found in tests/widget_test.py and 1 other location - About 45 mins to fix
                                                            tests/widget_test.py on lines 1326..1328

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 35.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                for key in d2.keys():
                                                                    if d1[key] != d2[key]:
                                                                        return False
                                                            Severity: Minor
                                                            Found in tests/widget_test.py and 1 other location - About 45 mins to fix
                                                            tests/widget_test.py on lines 1323..1325

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 35.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Identical blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                for num in [4, 5]:
                                                                    event.num = num
                                                                    sp._horizMouseScroll(event)
                                                                    sp._vertMouseScroll(event)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py and 1 other location - About 40 mins to fix
                                                            tests/widget_test.py on lines 2898..2901

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 34.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Identical blocks of code found in 2 locations. Consider refactoring.
                                                            Open

                                                                for num in [4, 5]:
                                                                    event.num = num
                                                                    sp._horizMouseScroll(event)
                                                                    sp._vertMouseScroll(event)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py and 1 other location - About 40 mins to fix
                                                            tests/widget_test.py on lines 2874..2877

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 34.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 4 locations. Consider refactoring.
                                                            Open

                                                                assert app.getListBox("l2") == [LIST_ONE[len(LIST_ONE)-1]]
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 3 other locations - About 35 mins to fix
                                                            tests/widget_test.py on lines 852..852
                                                            tests/widget_test.py on lines 856..856
                                                            tests/widget_test.py on lines 879..879

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 33.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 4 locations. Consider refactoring.
                                                            Open

                                                                assert app.getListBox("l2") == [LIST_ONE[len(LIST_ONE)-1]]
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 3 other locations - About 35 mins to fix
                                                            tests/widget_test.py on lines 847..847
                                                            tests/widget_test.py on lines 856..856
                                                            tests/widget_test.py on lines 879..879

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 33.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 4 locations. Consider refactoring.
                                                            Open

                                                                assert app.getListBox("l2") == [LIST_TWO[len(LIST_TWO)-1]]
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 3 other locations - About 35 mins to fix
                                                            tests/widget_test.py on lines 847..847
                                                            tests/widget_test.py on lines 852..852
                                                            tests/widget_test.py on lines 856..856

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 33.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Similar blocks of code found in 4 locations. Consider refactoring.
                                                            Open

                                                                assert app.getListBox("l2") == [LIST_ONE[len(LIST_ONE)-1]]
                                                            Severity: Major
                                                            Found in tests/widget_test.py and 3 other locations - About 35 mins to fix
                                                            tests/widget_test.py on lines 847..847
                                                            tests/widget_test.py on lines 852..852
                                                            tests/widget_test.py on lines 879..879

                                                            Duplicated Code

                                                            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                                                            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                                                            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                                                            Tuning

                                                            This issue has a mass of 33.

                                                            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                                                            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                                                            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                                                            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                                                            Refactorings

                                                            Further Reading

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def CHANGE_FUNCTION():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace after '('
                                                            Open

                                                                print( app.getEntry("lne1") )
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("lne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Too many blank lines (2)
                                                            Open

                                                                assert app.getOptionBox("tl1")[LIST_ONE[1]] is True
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace after ','
                                                            Open

                                                                assert mets["dum"][0] == [-0.5,0.1]
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_tables():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app.setLocation(-200,2000)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app.setInPadding(5,10)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                    "South America":[126, 170, 226, 292],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Multiple statements on one line (colon)
                                                            Open

                                                            except: from Tkinter import Frame, Event, Label, Entry, Button, Radiobutton, Checkbutton, OptionMenu, Spinbox, Listbox, Message, PhotoImage, Scale, Canvas, LabelFrame, PanedWindow
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Do not use bare 'except'
                                                            Open

                                                            except: from tkinter import ttk
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Missing whitespace around operator
                                                            Open

                                                            CHANGE_FUNCTION_VAR=False
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx9", pos=('n',2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert entryVals["ne1"] == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("lne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def tst_but(btn):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Too many blank lines (2)
                                                            Open

                                                                def testNoParam():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace after '('
                                                            Open

                                                                print( app.getOptionBox("l2") , LIST_TWO[1])
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Blank line contains whitespace
                                                            Open

                                                                
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Trailing whitespace is superfluous.

                                                            The warning returned varies on whether the line itself is blank,
                                                            for easier filtering for those who want to indent their blank lines.
                                                            
                                                            Okay: spam(1)\n#
                                                            W291: spam(1) \n#
                                                            W293: class Foo(object):\n    \n    bang = 12

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    table='projects',
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Too many blank lines (3)
                                                            Open

                                                            def test_grids():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    [["Name", "Age", "Gender"],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Missing whitespace after ','
                                                            Open

                                                                app.setLocation(200,200)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Multiple statements on one line (colon)
                                                            Open

                                                            except: from tkinter import ttk
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_labels():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx6", pos=(1,2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("ne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    ["Fred", 45, "Male"],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    ["Clive", 28, "Male"],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    ["Tina", 37, "Female"],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Missing whitespace after ','
                                                            Open

                                                                app.setPadding([5,10])
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def run_events(param1, bbb):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ')'
                                                            Open

                                                                print( app.getEntry("lne1") )
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("ne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("lne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                        ["c2b1", "c2b2", "c2b3", "c2b4"]],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_meters():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                                                    datetime.date.today().month,
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Missing whitespace after ','
                                                            Open

                                                                app.setGuiPadding(20,20)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Module level import not at top of file
                                                            Open

                                                            from appJar import gui
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Place imports at the top of the file.

                                                            Always put imports at the top of the file, just after any module
                                                            comments and docstrings, and before module globals and constants.
                                                            
                                                            Okay: import os
                                                            Okay: # this is a comment\nimport os
                                                            Okay: '''this is a module docstring'''\nimport os
                                                            Okay: r'''this is a module docstring'''\nimport os
                                                            Okay:
                                                            try:\n\timport x\nexcept ImportError:\n\tpass\nelse:\n\tpass\nimport y
                                                            Okay:
                                                            try:\n\timport x\nexcept ImportError:\n\tpass\nfinally:\n\tpass\nimport y
                                                            E402: a=1\nimport os
                                                            E402: 'One string'\n"Two string"\nimport os
                                                            E402: a=1\nfrom sys import x
                                                            
                                                            Okay: if x:\n    import os

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("ne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    [["Name", "Age", "Gender"],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    ["Betty", 51, "Female"]],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx8", pos=('p',2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    ["Betty", 51, "Female"]],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    ["Clive", 28, "Male"],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("lne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("lne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Continuation line over-indented for visual indent
                                                            Open

                                                                            fg="green", bg="yellow", fgH="pink", bgH="blue")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    horizontal=True)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Missing whitespace after ','
                                                            Open

                                                                app.setInPadding([5,10])
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Do not use bare 'except'
                                                            Open

                                                            except: from Tkinter import Frame, Event, Label, Entry, Button, Radiobutton, Checkbutton, OptionMenu, Spinbox, Listbox, Message, PhotoImage, Scale, Canvas, LabelFrame, PanedWindow
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx6", pos=(1,2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx7", pos=(2,2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("ne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Whitespace before ','
                                                            Open

                                                                print( app.getOptionBox("l2") , LIST_TWO[1])
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Too many blank lines (3)
                                                            Open

                                                                # nothing selected - so these have no effect
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Too many blank lines (2)
                                                            Open

                                                                assert isinstance(app.addProperties("p1", HASH_ONE), Properties)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Too many blank lines (2)
                                                            Open

                                                                # call generic setter functions
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    ["Fred", 45, "Male"],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_images():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace after '('
                                                            Open

                                                                app.clearStatusbar( 2)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Multiple statements on one line (colon)
                                                            Open

                                                            try: import ttk
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Missing whitespace around operator
                                                            Open

                                                            photo="R0lGODlhPQBEAPeoAJosM//AwO/AwHVYZ/z595kzAP/s7P+goOXMv8+fhw/v739/f+8PD98fH/8mJl+fn/9ZWb8/PzWlwv///6wWGbImAP    gTEMImIN9gUFCEm/gDALULDN8PAD6atYdCTX9gUNKlj8wZAKUsAOzZz+UMAOsJAP/Z2ccMDA8PD/95eX5NWvsJCOVNQPtfX/8zM8+QePLl38MGBr8    JCP+zs9myn/8GBqwpAP/GxgwJCPny78lzYLgjAJ8vAP9fX/+MjMUcAN8zM/9wcM8ZGcATEL+QePdZWf/29uc/P9cmJu9MTDImIN+/r7+/vz8/P8VN    QGNugV8AAF9fX8swMNgTAFlDOICAgPNSUnNWSMQ5MBAQEJE3QPIGAM9AQMqGcG9vb6MhJsEdGM8vLx8fH98AANIWAMuQeL8fABkTEPPQ0OM5OSYdG    Fl5jo+Pj/+pqcsTE78wMFNGQLYmID4dGPvd3UBAQJmTkP+8vH9QUK+vr8ZWSHpzcJMmILdwcLOGcHRQUHxwcK9PT9DQ0O/v70w5MLypoG8wKOuwsP    /g4P/Q0IcwKEswKMl8aJ9fX2xjdOtGRs/Pz+Dg4GImIP8gIH0sKEAwKKmTiKZ8aB/f39Wsl+LFt8dgUE9PT5x5aHBwcP+AgP+WltdgYMyZfyywz78    AAAAAAAD///8AAP9mZv///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAKgALAAAAAA9AEQAAAj/AFEJHEiwoMGDCBMqXMiwocAbBww4nEhxoYkUpzJGrMixogkfGUNqlNi    xJEIDB0SqHGmyJSojM1bKZOmyop0gM3Oe2liTISKMOoPy7GnwY9CjIYcSRYm0aVKSLmE6nfq05QycVLPuhDrxBlCtYJUqNAq2bNWEBj6ZXRuyxZyD    RtqwnXvkhACDV+euTeJm1Ki7A73qNWtFiF+/gA95Gly2CJLDhwEHMOUAAuOpLYDEgBxZ4GRTlC1fDnpkM+fOqD6DDj1aZpITp0dtGCDhr+fVuCu3z    lg49ijaokTZTo27uG7Gjn2P+hI8+PDPERoUB318bWbfAJ5sUNFcuGRTYUqV/3ogfXp1rWlMc6awJjiAAd2fm4ogXjz56aypOoIde4OE5u/F9x199d    lXnnGiHZWEYbGpsAEA3QXYnHwEFliKAgswgJ8LPeiUXGwedCAKABACCN+EA1pYIIYaFlcDhytd51sGAJbo3onOpajiihlO92KHGaUXGwWjUBChjSP    iWJuOO/LYIm4v1tXfE6J4gCSJEZ7YgRYUNrkji9P55sF/ogxw5ZkSqIDaZBV6aSGYq/lGZplndkckZ98xoICbTcIJGQAZcNmdmUc210hs35nCyJ58    fgmIKX5RQGOZowxaZwYA+JaoKQwswGijBV4C6SiTUmpphMspJx9unX4KaimjDv9aaXOEBteBqmuuxgEHoLX6Kqx+yXqqBANsgCtit4FWQAEkrNbpq    7HSOmtwag5w57GrmlJBASEU18ADjUYb3ADTinIttsgSB1oJFfA63bduimuqKB1keqwUhoCSK374wbujvOSu4QG6UvxBRydcpKsav++Ca6G8A6Pr1x    2kVMyHwsVxUALDq/krnrhPSOzXG1lUTIoffqGR7Goi2MAxbv6O2kEG56I7CSlRsEFKFVyovDJoIRTg7sugNRDGqCJzJgcKE0ywc0ELm6KBCCJo8DI    PFeCWNGcyqNFE06ToAfV0HBRgxsvLThHn1oddQMrXj5DyAQgjEHSAJMWZwS3HPxT/QMbabI/iBCliMLEJKX2EEkomBAUCxRi42VDADxyTYDVogV+w    SChqmKxEKCDAYFDFj4OmwbY7bDGdBhtrnTQYOigeChUmc1K3QTnAUfEgGFgAWt88hKA6aCRIXhxnQ1yg3BCayK44EWdkUQcBByEQChFXfCB776aQs    G0BIlQgQgE8qO26X1h8cEUep8ngRBnOy74E9QgRgEAC8SvOfQkh7FDBDmS43PmGoIiKUUEGkMEC/PJHgxw0xH74yx/3XnaYRJgMB8obxQW6kL9QYE    J0FIFgByfIL7/IQAlvQwEpnAC7DtLNJCKUoO/w45c44GwCXiAFB/OXAATQryUxdN4LfFiwgjCNYg+kYMIEFkCKDs6PKAIJouyGWMS1FSKJOMRB/Bo    IxYJIUXFUxNwoIkEKPAgCBZSQHQ1A2EWDfDEUVLyADj5AChSIQW6gu10bE/JG2VnCZGfo4R4d0sdQoBAHhPjhIB94v/wRoRKQWGRHgrhGSQJxCS+0    pCZbEhAAOw=="
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx0", pos=(None,2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("ne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Whitespace after '('
                                                            Open

                                                                print( app.getOptionBox("l1") , LIST_ONE[3])
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ','
                                                            Open

                                                                print( app.getOptionBox("l1") , LIST_ONE[3])
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace after '('
                                                            Open

                                                                print( app.getScale("s1"))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Continuation line unaligned for hanging indent
                                                            Open

                                                                    None)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Missing whitespace around operator
                                                            Open

                                                                EMPTY_HASH={}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace after ','
                                                            Open

                                                                app.setPadding(5,10)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def CHECK_CHANGE_FUNCTION(value=True):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_grid_layout():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx6", pos=(1,2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("ne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Too many blank lines (2)
                                                            Open

                                                                app.setSpinBox("s1", "b")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_links():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    ["Tina", 37, "Female"],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    actionButton=["aaa", "bbb"],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Missing whitespace after ','
                                                            Open

                                                                app.setSize(200,200)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app.setGuiPadding([20,20])
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def checkPriority():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ':'
                                                            Open

                                                                    "America":[32, 17, 242, 167],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_rightClick():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx7", pos=(2,2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx8", pos=('p',2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx9", pos=('n',2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Too many blank lines (2)
                                                            Open

                                                                app.setEntryDefault("e1", TEXT_TWO)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_events():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def dismissEditMenu():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx7", pos=(2,2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx8", pos=('p',2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("lne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Module level import not at top of file
                                                            Open

                                                            from appJar.appjar import Meter, Properties, PieChart, DraggableWidget, AjText, AjRectangle, AjPoint, AjScrolledText, SelectableLabel, ToggleFrame, PagedWindow, Page, SubWindow, ScrollPane, FrameStack, WIDGET_NAMES
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Place imports at the top of the file.

                                                            Always put imports at the top of the file, just after any module
                                                            comments and docstrings, and before module globals and constants.
                                                            
                                                            Okay: import os
                                                            Okay: # this is a comment\nimport os
                                                            Okay: '''this is a module docstring'''\nimport os
                                                            Okay: r'''this is a module docstring'''\nimport os
                                                            Okay:
                                                            try:\n\timport x\nexcept ImportError:\n\tpass\nelse:\n\tpass\nimport y
                                                            Okay:
                                                            try:\n\timport x\nexcept ImportError:\n\tpass\nfinally:\n\tpass\nimport y
                                                            E402: a=1\nimport os
                                                            E402: 'One string'\n"Two string"\nimport os
                                                            E402: a=1\nfrom sys import x
                                                            
                                                            Okay: if x:\n    import os

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                        ["b2b1", "b2b2", "b2b3", "b2b4"],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_lists():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("ne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert app.getEntry("lne1") == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_buttons():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Multiple statements on one line (colon)
                                                            Open

                                                            try: from tkinter import Frame, Event, Label, Entry, Button, Radiobutton, Checkbutton, OptionMenu, Spinbox, Listbox, Message, PhotoImage, Scale, Canvas, LabelFrame, PanedWindow
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx0", pos=(None,2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Comparison to none should be 'if cond is none:'
                                                            Open

                                                                assert entryVals["lne1"] == None
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Comparison to singletons should use "is" or "is not".

                                                            Comparisons to singletons like None should always be done
                                                            with "is" or "is not", never the equality operators.
                                                            
                                                            Okay: if arg is not None:
                                                            E711: if arg != None:
                                                            E711: if None == arg:
                                                            E712: if arg == True:
                                                            E712: if False == arg:
                                                            
                                                            Also, beware of writing if x when you really mean if x is not None
                                                            -- e.g. when testing whether a variable or argument that defaults to
                                                            None was set to some other value.  The other value might have a type
                                                            (such as a container) that could be false in a boolean context!

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_remover():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx9", pos=('n',2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app.label("xx0", pos=(None,2,3,4))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def linkPressed(link=None):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                                                    datetime.date.today().day)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Expected an indented block (comment)
                                                            Open

                                                            # called in a thread
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Use indent_size (PEP8 says 4) spaces per indentation level.

                                                            For really old code that you don't want to mess up, you can continue
                                                            to use 8-space tabs.
                                                            
                                                            Okay: a = 1
                                                            Okay: if a == 0:\n    a = 1
                                                            E111:   a = 1
                                                            E114:   # a = 1
                                                            
                                                            Okay: for item in items:\n    pass
                                                            E112: for item in items:\npass
                                                            E115: for item in items:\n# Hi\n    pass
                                                            
                                                            Okay: a = 1\nb = 2
                                                            E113: a = 1\n    b = 2
                                                            E116: a = 1\n    # b = 2

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Bg(\""+widg_id +"\", \"red\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Anchor(\""+widg_id +"\", 'ne')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Anchor(\""+widg_id +"\", 'nw')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Anchor(\""+widg_id +"\", 'sw')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "DragFunction(\""+widg_id +"\", [tester_function,tester_function] )")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace after ','
                                                            Open

                                                                    x = [1,2,3,4,5]
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace after ':'
                                                            Open

                                                                    "America":[32, 17, 242, 167],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                    guiPadding=(5,6),
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                    labelFont={'size':18, 'family':'helvetica'},
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected an indented block (comment)
                                                            Open

                                                            # this causes testing to hang - the popup doesn't go....
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Use indent_size (PEP8 says 4) spaces per indentation level.

                                                            For really old code that you don't want to mess up, you can continue
                                                            to use 8-space tabs.
                                                            
                                                            Okay: a = 1
                                                            Okay: if a == 0:\n    a = 1
                                                            E111:   a = 1
                                                            E114:   # a = 1
                                                            
                                                            Okay: for item in items:\n    pass
                                                            E112: for item in items:\npass
                                                            E115: for item in items:\n# Hi\n    pass
                                                            
                                                            Okay: a = 1\nb = 2
                                                            E113: a = 1\n    b = 2
                                                            E116: a = 1\n    # b = 2

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Trailing whitespace
                                                            Open

                                                                app.addToolbar(["a", "b", "c", "ABOUT"], 
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Trailing whitespace is superfluous.

                                                            The warning returned varies on whether the line itself is blank,
                                                            for easier filtering for those who want to indent their blank lines.
                                                            
                                                            Okay: spam(1)\n#
                                                            W291: spam(1) \n#
                                                            W293: class Foo(object):\n    \n    bang = 12

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "DisabledFg(\""+widg_id +"\", \"red\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Width(\""+widg_id +"\", 20)")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "InPadding(\""+widg_id +"\", [20, 20])")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Relief(\""+widg_id +"\", 'sunken')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.remove" + widg_type+ "(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Multiple statements on one line (colon)
                                                            Open

                                                                except: pass
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Unexpected spaces around keyword / parameter equals
                                                            Open

                                                                app.selectFrame("sstack", 2, callFunction = False)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Don't use spaces around the '=' sign in function arguments.

                                                            Don't use spaces around the '=' sign when used to indicate a
                                                            keyword argument or a default parameter value, except when
                                                            using a type annotation.
                                                            
                                                            Okay: def complex(real, imag=0.0):
                                                            Okay: return magic(r=real, i=imag)
                                                            Okay: boolean(a == b)
                                                            Okay: boolean(a != b)
                                                            Okay: boolean(a <= b)
                                                            Okay: boolean(a >= b)
                                                            Okay: def foo(arg: int = 42):
                                                            Okay: async def foo(arg: int = 42):
                                                            
                                                            E251: def complex(real, imag = 0.0):
                                                            E251: return magic(r = real, i = imag)
                                                            E252: def complex(real, image: float=0.0):

                                                            Missing whitespace after ','
                                                            Open

                                                                    y = [2,4,6,8,10]
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace after ':'
                                                            Open

                                                                    labelFont={'size':18, 'family':'helvetica'},
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "InactiveFg(\""+widg_id +"\", \"red\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "InPadding(\""+widg_id +"\", 20, 20)")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Anchor(\""+widg_id +"\", 'n')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Anchor(\""+widg_id +"\", 'se')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Anchor(\""+widg_id +"\", 'w')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Anchor(\""+widg_id +"\", 'center')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Whitespace before ','
                                                            Open

                                                                assert isinstance(lf , LabelFrame)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ','
                                                            Open

                                                                assert isinstance(tog , ToggleFrame)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Too many leading '#' for block comment
                                                            Open

                                                                ## TABBED FRAMES
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate inline comments by at least two spaces.

                                                            An inline comment is a comment on the same line as a statement.
                                                            Inline comments should be separated by at least two spaces from the
                                                            statement. They should start with a # and a single space.
                                                            
                                                            Each line of a block comment starts with a # and a single space
                                                            (unless it is indented text inside the comment).
                                                            
                                                            Okay: x = x + 1  # Increment x
                                                            Okay: x = x + 1    # Increment x
                                                            Okay: # Block comment
                                                            E261: x = x + 1 # Increment x
                                                            E262: x = x + 1  #Increment x
                                                            E262: x = x + 1  #  Increment x
                                                            E265: #Block comment
                                                            E266: ### Block comment

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Too many leading '#' for block comment
                                                            Open

                                                                ## FRAMES
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate inline comments by at least two spaces.

                                                            An inline comment is a comment on the same line as a statement.
                                                            Inline comments should be separated by at least two spaces from the
                                                            statement. They should start with a # and a single space.
                                                            
                                                            Each line of a block comment starts with a # and a single space
                                                            (unless it is indented text inside the comment).
                                                            
                                                            Okay: x = x + 1  # Increment x
                                                            Okay: x = x + 1    # Increment x
                                                            Okay: # Block comment
                                                            E261: x = x + 1 # Increment x
                                                            E262: x = x + 1  #Increment x
                                                            E262: x = x + 1  #  Increment x
                                                            E265: #Block comment
                                                            E266: ### Block comment

                                                            Too many leading '#' for block comment
                                                            Open

                                                                ## FRAME STACKS
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate inline comments by at least two spaces.

                                                            An inline comment is a comment on the same line as a statement.
                                                            Inline comments should be separated by at least two spaces from the
                                                            statement. They should start with a # and a single space.
                                                            
                                                            Each line of a block comment starts with a # and a single space
                                                            (unless it is indented text inside the comment).
                                                            
                                                            Okay: x = x + 1  # Increment x
                                                            Okay: x = x + 1    # Increment x
                                                            Okay: # Block comment
                                                            E261: x = x + 1 # Increment x
                                                            E262: x = x + 1  #Increment x
                                                            E262: x = x + 1  #  Increment x
                                                            E265: #Block comment
                                                            E266: ### Block comment

                                                            Missing whitespace after ','
                                                            Open

                                                                    y = [2,4,6,8,10]
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_canvas():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Relief(\""+widg_id +"\", 'flat')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.disable" + widg_type+ "(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Whitespace before ','
                                                            Open

                                                                assert isinstance(container , LabelFrame)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_microbits():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                    location=(50,50),
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                    buttonFont={'size':19, 'family':'helvetica'},
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    [tester_function, tester_function, tester_function, tester_function],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Do not use bare 'except'
                                                            Open

                                                                except:
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Too many blank lines (2)
                                                            Open

                                                                assert app.getTabbedFrameSelectedTab("tbf1") == "tab1"
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def testScrollPaneScrolling(sp):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Sticky(\""+widg_id +"\", 'n')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "SubmitFunction(\""+widg_id +"\", tester_function)")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.hide" + widg_type+ "(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace after ':'
                                                            Open

                                                                    font={'size':20, 'family':'helvetica'},
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    [tester_function, tester_function, tester_function, tester_function],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "OverFunction(\""+widg_id +"\", [tester_function, tester_function])")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.hide" + widg_type+ "(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Unexpected spaces around keyword / parameter equals
                                                            Open

                                                                app.selectFrame("sstack", 0, callFunction = False)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Don't use spaces around the '=' sign in function arguments.

                                                            Don't use spaces around the '=' sign when used to indicate a
                                                            keyword argument or a default parameter value, except when
                                                            using a type annotation.
                                                            
                                                            Okay: def complex(real, imag=0.0):
                                                            Okay: return magic(r=real, i=imag)
                                                            Okay: boolean(a == b)
                                                            Okay: boolean(a != b)
                                                            Okay: boolean(a <= b)
                                                            Okay: boolean(a >= b)
                                                            Okay: def foo(arg: int = 42):
                                                            Okay: async def foo(arg: int = 42):
                                                            
                                                            E251: def complex(real, imag = 0.0):
                                                            E251: return magic(r = real, i = imag)
                                                            E252: def complex(real, image: float=0.0):

                                                            Missing whitespace after ','
                                                            Open

                                                                    x = [1,2,3,4,5]
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                    x = [1,2,3,4,5]
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_logging():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Continuation line missing indentation or outdented
                                                            Open

                                                            #        icon='images/favicon.ico',
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Do not use bare 'except'
                                                            Open

                                                                except:
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Align(\""+widg_id +"\", 'right')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Sticky(\""+widg_id +"\", 'right')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.disable" + widg_type+ "(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_containers():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ')'
                                                            Open

                                                                print( "DONE - Curr:", app.getCurrentFrame("fstack"), "Prev", app.getPreviousFrame("fstack") )
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace after ':'
                                                            Open

                                                                    "South America":[126, 170, 226, 292],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                    inPadding=(3,4),
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Trailing whitespace
                                                            Open

                                                                app.addToolbar(["a", "b", "c", "ABOUT"], 
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Trailing whitespace is superfluous.

                                                            The warning returned varies on whether the line itself is blank,
                                                            for easier filtering for those who want to indent their blank lines.
                                                            
                                                            Okay: spam(1)\n#
                                                            W291: spam(1) \n#
                                                            W293: class Foo(object):\n    \n    bang = 12

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "DisabledBg(\""+widg_id +"\", \"red\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Padding(\""+widg_id +"\", 20, 20)")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Align(\""+widg_id +"\", 'left')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Sticky(\""+widg_id +"\", 'both')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.show" + widg_type+ "(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.enable" + widg_type+ "(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.enable" + widg_type+ "(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Too many blank lines (2)
                                                            Open

                                                                # JUGGLING FRAMES
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Continuation line under-indented for visual indent
                                                            Open

                                                                    [tester_function, tester_function, tester_function, tester_function],
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Continuation lines indentation.

                                                            Continuation lines should align wrapped elements either vertically
                                                            using Python's implicit line joining inside parentheses, brackets
                                                            and braces, or using a hanging indent.
                                                            
                                                            When using a hanging indent these considerations should be applied:
                                                            - there should be no arguments on the first line, and
                                                            - further indentation should be used to clearly distinguish itself
                                                              as a continuation line.
                                                            
                                                            Okay: a = (\n)
                                                            E123: a = (\n    )
                                                            
                                                            Okay: a = (\n    42)
                                                            E121: a = (\n   42)
                                                            E122: a = (\n42)
                                                            E123: a = (\n    42\n    )
                                                            E124: a = (24,\n     42\n)
                                                            E125: if (\n    b):\n    pass
                                                            E126: a = (\n        42)
                                                            E127: a = (24,\n      42)
                                                            E128: a = (24,\n    42)
                                                            E129: if (a or\n    b):\n    pass
                                                            E131: a = (\n    42\n 24)

                                                            Missing whitespace after ':'
                                                            Open

                                                                    statusFont={'size':15, 'family':'helvetica'},
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Do not use bare 'except'
                                                            Open

                                                                except:
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Do not use bare 'except'
                                                            Open

                                                                except:
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Fg(\""+widg_id +"\", \"red\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "InactiveBg(\""+widg_id +"\", \"red\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Relief(\""+widg_id +"\", 'raised')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Focus(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.show" + widg_type+ "(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Too many leading '#' for block comment
                                                            Open

                                                                ## TOGGLE FRAMES
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate inline comments by at least two spaces.

                                                            An inline comment is a comment on the same line as a statement.
                                                            Inline comments should be separated by at least two spaces from the
                                                            statement. They should start with a # and a single space.
                                                            
                                                            Each line of a block comment starts with a # and a single space
                                                            (unless it is indented text inside the comment).
                                                            
                                                            Okay: x = x + 1  # Increment x
                                                            Okay: x = x + 1    # Increment x
                                                            Okay: # Block comment
                                                            E261: x = x + 1 # Increment x
                                                            E262: x = x + 1  #Increment x
                                                            E262: x = x + 1  #  Increment x
                                                            E265: #Block comment
                                                            E266: ### Block comment

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Trailing whitespace
                                                            Open

                                                                app.addToolbar(["a", "b", "c", "ABOUT"], 
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Trailing whitespace is superfluous.

                                                            The warning returned varies on whether the line itself is blank,
                                                            for easier filtering for those who want to indent their blank lines.
                                                            
                                                            Okay: spam(1)\n#
                                                            W291: spam(1) \n#
                                                            W293: class Foo(object):\n    \n    bang = 12

                                                            Missing whitespace after ','
                                                            Open

                                                                    x = [1,2,3,4,5]
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Do not use bare 'except'
                                                            Open

                                                                except:
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Missing whitespace after ':'
                                                            Open

                                                                    buttonFont={'size':19, 'family':'helvetica'},
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Padding(\""+widg_id +"\", [20, 20])")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Too many leading '#' for block comment
                                                            Open

                                                            ##    assert app.icon == 'images/favicon.ico'
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate inline comments by at least two spaces.

                                                            An inline comment is a comment on the same line as a statement.
                                                            Inline comments should be separated by at least two spaces from the
                                                            statement. They should start with a # and a single space.
                                                            
                                                            Each line of a block comment starts with a # and a single space
                                                            (unless it is indented text inside the comment).
                                                            
                                                            Okay: x = x + 1  # Increment x
                                                            Okay: x = x + 1    # Increment x
                                                            Okay: # Block comment
                                                            E261: x = x + 1 # Increment x
                                                            E262: x = x + 1  #Increment x
                                                            E262: x = x + 1  #  Increment x
                                                            E265: #Block comment
                                                            E266: ### Block comment

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Relief(\""+widg_id +"\", 'ridge')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Align(\""+widg_id +"\", 'center')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "ChangeFunction(\""+widg_id +"\", tester_function)")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def closePop():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            At least two spaces before inline comment
                                                            Open

                                                                    pass # only works on windows
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate inline comments by at least two spaces.

                                                            An inline comment is a comment on the same line as a statement.
                                                            Inline comments should be separated by at least two spaces from the
                                                            statement. They should start with a # and a single space.
                                                            
                                                            Each line of a block comment starts with a # and a single space
                                                            (unless it is indented text inside the comment).
                                                            
                                                            Okay: x = x + 1  # Increment x
                                                            Okay: x = x + 1    # Increment x
                                                            Okay: # Block comment
                                                            E261: x = x + 1 # Increment x
                                                            E262: x = x + 1  #Increment x
                                                            E262: x = x + 1  #  Increment x
                                                            E265: #Block comment
                                                            E266: ### Block comment

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Anchor(\""+widg_id +"\", 'e')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Sticky(\""+widg_id +"\", 'left')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.remove" + widg_type+ "(\""+widg_id +"\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Do not use bare 'except'
                                                            Open

                                                                except: pass
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Multiple statements on one line (colon)
                                                            Open

                                                                if POP_UP is not None: POP_UP.cancel()
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_padding():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_gui_properties():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "IPadding(\""+widg_id +"\", 20, 20)")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Too many leading '#' for block comment
                                                            Open

                                                                ## PAGED WINDOWS
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate inline comments by at least two spaces.

                                                            An inline comment is a comment on the same line as a statement.
                                                            Inline comments should be separated by at least two spaces from the
                                                            statement. They should start with a # and a single space.
                                                            
                                                            Each line of a block comment starts with a # and a single space
                                                            (unless it is indented text inside the comment).
                                                            
                                                            Okay: x = x + 1  # Increment x
                                                            Okay: x = x + 1    # Increment x
                                                            Okay: # Block comment
                                                            E261: x = x + 1 # Increment x
                                                            E262: x = x + 1  #Increment x
                                                            E262: x = x + 1  #  Increment x
                                                            E265: #Block comment
                                                            E266: ### Block comment

                                                            Unexpected spaces around keyword / parameter equals
                                                            Open

                                                                app.selectFrame("sstack", 0, callFunction = False)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Don't use spaces around the '=' sign in function arguments.

                                                            Don't use spaces around the '=' sign when used to indicate a
                                                            keyword argument or a default parameter value, except when
                                                            using a type annotation.
                                                            
                                                            Okay: def complex(real, imag=0.0):
                                                            Okay: return magic(r=real, i=imag)
                                                            Okay: boolean(a == b)
                                                            Okay: boolean(a != b)
                                                            Okay: boolean(a <= b)
                                                            Okay: boolean(a >= b)
                                                            Okay: def foo(arg: int = 42):
                                                            Okay: async def foo(arg: int = 42):
                                                            
                                                            E251: def complex(real, imag = 0.0):
                                                            E251: return magic(r = real, i = imag)
                                                            E252: def complex(real, image: float=0.0):

                                                            Missing whitespace after ','
                                                            Open

                                                                    y = [2,4,6,8,10]
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_turtle():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ':'
                                                            Open

                                                                    statusFont={'size':15, 'family':'helvetica'},
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Anchor(\""+widg_id +"\", 's')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Cursor(\""+widg_id +"\", 'plus')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Too many leading '#' for block comment
                                                            Open

                                                                ## PANED FRAMES
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate inline comments by at least two spaces.

                                                            An inline comment is a comment on the same line as a statement.
                                                            Inline comments should be separated by at least two spaces from the
                                                            statement. They should start with a # and a single space.
                                                            
                                                            Each line of a block comment starts with a # and a single space
                                                            (unless it is indented text inside the comment).
                                                            
                                                            Okay: x = x + 1  # Increment x
                                                            Okay: x = x + 1    # Increment x
                                                            Okay: # Block comment
                                                            E261: x = x + 1 # Increment x
                                                            E262: x = x + 1  #Increment x
                                                            E262: x = x + 1  #  Increment x
                                                            E265: #Block comment
                                                            E266: ### Block comment

                                                            Too many leading '#' for block comment
                                                            Open

                                                                ## SUB WINDOWS
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate inline comments by at least two spaces.

                                                            An inline comment is a comment on the same line as a statement.
                                                            Inline comments should be separated by at least two spaces from the
                                                            statement. They should start with a # and a single space.
                                                            
                                                            Each line of a block comment starts with a # and a single space
                                                            (unless it is indented text inside the comment).
                                                            
                                                            Okay: x = x + 1  # Increment x
                                                            Okay: x = x + 1    # Increment x
                                                            Okay: # Block comment
                                                            E261: x = x + 1 # Increment x
                                                            E262: x = x + 1  #Increment x
                                                            E262: x = x + 1  #  Increment x
                                                            E265: #Block comment
                                                            E266: ### Block comment

                                                            Missing whitespace after ','
                                                            Open

                                                                    y = [2,4,6,8,10]
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_googlemap():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                    padding=(1,2),
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                    font={'size':20, 'family':'helvetica'},
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "ActiveFg(\""+widg_id +"\", \"red\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "ActiveBg(\""+widg_id +"\", \"red\")")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Height(\""+widg_id +"\", 20)")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "IPadding(\""+widg_id +"\", [20, 20])")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Multiple statements on one line (colon)
                                                            Open

                                                                try: app.setPagedWindowPage("pg1", 30)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Missing whitespace after ','
                                                            Open

                                                                app.setSubWindowLocation("sb1", 50,50)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Relief(\""+widg_id +"\", 'groove')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "Sticky(\""+widg_id +"\", 'w')")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "DragFunction(\""+widg_id +"\", tester_function )")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Missing whitespace around operator
                                                            Open

                                                                exec("app.set" + widg_type + "OverFunction(\""+widg_id +"\", tester_function)")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Whitespace before ','
                                                            Open

                                                                assert isinstance(container , PanedWindow)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Unexpected spaces around keyword / parameter equals
                                                            Open

                                                                app.selectFrame("sstack", 2, callFunction = False)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Don't use spaces around the '=' sign in function arguments.

                                                            Don't use spaces around the '=' sign when used to indicate a
                                                            keyword argument or a default parameter value, except when
                                                            using a type annotation.
                                                            
                                                            Okay: def complex(real, imag=0.0):
                                                            Okay: return magic(r=real, i=imag)
                                                            Okay: boolean(a == b)
                                                            Okay: boolean(a != b)
                                                            Okay: boolean(a <= b)
                                                            Okay: boolean(a >= b)
                                                            Okay: def foo(arg: int = 42):
                                                            Okay: async def foo(arg: int = 42):
                                                            
                                                            E251: def complex(real, imag = 0.0):
                                                            E251: return magic(r = real, i = imag)
                                                            E252: def complex(real, image: float=0.0):

                                                            Whitespace after '('
                                                            Open

                                                                print( "DONE - Curr:", app.getCurrentFrame("fstack"), "Prev", app.getPreviousFrame("fstack") )
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_plots():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                    size=(377,377),
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.inPadding == (3,4)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.location == (50,50)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 0
                                                            Open

                                                            def test_gui(btn=None):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ':'
                                                            Open

                                                                app4.properties("Toppings", {"a":False, "b": True}, boxbg='green')
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                app4.canvas("cnv1", row=2, column=3, rowspan=7, map={"A":[1,1,5,5]}, submit=changer)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace around operator
                                                            Open

                                                                toppings={"Cheese":False, "Tomato":False, "Bacon":False, "Corn":False, "Mushroom":False}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Multiple statements on one line (colon)
                                                            Open

                                                            try: app2.setTtkTheme("broken")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Missing whitespace after ','
                                                            Open

                                                                app.padding = (20,21)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_focus():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.canvas("cnv1", row=2, column=3, rowspan=7, map={"A":[1,1,5,5]}, submit=changer)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.guiPadding == (5,6)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.location != (300,300)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Multiple statements on one line (colon)
                                                            Open

                                                            try: test_plots()
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.entry("lss1", row=12, column=1, secret=True,label=True)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def press(btn):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.entry("lse1", row=7, column=1,label=True)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                toppings={"Cheese":False, "Tomato":False, "Bacon":False, "Corn":False, "Mushroom":False}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                toppings={"Cheese":False, "Tomato":False, "Bacon":False, "Corn":False, "Mushroom":False}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                            with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.padding == (20,21)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                app.labelFont = {'size':21, 'family':myFont2}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def dropFunc(val=None):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def changer(btn=None):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace around operator
                                                            Open

                                                                row=app4.gr()
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Do not use bare 'except'
                                                            Open

                                                                except: pass
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def updateApp4(btn=None):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.image("img2", "1_entries.gif", over="1_flash.gif", row=2, column=3, rowspan=7, map={"A":[1,1,5,5]}, submit=changer)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                            with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.location == (300,300)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def test_dnd():
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Expected 2 blank lines after class or function definition, found 1
                                                            Open

                                                            app.registerEvent(test_gui)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Expected 2 blank lines after class or function definition, found 1
                                                            Open

                                                            doStopAgain = 0
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Expected 2 blank lines, found 0
                                                            Open

                                                            def test_gui4(btn=None):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ':'
                                                            Open

                                                                toppings={"Cheese":False, "Tomato":False, "Bacon":False, "Corn":False, "Mushroom":False}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Do not use bare 'except'
                                                            Open

                                                            except: pass
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Multiple statements on one line (colon)
                                                            Open

                                                            except: pass
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Whitespace before ':'
                                                            Open

                                                            with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.inPadding == (22,23)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                                with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def cbB(success):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Expected 2 blank lines after class or function definition, found 1
                                                            Open

                                                            with gui("Simple Demo", transparency=50, padding=5, location="CENTER", bg="red") as app4:
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.image("img2", "1_entries.gif", over="1_flash.gif", row=2, column=3, rowspan=7, map={"A":[1,1,5,5]}, submit=changer)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Whitespace before ':'
                                                            Open

                                                            with pytest.raises(Exception) :
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Avoid extraneous whitespace.

                                                            Avoid extraneous whitespace in these situations:
                                                            - Immediately inside parentheses, brackets or braces.
                                                            - Immediately before a comma, semicolon, or colon.
                                                            
                                                            Okay: spam(ham[1], {eggs: 2})
                                                            E201: spam( ham[1], {eggs: 2})
                                                            E201: spam(ham[ 1], {eggs: 2})
                                                            E201: spam(ham[1], { eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2} )
                                                            E202: spam(ham[1 ], {eggs: 2})
                                                            E202: spam(ham[1], {eggs: 2 })
                                                            
                                                            E203: if x == 4: print x, y; x, y = y , x
                                                            E203: if x == 4: print x, y ; x, y = y, x
                                                            E203: if x == 4 : print x, y; x, y = y, x

                                                            Missing whitespace after ','
                                                            Open

                                                                app.inPadding = (22,23)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app.guiPadding = (24,25)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.guiPadding == (3,3)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.entry("lsf1", row=8, column=1, kind="file",label=True)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Multiple statements on one line (colon)
                                                            Open

                                                            except: print("Skipping plot tests - MatPlotLib not available")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Expected 2 blank lines, found 0
                                                            Open

                                                            def test_gui2(btn=None):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.entry("lsn1", row=10, column=1, kind="numeric",label=True)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.entry("lsa1", ["a", "b", "bb", "bbb"], row=11, column=1, kind="auto",label=True)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                toppings={"Cheese":False, "Tomato":False, "Bacon":False, "Corn":False, "Mushroom":False}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                app.font = {'size':25, 'family':myFont}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                app.buttonFont = {'size':23, 'family':myFont1}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.meter("CryingMorerr", (app4.slider("happiness again"),app4.scale("happiness again")))
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                app4.image("img2", "1_entries.gif", over="1_flash.gif", row=2, column=3, rowspan=7, map={"A":[1,1,5,5]}, submit=changer)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                toppings={"Cheese":False, "Tomato":False, "Bacon":False, "Corn":False, "Mushroom":False}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.size == (377,377)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app.location = (300,300)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                app.font = {'size':25, 'family':myFont}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                app.labelFont = {'size':21, 'family':myFont2}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                dw = DraggableWidget(app.topLevel.canvasPane, "a", "b", [10,10])
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.canvas("cnv1", row=2, column=3, rowspan=7, map={"A":[1,1,5,5]}, submit=changer)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace around operator
                                                            Open

                                                                row=app4.gr()
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Do not use bare 'except'
                                                            Open

                                                            except: print("Skipping plot tests - MatPlotLib not available")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            When catching exceptions, mention specific exceptions when possible.

                                                            Okay: except Exception:
                                                            Okay: except BaseException:
                                                            E722: except:

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def cbA(data):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.canvas("cnv1", row=2, column=3, rowspan=7, map={"A":[1,1,5,5]}, submit=changer)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines after class or function definition, found 1
                                                            Open

                                                            print("<<<Starting app2>>>")
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.padding == (1,2)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.inPadding == (7,7)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.guiPadding == (24,25)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ':'
                                                            Open

                                                                app.buttonFont = {'size':23, 'family':myFont1}
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Multiple statements on one line (colon)
                                                            Open

                                                                try: assert app.getFocus() == "entFocus"
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Too many blank lines (2)
                                                            Open

                                                                row=app4.gr()
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace around operator
                                                            Open

                                                                row=app4.gr()
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Surround operators with a single space on either side.

                                                            - Always surround these binary operators with a single space on
                                                              either side: assignment (=), augmented assignment (+=, -= etc.),
                                                              comparisons (==, <, >, !=, <=, >=, in, not in, is, is not),
                                                              Booleans (and, or, not).
                                                            
                                                            - If operators with different priorities are used, consider adding
                                                              whitespace around the operators with the lowest priorities.
                                                            
                                                            Okay: i = i + 1
                                                            Okay: submitted += 1
                                                            Okay: x = x * 2 - 1
                                                            Okay: hypot2 = x * x + y * y
                                                            Okay: c = (a + b) * (a - b)
                                                            Okay: foo(bar, key='word', *args, **kwargs)
                                                            Okay: alpha[:-i]
                                                            
                                                            E225: i=i+1
                                                            E225: submitted +=1
                                                            E225: x = x /2 - 1
                                                            E225: z = x **y
                                                            E225: z = 1and 1
                                                            E226: c = (a+b) * (a-b)
                                                            E226: hypot2 = x*x + y*y
                                                            E227: c = a|b
                                                            E228: msg = fmt%(errno, errmsg)

                                                            Too many blank lines (2)
                                                            Open

                                                                row=app4.gr()
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.meter("CryingMorerr", (50,70), colspan=3, kind="dual", fill=["green", "blue"])
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                assert app.padding == (5,5)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Expected 2 blank lines, found 1
                                                            Open

                                                            def dragFunc(val=None):
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Multiple statements on one line (colon)
                                                            Open

                                                                except: pass
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Compound statements (on the same line) are generally discouraged.

                                                            While sometimes it's okay to put an if/for/while with a small body
                                                            on the same line, never do this for multi-clause statements.
                                                            Also avoid folding such long lines!
                                                            
                                                            Always use a def statement instead of an assignment statement that
                                                            binds a lambda expression directly to a name.
                                                            
                                                            Okay: if foo == 'blah':\n    do_blah_thing()
                                                            Okay: do_one()
                                                            Okay: do_two()
                                                            Okay: do_three()
                                                            
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: for x in lst: total += x
                                                            E701: while t < 10: t = delay()
                                                            E701: if foo == 'blah': do_blah_thing()
                                                            E701: else: do_non_blah_thing()
                                                            E701: try: something()
                                                            E701: finally: cleanup()
                                                            E701: if foo == 'blah': one(); two(); three()
                                                            E702: do_one(); do_two(); do_three()
                                                            E703: do_four();  # useless semicolon
                                                            E704: def f(x): return 2*x
                                                            E731: f = lambda x: 2*x

                                                            Expected 2 blank lines after class or function definition, found 1
                                                            Open

                                                            doStop = 0
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Separate top-level function and class definitions with two blank lines.

                                                            Method definitions inside a class are separated by a single blank
                                                            line.
                                                            
                                                            Extra blank lines may be used (sparingly) to separate groups of
                                                            related functions.  Blank lines may be omitted between a bunch of
                                                            related one-liners (e.g. a set of dummy implementations).
                                                            
                                                            Use blank lines in functions, sparingly, to indicate logical
                                                            sections.
                                                            
                                                            Okay: def a():\n    pass\n\n\ndef b():\n    pass
                                                            Okay: def a():\n    pass\n\n\nasync def b():\n    pass
                                                            Okay: def a():\n    pass\n\n\n# Foo\n# Bar\n\ndef b():\n    pass
                                                            Okay: default = 1\nfoo = 1
                                                            Okay: classify = 1\nfoo = 1
                                                            
                                                            E301: class Foo:\n    b = 0\n    def bar():\n        pass
                                                            E302: def a():\n    pass\n\ndef b(n):\n    pass
                                                            E302: def a():\n    pass\n\nasync def b(n):\n    pass
                                                            E303: def a():\n    pass\n\n\n\ndef b(n):\n    pass
                                                            E303: def a():\n\n\n\n    pass
                                                            E304: @decorator\n\ndef a():\n    pass
                                                            E305: def a():\n    pass\na()
                                                            E306: def a():\n    def b():\n        pass\n    def c():\n        pass

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.image("img2", "1_entries.gif", over="1_flash.gif", row=2, column=3, rowspan=7, map={"A":[1,1,5,5]}, submit=changer)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            Missing whitespace after ','
                                                            Open

                                                                app4.entry("lsd1", row=9, column=1, kind="directory",label=True)
                                                            Severity: Minor
                                                            Found in tests/widget_test.py by pep8

                                                            Each comma, semicolon or colon should be followed by whitespace.

                                                            Okay: [a, b]
                                                            Okay: (3,)
                                                            Okay: a[1:4]
                                                            Okay: a[:4]
                                                            Okay: a[1:]
                                                            Okay: a[1:4:2]
                                                            E231: ['a','b']
                                                            E231: foo(bar,baz)
                                                            E231: [{'a':'b'}]

                                                            There are no issues that match your filters.

                                                            Category
                                                            Status