def test_rule_005(self): oRule = architecture.rule_005() self.assertTrue(oRule) self.assertEqual(oRule.name, 'architecture') self.assertEqual(oRule.identifier, '005') lExpected = [] dViolation = utils.add_violation(9, ) dViolation['of_line'] = 10 lExpected.append(dViolation) dViolation = utils.add_violation(16) dViolation['of_line'] = 18 lExpected.append(dViolation) dViolation = utils.add_violation(25) dViolation['of_line'] = 26 lExpected.append(dViolation) dViolation = utils.add_violation(34) dViolation['of_line'] = 38 lExpected.append(dViolation) oRule.analyze(self.oFile) self.assertEqual(oRule.violations, lExpected)
def test_012(self): oRule = whitespace.rule_012() self.assertTrue(oRule) self.assertEqual(oRule.name, 'whitespace') self.assertEqual(oRule.identifier, '012') self.assertEqual(oRule.phase, 3) lExpected = [] dViolation = utils.add_violation(2) dViolation['remove'] = 3 lExpected.append(dViolation) dViolation = utils.add_violation(10) dViolation['remove'] = 1 lExpected.append(dViolation) # dExpected = [2,10] # dExpected = [{'lineNumber': 2, 'remove': 3}, # {'lineNumber': 10, 'remove': 1}] self.oFile.lines.append(line.line(' a <= b;')) #1 self.oFile.lines.append(line.blank_line()) #2 self.oFile.lines.append(line.blank_line()) #3 self.oFile.lines.append(line.blank_line()) #4 self.oFile.lines.append(line.blank_line()) #5 self.oFile.lines.append(line.line(' c <= d;')) #6 self.oFile.lines.append(line.line(' a <= b;')) #7 self.oFile.lines.append(line.blank_line()) #8 self.oFile.lines.append(line.line(' c <= d;')) #9 self.oFile.lines.append(line.blank_line()) #10 self.oFile.lines.append(line.blank_line()) #11 self.oFile.lines.append(line.line(' a <= b;')) #12 oRule.analyze(self.oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_010(self): oRule = function.rule_010() self.assertTrue(oRule) self.assertEqual(oRule.name, 'function') self.assertEqual(oRule.identifier, '010') lExpected = [] dViolation = utils.add_violation(9) dViolation['name'] = 'Func_1' lExpected.append(dViolation) dViolation = utils.add_violation(14) dViolation['name'] = 'FUNC_1' lExpected.append(dViolation) dViolation = utils.add_violation(15) dViolation['name'] = 'FUNC_1' lExpected.append(dViolation) dViolation = utils.add_violation(15) dViolation['name'] = 'funC_2' lExpected.append(dViolation) oRule.analyze(self.oFile) self.assertEqual(oRule.violations, lExpected) self.assertEqual(oRule._get_solution(9), 'Inconsistent capitalization of word: Func_1') self.assertEqual(oRule._get_solution(14), 'Inconsistent capitalization of word: FUNC_1') self.assertEqual(oRule._get_solution(15), 'Inconsistent capitalization of words: FUNC_1, funC_2')
def test_rule_013(self): oRule = constant.rule_013() self.assertTrue(oRule) self.assertEqual(oRule.name, 'constant') self.assertEqual(oRule.identifier, '013') lExpected = [] dViolation = utils.add_violation(5) dViolation['constant'] = 'C_SIZE' lExpected.append(dViolation) dViolation = utils.add_violation(12) dViolation['constant'] = 'C_ONES' lExpected.append(dViolation) dViolation = utils.add_violation(17) dViolation['constant'] = 'C_ones' lExpected.append(dViolation) dViolation = utils.add_violation(17) dViolation['constant'] = 'c_Zeros' lExpected.append(dViolation) dViolation = utils.add_violation(20) dViolation['constant'] = 'c_Zeros' lExpected.append(dViolation) oRule.analyze(self.oFile) self.assertEqual(oRule.violations, lExpected) self.assertEqual(oRule._get_solution(5), 'Inconsistent capitalization of word: C_SIZE') self.assertEqual(oRule._get_solution(12), 'Inconsistent capitalization of word: C_ONES') self.assertEqual(oRule._get_solution(17), 'Inconsistent capitalization of words: C_ones, c_Zeros') self.assertEqual(oRule._get_solution(20), 'Inconsistent capitalization of word: c_Zeros')
def test_rule_029_w_blank_group_false(self): oRule = architecture.rule_029() oRule.blank_line_ends_group = False lExpected = [] dViolation = utils.add_violation(6) dViolation['columnAdjust'] = 2 dViolation['targetColumn'] = 9 lExpected.append(dViolation) dViolation = utils.add_violation(8) dViolation['columnAdjust'] = 3 dViolation['targetColumn'] = 10 lExpected.append(dViolation) dViolation = utils.add_violation(11) dViolation['columnAdjust'] = 1 dViolation['targetColumn'] = 12 lExpected.append(dViolation) dViolation = utils.add_violation(12) dViolation['columnAdjust'] = 1 dViolation['targetColumn'] = 12 lExpected.append(dViolation) oRule.analyze(self.oFileConfig) self.assertEqual(oRule.violations, lExpected)
def test_rule_012(self): oRule = signal.rule_012() self.assertTrue(oRule) self.assertEqual(oRule.name, 'signal') self.assertEqual(oRule.identifier, '012') lExpected = [] dViolation = utils.add_violation(5) dViolation['comma'] = 16 dViolation['max'] = 23 dViolation['signal'] = 18 lExpected.append(dViolation) dViolation = utils.add_violation(6) dViolation['comma'] = 17 dViolation['max'] = 23 dViolation['signal'] = 19 lExpected.append(dViolation) dViolation = utils.add_violation(7) dViolation['comma'] = 18 dViolation['max'] = 23 dViolation['signal'] = 20 lExpected.append(dViolation) dViolation = utils.add_violation(8) dViolation['comma'] = 19 dViolation['max'] = 23 dViolation['signal'] = 21 lExpected.append(dViolation) oRule.analyze(self.oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_029_w_comment_group_false(self): oRule = architecture.rule_029() oRule.comment_line_ends_group = False lExpected = [] dViolation = utils.add_violation(5) dViolation['columnAdjust'] = 2 dViolation['targetColumn'] = 11 lExpected.append(dViolation) dViolation = utils.add_violation(6) dViolation['columnAdjust'] = 4 dViolation['targetColumn'] = 11 lExpected.append(dViolation) dViolation = utils.add_violation(8) dViolation['columnAdjust'] = 4 dViolation['targetColumn'] = 11 lExpected.append(dViolation) dViolation = utils.add_violation(9) dViolation['columnAdjust'] = 1 dViolation['targetColumn'] = 11 lExpected.append(dViolation) oRule.analyze(self.oFileConfig) self.assertEqual(oRule.violations, lExpected)
def test_rule_005(self): oRule = concurrent.rule_005() self.assertTrue(oRule) self.assertEqual(oRule.name, 'concurrent') self.assertEqual(oRule.identifier, '005') lExpected = [] dViolation = utils.add_violation(32) dViolation['label'] = 'label' lExpected.append(dViolation) dViolation = utils.add_violation(33) dViolation['label'] = 'label' lExpected.append(dViolation) dViolation = utils.add_violation(34) dViolation['label'] = 'label' lExpected.append(dViolation) dViolation = utils.add_violation(35) dViolation['label'] = 'label' lExpected.append(dViolation) oRule.analyze(oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_019(self): oRule = port.rule_019() self.assertTrue(oRule) self.assertEqual(oRule.name, 'port') self.assertEqual(oRule.identifier, '019') lExpected = [] dViolation = utils.add_violation(40) dViolation['words_to_fix'] = {'IN'} lExpected.append(dViolation) dViolation = utils.add_violation(43) dViolation['words_to_fix'] = {'iN'} lExpected.append(dViolation) dViolation = utils.add_violation(44) dViolation['words_to_fix'] = {'oUt'} lExpected.append(dViolation) dViolation = utils.add_violation(45) dViolation['words_to_fix'] = {'inOut'} lExpected.append(dViolation) oRule.analyze(oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_016(self): oRule = generic.rule_016() self.assertTrue(oRule) self.assertEqual(oRule.name, 'generic') self.assertEqual(oRule.identifier, '016') dExpected = [utils.add_violation(21)] oRule.analyze(oFile) self.assertEqual(oRule.violations, dExpected) oRule.violations = [] dExpected = [utils.add_violation(5)] oRule.analyze(oFileMultiple) self.assertEqual(oRule.violations, dExpected)
def test_rule_011(self): oRule = variable.rule_011() self.assertTrue(oRule) self.assertEqual(oRule.name, 'variable') self.assertEqual(oRule.identifier, '011') lExpected = [] dViolation = utils.add_violation(16) dViolation['variable'] = 'Var1' lExpected.append(dViolation) dViolation = utils.add_violation(18) dViolation['variable'] = 'VAR2' lExpected.append(dViolation) dViolation = utils.add_violation(19) dViolation['variable'] = 'vaR3' lExpected.append(dViolation) dViolation = utils.add_violation(21) dViolation['variable'] = 'VAR4' lExpected.append(dViolation) dViolation = utils.add_violation(24) dViolation['variable'] = 'vaR1' lExpected.append(dViolation) dViolation = utils.add_violation(24) dViolation['variable'] = 'VAR2' lExpected.append(dViolation) dViolation = utils.add_violation(24) dViolation['variable'] = 'Var3' lExpected.append(dViolation) dViolation = utils.add_violation(24) dViolation['variable'] = 'vAr4' lExpected.append(dViolation) # # # dExpected = [{'lineNumber': 16, 'variable': 'Var1'}, # {'lineNumber': 18, 'variable': 'VAR2'}, # {'lineNumber': 19, 'variable': 'vaR3'}, # {'lineNumber': 21, 'variable': 'VAR4'}, # {'lineNumber': 24, 'variable': 'vaR1'}, # {'lineNumber': 24, 'variable': 'VAR2'}, # {'lineNumber': 24, 'variable': 'Var3'}, # {'lineNumber': 24, 'variable': 'vAr4'}] oRule.analyze(self.oFile) self.assertEqual(oRule.violations, lExpected) self.assertEqual(oRule._get_solution(16), 'Inconsistent capitalization of word: Var1') self.assertEqual(oRule._get_solution(18), 'Inconsistent capitalization of word: VAR2') self.assertEqual(oRule._get_solution(19), 'Inconsistent capitalization of word: vaR3') self.assertEqual(oRule._get_solution(21), 'Inconsistent capitalization of word: VAR4') self.assertEqual( oRule._get_solution(24), 'Inconsistent capitalization of words: vaR1, VAR2, Var3, vAr4')
def test_rule_015_consecutive_1(self): oRule = signal.rule_015() oRule.consecutive = 1 self.assertTrue(oRule) self.assertEqual(oRule.name, 'signal') self.assertEqual(oRule.identifier, '015') lExpected = [] dViolation = utils.add_violation(5) dViolation['endLine'] = 6 dViolation['line'] = ' signal sig1, sig2, sig3, sig4, sig5, sig6 : std_logic;' lExpected.append(dViolation) dViolation = utils.add_violation(8) dViolation['endLine'] = 13 dViolation['line'] = ' signal siga, sigb, sigc, sigd, sige, sigf : std_logic; -- This is a comment' lExpected.append(dViolation) dViolation = utils.add_violation(40) dViolation['endLine'] = 40 dViolation['line'] = ' signal sig1, sig2 : std_logic;' lExpected.append(dViolation) dViolation = utils.add_violation(42) dViolation['endLine'] = 43 dViolation['line'] = ' signal sig1, sig2 : std_logic ;' lExpected.append(dViolation) dViolation = utils.add_violation(45) dViolation['endLine'] = 47 dViolation['line'] = ' signal sig1, sig2 : std_logic ;' lExpected.append(dViolation) dViolation = utils.add_violation(49) dViolation['endLine'] = 52 dViolation['line'] = ' signal sig1, sig2 : std_logic ;' lExpected.append(dViolation) dViolation = utils.add_violation(54) dViolation['endLine'] = 58 dViolation['line'] = ' signal sig1, sig2 : std_logic ;' lExpected.append(dViolation) dViolation = utils.add_violation(60) dViolation['endLine'] = 65 dViolation['line'] = ' signal sig1 , sig2 : std_logic ;' lExpected.append(dViolation) dViolation = utils.add_violation(67) dViolation['endLine'] = 73 dViolation['line'] = ' signal sig1 , sig2 : std_logic ;' lExpected.append(dViolation) oRule.analyze(self.oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_007_w_allow_single_line_option_enabled(self): oRule = concurrent.rule_007() oRule.allow_single_line = True lExpected = [] dViolation = utils.add_violation(16) dViolation['slice_index'] = [43, 76] lExpected.append(dViolation) dViolation = utils.add_violation(17) dViolation['slice_index'] = [43, 76] lExpected.append(dViolation) oRule.analyze(self.oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_018(self): oRule = process.rule_018() self.assertTrue(oRule) self.assertEqual(oRule.name, 'process') self.assertEqual(oRule.identifier, '018') oRule.analyze(self.oFile) lExpected = [] dViolation = utils.add_violation(14) dViolation['processLabel'] = 'PROC_LABEL2' lExpected.append(dViolation) dViolation = utils.add_violation(19) lExpected.append(dViolation) self.assertEqual(oRule.violations, lExpected)
def test_rule_007(self): oRule = concurrent.rule_007() self.assertTrue(oRule) self.assertEqual(oRule.name, 'concurrent') self.assertEqual(oRule.identifier, '007') lExpected = [] dViolation = utils.add_violation(44) dViolation['slice_index'] = [26] lExpected.append(dViolation) dViolation = utils.add_violation(48) dViolation['slice_index'] = [26] lExpected.append(dViolation) oRule.analyze(oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_025(self): oRule = architecture.rule_025() self.assertTrue(oRule) self.assertEqual(oRule.name, 'architecture') self.assertEqual(oRule.identifier, '025') self.assertFalse(oRule.fixable) dExpected = utils.add_violation_list([3, 10, 17, 24]) oRule.analyze(oFileName) self.assertEqual(oRule.violations, dExpected) oRule.violations = [] oRule.names = [] oRule.names.append('rtl') dExpected = utils.add_violation_list([10, 17, 24]) oRule.analyze(oFileName) self.assertEqual(oRule.violations, dExpected) self.assertEqual(oRule._get_solution(100), 'Architecture name must be from this list: rtl') oRule.violations = [] oRule.names = ['ENTITY1'] dExpected = utils.add_violation_list([3, 17, 24]) oRule.analyze(oFileName) self.assertEqual(oRule.violations, dExpected) self.assertEqual(oRule._get_solution(100), 'Architecture name must be from this list: entity1') oRule.violations = [] oRule.names = ['BLUE'] dExpected = utils.add_violation_list([3, 10, 24]) oRule.analyze(oFileName) self.assertEqual(oRule.violations, dExpected) self.assertEqual(oRule._get_solution(100), 'Architecture name must be from this list: blue') oRule.violations = [] oRule.names = ['CDC'] dExpected = utils.add_violation_list([3, 10, 17]) oRule.analyze(oFileName) self.assertEqual(oRule.violations, dExpected) self.assertEqual(oRule._get_solution(100), 'Architecture name must be from this list: cdc') oRule.violations = [] oRule.names = ['rtl', 'CDC'] dExpected = utils.add_violation_list([10, 17]) oRule.analyze(oFileName) self.assertEqual(oRule.violations, dExpected) self.assertEqual(oRule._get_solution(100), 'Architecture name must be from this list: rtl,cdc') oRule.violations = [] oRule.names = ['rtl', 'cdc', 'blue'] dExpected = [utils.add_violation(10)] oRule.analyze(oFileName) self.assertEqual(oRule.violations, dExpected) self.assertEqual(oRule._get_solution(100), 'Architecture name must be from this list: rtl,cdc,blue') oRule.violations = [] oRule.names = ['rtl', 'cdc', 'blue', 'entity1'] dExpected = [] oRule.analyze(oFileName) self.assertEqual(oRule.violations, dExpected) self.assertEqual(oRule._get_solution(100), 'Architecture name must be from this list: rtl,cdc,blue,entity1')
def test_rule_024(self): oRule = architecture.rule_024() self.assertTrue(oRule) self.assertEqual(oRule.name, 'architecture') self.assertEqual(oRule.identifier, '024') lExpected = [] dViolation = utils.add_violation(13) dViolation['label'] = 'ARCH' lExpected.append(dViolation) dViolation = utils.add_violation(77) dViolation['label'] = 'ARCH' lExpected.append(dViolation) oRule.analyze(oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_008(self): oRule = process.rule_008() self.assertTrue(oRule) self.assertEqual(oRule.name, 'process') self.assertEqual(oRule.identifier, '008') lExpected = [] dViolation = utils.add_violation(15) dViolation['words_to_fix'] = {'eNd'} lExpected.append(dViolation) dViolation = utils.add_violation(36) dViolation['words_to_fix'] = {'End'} lExpected.append(dViolation) oRule.analyze(oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_004(self): oRule = for_loop.rule_004() self.assertTrue(oRule) self.assertEqual(oRule.name, 'for_loop') self.assertEqual(oRule.identifier, '004') lExpected = [] dViolation = utils.add_violation(40) dViolation['label'] = 'Label' lExpected.append(dViolation) dViolation = utils.add_violation(48) dViolation['label'] = 'LABEL' lExpected.append(dViolation) oRule.analyze(oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_010(self): oRule = signal.rule_010() self.assertTrue(oRule) self.assertEqual(oRule.name, 'signal') self.assertEqual(oRule.identifier, '010') lExpected = [] dViolation = utils.add_violation(12) dViolation['words_to_fix'] = {'STD_LOGIC_VECTOR'} lExpected.append(dViolation) dViolation = utils.add_violation(16) dViolation['words_to_fix'] = {'STD_LOGIC_VECTOR'} lExpected.append(dViolation) oRule.analyze(oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_004(self): oRule = process.rule_004() self.assertTrue(oRule) self.assertEqual(oRule.name, 'process') self.assertEqual(oRule.identifier, '004') lExpected = [] dViolation = utils.add_violation(20) dViolation['words_to_fix'] = {'begIN'} lExpected.append(dViolation) dViolation = utils.add_violation(28) dViolation['words_to_fix'] = {'beGIn'} lExpected.append(dViolation) oRule.analyze(oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_009(self): oRule = process.rule_009() self.assertTrue(oRule) self.assertEqual(oRule.name, 'process') self.assertEqual(oRule.identifier, '009') lExpected = [] dViolation = utils.add_violation(22) dViolation['words_to_fix'] = {'proCEss'} lExpected.append(dViolation) dViolation = utils.add_violation(42) dViolation['words_to_fix'] = {'Process'} lExpected.append(dViolation) oRule.analyze(oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_007(self): oRule = constant.rule_007() self.assertTrue(oRule) self.assertEqual(oRule.name, 'constant') self.assertEqual(oRule.identifier, '007') lExpected = [utils.add_violation(10)] oRule.analyze(oFile) self.assertEqual(oRule.violations, lExpected)
def test_rule_002(self): oRule = procedure.rule_002() self.assertTrue(oRule) self.assertEqual(oRule.name, 'procedure') self.assertEqual(oRule.identifier, '002') dExpected = [utils.add_violation(41)] oRule.analyze(oFile) self.assertEqual(oRule.violations, dExpected)
def test_rule_026(self): oRule = process.rule_026() self.assertTrue(oRule) self.assertEqual(oRule.name, 'process') self.assertEqual(oRule.identifier, '026') dExpected = [utils.add_violation(75)] oRule.analyze(oFile) self.assertEqual(oRule.violations, dExpected)
def test_rule_002(self): oRule = for_loop.rule_002() self.assertTrue(oRule) self.assertEqual(oRule.name, 'for_loop') self.assertEqual(oRule.identifier, '002') dExpected = [utils.add_violation(23)] oRule.analyze(oFile) self.assertEqual(oRule.violations, dExpected)
def test_rule_007(self): oRule = package.rule_007() self.assertTrue(oRule) self.assertEqual(oRule.name, 'package') self.assertEqual(oRule.identifier, '007') dExpected = [utils.add_violation(58)] oRule.analyze(oFile) self.assertEqual(oRule.violations, dExpected)
def test_rule_022(self): oRule = architecture.rule_022() self.assertTrue(oRule) self.assertEqual(oRule.name, 'architecture') self.assertEqual(oRule.identifier, '022') dExpected = [utils.add_violation(31)] oRule.analyze(oFile) self.assertEqual(oRule.violations, dExpected)
def test_rule_010(self): oRule = type_definition.rule_010() self.assertTrue(oRule) self.assertEqual(oRule.name, 'type') self.assertEqual(oRule.identifier, '010') dExpected = [utils.add_violation(43)] oRule.analyze(oFile) self.assertEqual(oRule.violations, dExpected)
def test_rule_031(self): oRule = if_statement.rule_031() self.assertTrue(oRule) self.assertEqual(oRule.name, 'if') self.assertEqual(oRule.identifier, '031') dExpected = [utils.add_violation(23)] oRule.analyze(self.oFile) self.assertEqual(oRule.violations, dExpected)