trakio/trakio-ruby

View on GitHub

Showing 7 of 7 total issues

Method constantize has a Cognitive Complexity of 25 (exceeds 5 allowed). Consider refactoring.
Open

      def constantize camel_cased_word # Taken from ActiveSupport
        names = camel_cased_word.split('::')

        # Trigger a builtin NameError exception including the ill-formed constant in the message.
        Object.const_get(camel_cased_word) if names.empty?
Severity: Minor
Found in lib/trakio_client/end_point.rb - 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

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

    def process_companies company_id, properties

      # String company should be moved to company_name
      if properties[:company].is_a? String
        properties[:company_name] = properties.delete :company
Severity: Minor
Found in lib/trakio_client/identify.rb - About 55 mins to fix

Cognitive Complexity

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

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

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

Further reading

Method check_parameters has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    def check_parameters event, distinct_id, company_id, properties
      unless event
        raise Exceptions::MissingParameter.new("The `event` parameter must be provided.")
      end
      unless distinct_id || company_id
Severity: Minor
Found in lib/trakio_client/track.rb - About 35 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

Method run has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    def run p = {}
      event = p[:event]
      distinct_id = p[:distinct_id] || self.distinct_id
      company_id = p[:company_id] || self.company_id
      channel = p[:channel] || self.channel
Severity: Minor
Found in lib/trakio_client/track.rb - About 35 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

Method check_parameters has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
Open

    def check_parameters alias_, distinct_id
      unless distinct_id
        raise Exceptions::MissingParameter.new('The `distinct_id` parameter must be provided.')
      end
      unless alias_
Severity: Minor
Found in lib/trakio_client/alias.rb - About 35 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

Method initialize has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
Open

  def initialize(*args)
    api_token, params = args
    api_token = self.class.default_instance.api_token unless api_token

    @api_token = api_token or raise Exceptions::InvalidToken.new('Missing API Token')
Severity: Minor
Found in lib/trakio_client.rb - 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

Method init has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
Open

    def init(*args)
      api_token, params = args
      raise Exceptions::InvalidToken.new('Missing API Token') unless api_token
      raise Exceptions::NoDistinctIdForDefaultInstance if params and params.has_key?(:distinct_id)
      raise Exceptions::NoCompanyIdForDefaultInstance if params and params.has_key?(:company_id)
Severity: Minor
Found in lib/trakio_client.rb - 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

Severity
Category
Status
Source
Language