activemerchant/active_merchant

View on GitHub

Showing 999 of 1,496 total issues

Class QbmsGateway has 25 methods (exceeds 20 allowed). Consider refactoring.
Open

    class QbmsGateway < Gateway
      API_VERSION = '4.0'

      class_attribute :test_url, :live_url

Severity: Minor
Found in lib/active_merchant/billing/gateways/qbms.rb - About 2 hrs to fix

    File plexo.rb has 283 lines of code (exceeds 250 allowed). Consider refactoring.
    Open

    module ActiveMerchant #:nodoc:
      module Billing #:nodoc:
        class PlexoGateway < Gateway
          self.test_url = 'https://api.testing.plexo.com.uy/v1/payments'
          self.live_url = 'https://api.plexo.com.uy/v1/payments'
    Severity: Minor
    Found in lib/active_merchant/billing/gateways/plexo.rb - About 2 hrs to fix

      File decidir_plus.rb has 283 lines of code (exceeds 250 allowed). Consider refactoring.
      Open

      module ActiveMerchant #:nodoc:
        module Billing #:nodoc:
          class DecidirPlusGateway < Gateway
            self.test_url = 'https://developers.decidir.com/api/v2'
            self.live_url = 'https://live.decidir.com/api/v2'
      Severity: Minor
      Found in lib/active_merchant/billing/gateways/decidir_plus.rb - About 2 hrs to fix

        Method add_transaction has a Cognitive Complexity of 20 (exceeds 5 allowed). Consider refactoring.
        Open

              def add_transaction(xml, money, options = {}, network_token_eci = nil)
                xml.Transaction do
                  xml.ReversalType REVERSAL_TYPE[options[:reversal_type]] || options[:reversal_type] if options[:reversal_type]
                  xml.TransactionID options[:trans_id] if options[:trans_id]
                  xml.TransactionAmount amount(money.to_i) if money
        Severity: Minor
        Found in lib/active_merchant/billing/gateways/vantiv_express.rb - About 2 hrs to fix

        Cognitive Complexity

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

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

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

        Further reading

        Method add_3d_secure has a Cognitive Complexity of 20 (exceeds 5 allowed). Consider refactoring.
        Open

              def add_3d_secure(post, options)
                if (options[:eci] && options[:xid]) || (options[:three_d_secure] && options[:three_d_secure][:version]&.start_with?('1'))
                  add_3d_secure_1_data(post, options)
                elsif options[:execute_threed] && options[:three_ds_2]
                  three_ds_2_options = options[:three_ds_2]
        Severity: Minor
        Found in lib/active_merchant/billing/gateways/credorax.rb - About 2 hrs to fix

        Cognitive Complexity

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

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

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

        Further reading

        Method add_payment_source has a Cognitive Complexity of 20 (exceeds 5 allowed). Consider refactoring.
        Open

              def add_payment_source(post, payment_method, options)
                if payment_method.is_a?(String)
                  post[:data_key] = payment_method
                  post[:cust_id] = options[:customer]
                else
        Severity: Minor
        Found in lib/active_merchant/billing/gateways/moneris.rb - About 2 hrs to fix

        Cognitive Complexity

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

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

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

        Further reading

        Method commit has a Cognitive Complexity of 20 (exceeds 5 allowed). Consider refactoring.
        Open

              def commit(method, url, parameters = nil, options = {}, type = false)
                raw_response = response = nil
                success = false
                begin
                  json = parameters ? parameters.to_json : nil
        Severity: Minor
        Found in lib/active_merchant/billing/gateways/worldpay_online_payments.rb - About 2 hrs to fix

        Cognitive Complexity

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

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

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

        Further reading

        Method add_customer_data has a Cognitive Complexity of 20 (exceeds 5 allowed). Consider refactoring.
        Open

              def add_customer_data(xml, payment_source, options)
                billing_address = options[:billing_address] || options[:address]
                shipping_address = options[:shipping_address] || options[:address]
        
                xml.CustomerData {
        Severity: Minor
        Found in lib/active_merchant/billing/gateways/itransact.rb - About 2 hrs to fix

        Cognitive Complexity

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

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

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

        Further reading

        Method build_setup_request has 68 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

              def build_setup_request(action, money, options)
                currency_code = options[:currency] || currency(money)
                options[:payment_action] = action
                options[:express_request] = true
                options[:shipping_address] ||= options[:address]
        Severity: Major
        Found in lib/active_merchant/billing/gateways/paypal_express.rb - About 2 hrs to fix

          File shift4.rb has 279 lines of code (exceeds 250 allowed). Consider refactoring.
          Open

          module ActiveMerchant #:nodoc:
            module Billing #:nodoc:
              class Shift4Gateway < Gateway
                self.test_url = 'https://utgapi.shift4test.com/api/rest/v1/'
                self.live_url = 'https://utg.shift4api.net/api/rest/v1/'
          Severity: Minor
          Found in lib/active_merchant/billing/gateways/shift4.rb - About 2 hrs to fix

            File cardknox.rb has 278 lines of code (exceeds 250 allowed). Consider refactoring.
            Open

            module ActiveMerchant #:nodoc:
              module Billing #:nodoc:
                class CardknoxGateway < Gateway
                  self.live_url = 'https://x1.cardknox.com/gateway'
            
            
            Severity: Minor
            Found in lib/active_merchant/billing/gateways/cardknox.rb - About 2 hrs to fix

              Class ExactGateway has 24 methods (exceeds 20 allowed). Consider refactoring.
              Open

                  class ExactGateway < Gateway
                    self.live_url = self.test_url = 'https://secure2.e-xact.com/vplug-in/transaction/rpc-enc/service.asmx'
              
                    API_VERSION = '8.5'
              
              
              Severity: Minor
              Found in lib/active_merchant/billing/gateways/exact.rb - About 2 hrs to fix

                Class FatZebraGateway has 24 methods (exceeds 20 allowed). Consider refactoring.
                Open

                    class FatZebraGateway < Gateway
                      self.live_url = 'https://gateway.fatzebra.com.au/v1.0'
                      self.test_url = 'https://gateway.sandbox.fatzebra.com.au/v1.0'
                
                      self.supported_countries = ['AU']
                Severity: Minor
                Found in lib/active_merchant/billing/gateways/fat_zebra.rb - About 2 hrs to fix

                  Class SumUpGateway has 24 methods (exceeds 20 allowed). Consider refactoring.
                  Open

                      class SumUpGateway < Gateway
                        self.live_url = 'https://api.sumup.com/v0.1/'
                  
                        self.supported_countries = %w(AT BE BG BR CH CL CO CY CZ DE DK EE ES FI FR
                                                      GB GR HR HU IE IT LT LU LV MT NL NO PL PT RO
                  Severity: Minor
                  Found in lib/active_merchant/billing/gateways/sum_up.rb - About 2 hrs to fix

                    Class TransFirstGateway has 24 methods (exceeds 20 allowed). Consider refactoring.
                    Open

                        class TransFirstGateway < Gateway
                          self.test_url = 'https://ws.cert.transfirst.com'
                          self.live_url = 'https://webservices.primerchants.com'
                    
                          self.supported_countries = ['US']
                    Severity: Minor
                    Found in lib/active_merchant/billing/gateways/trans_first.rb - About 2 hrs to fix

                      Class PaystationGateway has 24 methods (exceeds 20 allowed). Consider refactoring.
                      Open

                          class PaystationGateway < Gateway
                            self.live_url = self.test_url = 'https://www.paystation.co.nz/direct/paystation.dll'
                      
                            # an "error code" of "0" means "No error - transaction successful"
                            SUCCESSFUL_RESPONSE_CODE = '0'
                      Severity: Minor
                      Found in lib/active_merchant/billing/gateways/paystation.rb - About 2 hrs to fix

                        Class AleloGateway has 24 methods (exceeds 20 allowed). Consider refactoring.
                        Open

                            class AleloGateway < Gateway
                              class_attribute :prelive_url
                        
                              self.test_url = 'https://sandbox-api.alelo.com.br/alelo/sandbox/'
                              self.live_url = 'https://api.alelo.com.br/alelo/prd/'
                        Severity: Minor
                        Found in lib/active_merchant/billing/gateways/alelo.rb - About 2 hrs to fix

                          Class PayJunctionV2Gateway has 24 methods (exceeds 20 allowed). Consider refactoring.
                          Open

                              class PayJunctionV2Gateway < Gateway
                                self.display_name = 'PayJunction'
                                self.homepage_url = 'https://www.payjunction.com/'
                          
                                self.test_url = 'https://api.payjunctionlabs.com/transactions'
                          Severity: Minor
                          Found in lib/active_merchant/billing/gateways/pay_junction_v2.rb - About 2 hrs to fix

                            Method add_billing_address has a Cognitive Complexity of 19 (exceeds 5 allowed). Consider refactoring.
                            Open

                                  def add_billing_address(post, payment, options)
                                    post[:billing_address] = {}
                                    if address = options[:billing_address] || options[:address]
                                      first_name, last_name = split_names(address[:name])
                                      post[:billing_address][:first_name] = first_name if first_name
                            Severity: Minor
                            Found in lib/active_merchant/billing/gateways/forte.rb - About 2 hrs to fix

                            Cognitive Complexity

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

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

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

                            Further reading

                            Method add_3ds has a Cognitive Complexity of 19 (exceeds 5 allowed). Consider refactoring.
                            Open

                                  def add_3ds(post, options)
                                    if options[:three_d_secure] || options[:execute_threed]
                                      post[:'3ds'] = {}
                                      post[:'3ds'][:enabled] = true
                                      post[:success_url] = options[:callback_url] if options[:callback_url]
                            Severity: Minor
                            Found in lib/active_merchant/billing/gateways/checkout_v2.rb - About 2 hrs to fix

                            Cognitive Complexity

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

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

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

                            Further reading

                            Severity
                            Category
                            Status
                            Source
                            Language