jlane9/mockerena

View on GitHub

Showing 5 of 5 total issues

Function format_output has a Cognitive Complexity of 25 (exceeds 5 allowed). Consider refactoring.
Open

def format_output(mock: dict, schema: dict, size: int = DEFAULT_SIZE) -> tuple:  # pylint: disable=R0914
    """Formats output as defined in schema

    :param dict mock: Mock data
    :param dict schema: Provider integration data schema
Severity: Minor
Found in mockerena/format.py - About 3 hrs to fix

Cognitive Complexity

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

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

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

Further reading

Function generate_xml_template has a Cognitive Complexity of 16 (exceeds 5 allowed). Consider refactoring.
Open

def generate_xml_template(columns: dict, root_node: str = None) -> str:
    """Convert columns to a Jinja template string

    :param dict columns:
    :param str root_node:
Severity: Minor
Found in mockerena/format.py - About 2 hrs to fix

Cognitive Complexity

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

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

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

Further reading

Function generate_data has a Cognitive Complexity of 15 (exceeds 5 allowed). Consider refactoring.
Open

def generate_data(schema: dict, size: int = DEFAULT_SIZE) -> dict:
    """Generates sample data from a schema

    :param dict schema: Provider integration data schema
    :param int size: Number of rows
Severity: Minor
Found in mockerena/generate.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

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

def make_safe(datum: Any, column: dict = None) -> Union[dict, float, int, list, str]:  #
    """Convert datum item to JSON safe output

    :param Any datum: Datum item
    :param dict column: Column data
Severity: Minor
Found in mockerena/generate.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

Module level import not at top of file
Open

from mockerena import __author__, __copyright__, __version__  # pylint: disable=C0413
Severity: Minor
Found in docs/conf.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
Severity
Category
Status
Source
Language