floere/phony

View on GitHub

Showing 17 of 37 total issues

File germany.rb has 4077 lines of code (exceeds 250 allowed). Consider refactoring.
Open

ndcs2 = [
  '10',  # Call-By-Call
  '11',  # formerly Value Added Services
  '13',  # Voting and Lottery Numbers
  '30',  # Berlin
Severity: Major
Found in lib/phony/countries/germany.rb - About 1 wk to fix

    File countries.rb has 746 lines of code (exceeds 250 allowed). Consider refactoring.
    Open

    Phony.define do
      # Reserved.
      #
      reserved '0'
    
    
    Severity: Major
    Found in lib/phony/countries.rb - About 1 day to fix

      File united_kingdom.rb has 699 lines of code (exceeds 250 allowed). Consider refactoring.
      Open

      mobile_ndc = [
        # Mobile [4+6].
        #
        # NOTE We're explicitly denoting this as dynamic strings cannot be frozen.
        '7100', '7101', '7102', '7103', '7104', '7105', '7106', '7107', '7108', '7109', '7110', '7111', '7112', '7113', '7114', '7115', '7116', '7117', '7118', '7119', '7120', '7121', '7122', '7123', '7124', '7125', '7126', '7127', '7128', '7129', '7130', '7131', '7132', '7133', '7134', '7135', '7136', '7137', '7138', '7139', '7140', '7141', '7142', '7143', '7144', '7145', '7146', '7147', '7148', '7149', '7150', '7151', '7152', '7153', '7154', '7155', '7156', '7157', '7158', '7159', '7160', '7161', '7162', '7163', '7164', '7165', '7166', '7167', '7168', '7169', '7170', '7171', '7172', '7173', '7174', '7175', '7176', '7177', '7178', '7179', '7180', '7181', '7182', '7183', '7184', '7185', '7186', '7187', '7188', '7189', '7190', '7191', '7192', '7193', '7194', '7195', '7196', '7197', '7198', '7199', '7200', '7201', '7202', '7203', '7204', '7205', '7206', '7207', '7208', '7209', '7210', '7211', '7212', '7213', '7214', '7215', '7216', '7217', '7218', '7219', '7220', '7221', '7222', '7223', '7224', '7225', '7226', '7227', '7228', '7229', '7230', '7231', '7232', '7233', '7234', '7235', '7236', '7237', '7238', '7239', '7240', '7241', '7242', '7243', '7244', '7245', '7246', '7247', '7248', '7249', '7250', '7251', '7252', '7253', '7254', '7255', '7256', '7257', '7258', '7259', '7260', '7261', '7262', '7263', '7264', '7265', '7266', '7267', '7268', '7269', '7270', '7271', '7272', '7273', '7274', '7275', '7276', '7277', '7278', '7279', '7280', '7281', '7282', '7283', '7284', '7285', '7286', '7287', '7288', '7289', '7290', '7291', '7292', '7293', '7294', '7295', '7296', '7297', '7298', '7299', '7300', '7301', '7302', '7303', '7304', '7305', '7306', '7307', '7308', '7309', '7310', '7311', '7312', '7313', '7314', '7315', '7316', '7317', '7318', '7319', '7320', '7321', '7322', '7323', '7324', '7325', '7326', '7327', '7328', '7329', '7330', '7331', '7332', '7333', '7334', '7335', '7336', '7337', '7338', '7339', '7340', '7341', '7342', '7343', '7344', '7345', '7346', '7347', '7348', '7349', '7350', '7351', '7352', '7353', '7354', '7355', '7356', '7357', '7358', '7359', '7360', '7361', '7362', '7363', '7364', '7365', '7366', '7367', '7368', '7369', '7370', '7371', '7372', '7373', '7374', '7375', '7376', '7377', '7378', '7379', '7380', '7381', '7382', '7383', '7384', '7385', '7386', '7387', '7388', '7389', '7390', '7391', '7392', '7393', '7394', '7395', '7396', '7397', '7398', '7399', '7400', '7401', '7402', '7403', '7404', '7405', '7406', '7407', '7408', '7409', '7410', '7411', '7412', '7413', '7414', '7415', '7416', '7417', '7418', '7419', '7420', '7421', '7422', '7423', '7424', '7425', '7426', '7427', '7428', '7429', '7430', '7431', '7432', '7433', '7434', '7435', '7436', '7437', '7438', '7439', '7440', '7441', '7442', '7443', '7444', '7445', '7446', '7447', '7448', '7449', '7450', '7451', '7452', '7453', '7454', '7455', '7456', '7457', '7458', '7459', '7460', '7461', '7462', '7463', '7464', '7465', '7466', '7467', '7468', '7469', '7470', '7471', '7472', '7473', '7474', '7475', '7476', '7477', '7478', '7479', '7480', '7481', '7482', '7483', '7484', '7485', '7486', '7487', '7488', '7489', '7490', '7491', '7492', '7493', '7494', '7495', '7496', '7497', '7498', '7499', '7500', '7501', '7502', '7503', '7504', '7505', '7506', '7507', '7508', '7509', '7510', '7511', '7512', '7513', '7514', '7515', '7516', '7517', '7518', '7519', '7520', '7521', '7522', '7523', '7524', '7525', '7526', '7527', '7528', '7529', '7530', '7531', '7532', '7533', '7534', '7535', '7536', '7537', '7538', '7539', '7540', '7541', '7542', '7543', '7544', '7545', '7546', '7547', '7548', '7549', '7550', '7551', '7552', '7553', '7554', '7555', '7556', '7557', '7558', '7559', '7560', '7561', '7562', '7563', '7564', '7565', '7566', '7567', '7568', '7569', '7570', '7571', '7572', '7573', '7574', '7575', '7576', '7577', '7578', '7579', '7580', '7581', '7582', '7583', '7584', '7585', '7586', '7587', '7588', '7589', '7590', '7591', '7592', '7593', '7594', '7595', '7596', '7597', '7598', '7599',
      Severity: Major
      Found in lib/phony/countries/united_kingdom.rb - About 1 day to fix

        File ukraine.rb has 619 lines of code (exceeds 250 allowed). Consider refactoring.
        Open

        ndcs_with_7_subscriber_numbers = %w[
          32
          33
          34
          35
        Severity: Major
        Found in lib/phony/countries/ukraine.rb - About 1 day to fix

          File japan.rb has 458 lines of code (exceeds 250 allowed). Consider refactoring.
          Open

          ndcs_with_8_subscriber_numbers = %w[3 6]
          
          ndcs_with_7_subscriber_numbers = %w[
            11
            15
          Severity: Minor
          Found in lib/phony/countries/japan.rb - About 7 hrs to fix

            File argentina.rb has 325 lines of code (exceeds 250 allowed). Consider refactoring.
            Open

            area_codes_2digits = [
              '11'
            ]
            
            area_codes_3digits = %w[
            Severity: Minor
            Found in lib/phony/countries/argentina.rb - About 3 hrs to fix

              File italy.rb has 286 lines of code (exceeds 250 allowed). Consider refactoring.
              Open

              ndcs_1digit = [
                '02', # Milan
                '06' # Rome (including State of Vatican City) and Aprilia
              ]
              
              
              Severity: Minor
              Found in lib/phony/countries/italy.rb - About 2 hrs to fix

                Method format_cc_ndc has a Cognitive Complexity of 14 (exceeds 5 allowed). Consider refactoring.
                Open

                    def format_cc_ndc(trunk, ndc, local, type, space, parentheses, use_trunk)
                      # NOTE: We mark NDCs that are of type "none" with false (nil trips plausible?). This would result in false being printed.
                      #       Therefore we set NDC to nil when formatting.
                      ndc = nil if ndc == false
                      case type
                Severity: Minor
                Found in lib/phony/country.rb - 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

                Method plausible? has a Cognitive Complexity of 13 (exceeds 5 allowed). Consider refactoring.
                Open

                    def plausible?(number, hints = {})
                      normalized = clean number
                
                      # False if it fails the basic check.
                      #
                Severity: Minor
                Found in lib/phony/country_codes.rb - 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

                Method format_cc_ndc has 27 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                    def format_cc_ndc(trunk, ndc, local, type, space, parentheses, use_trunk)
                      # NOTE: We mark NDCs that are of type "none" with false (nil trips plausible?). This would result in false being printed.
                      #       Therefore we set NDC to nil when formatting.
                      ndc = nil if ndc == false
                      case type
                Severity: Minor
                Found in lib/phony/country.rb - About 1 hr to fix

                  Method format_cc_ndc has 7 arguments (exceeds 4 allowed). Consider refactoring.
                  Open

                      def format_cc_ndc(trunk, ndc, local, type, space, parentheses, use_trunk)
                  Severity: Major
                  Found in lib/phony/country.rb - About 50 mins to fix

                    Method format_with_ndc has 5 arguments (exceeds 4 allowed). Consider refactoring.
                    Open

                        def format_with_ndc(format, cc, ndc, local, space)
                    Severity: Minor
                    Found in lib/phony/country.rb - About 35 mins to fix

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

                          def self.load *options
                            # Extract options.
                            last = options.last
                            only, except = if last.respond_to?(:to_hash)
                                             # We have the explicit form.
                      Severity: Minor
                      Found in lib/phony/config.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 plausible? has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
                      Open

                          def plausible?(rest, hints = {})
                            local, _, ndc, *rest = internal_split rest
                      
                            # Element based checking.
                            #
                      Severity: Minor
                      Found in lib/phony/country.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

                      Avoid too many return statements within this method.
                      Open

                            return false unless local
                      Severity: Major
                      Found in lib/phony/country.rb - About 30 mins to fix

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

                            def load?(cc)
                              return false if has_excluded? && excluded_ccs.include?(cc)
                        
                              if has_included?
                                # We have to check the included_ccs, otherwise false.
                        Severity: Minor
                        Found in lib/phony/config.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 split has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                        Open

                              def split(national_number)
                                fallback_number = national_number.dup
                        
                                # Extract a starting point.
                                #
                        Severity: Minor
                        Found in lib/phony/national_splitters/variable.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