예제 #1
0
파일: testfiles.py 프로젝트: tdda/tdda
def check(compare, values, filename, diff=False, actual_path=None):
    (code, errs) = compare.check_string_against_file(values, refloc(filename),
                                                     actual_path=actual_path,
                                                     create_temporaries=False)
    if not diff:
        errs = [e for e in errs if not e.startswith('    ' + diffcmd())]
        errs = [e for e in errs if not e.startswith('Compare with:')]
    return (code, errs)
예제 #2
0
파일: testfiles.py 프로젝트: robertn01/tdda
def check(compare, values, filename, diff=False, actual_path=None):
    (code, errs) = compare.check_string_against_file(values,
                                                     refloc(filename),
                                                     actual_path=actual_path)
    if not diff:
        errs = [e for e in errs if not e.startswith('    ' + diffcmd())]
        errs = [e for e in errs if not e.startswith('Compare with:')]
    return (code, errs)
예제 #3
0
 def test_multiple_files_fail(self):
     compare = FilesComparison()
     r = compare.check_files([refloc('empty.txt'),
                              refloc('single.txt'),
                              refloc('colours.txt')],
                             [refloc('single.txt'),
                              refloc('colours.txt'),
                              refloc('colours.txt')])
     diff1 = '%s %s %s' % (diffcmd(),
                           refloc('empty.txt'), refloc('single.txt'))
     diff2 = '%s %s %s' % (diffcmd(),
                           refloc('single.txt'), refloc('colours.txt'))
     err1 = ('Files have different numbers of lines, '
            'differences start at end of actual file')
     err2 = ('Files have different numbers of lines, '
            'differences start at line 1')
     self.assertEqual(r, (2, [err1, 'Compare with:\n    %s\n' % diff1,
                              err2, 'Compare with:\n    %s\n' % diff2]))
예제 #4
0
 def test_files_fail(self):
     compare = FilesComparison()
     r1 = compare.check_file(refloc('empty.txt'), refloc('single.txt'))
     r2 = compare.check_file(refloc('single.txt'), refloc('empty.txt'))
     r3 = compare.check_file(refloc('single.txt'),
                             refloc('colours.txt'))
     diff1 = '%s %s %s' % (diffcmd(),
                           refloc('empty.txt'), refloc('single.txt'))
     diff2 = '%s %s %s' % (diffcmd(),
                           refloc('single.txt'), refloc('empty.txt'))
     diff3 = '%s %s %s' % (diffcmd(),
                           refloc('single.txt'), refloc('colours.txt'))
     self.assertEqual(r1, (1, ['Files have different numbers of lines',
                               'Compare with:\n    %s\n' % diff1]))
     self.assertEqual(r2, (1, ['Files have different numbers of lines',
                               'Compare with:\n    %s\n' % diff2]))
     self.assertEqual(r3, (1, ['Files have different numbers of lines',
                               'Compare with:\n    %s\n' % diff3]))
예제 #5
0
 def test_multiple_files_fail(self):
     compare = FilesComparison()
     r = compare.check_files(
         [refloc('empty.txt'),
          refloc('single.txt'),
          refloc('colours.txt')], [
              refloc('single.txt'),
              refloc('colours.txt'),
              refloc('colours.txt')
          ])
     diff1 = '%s %s %s' % (diffcmd(), refloc('empty.txt'),
                           refloc('single.txt'))
     diff2 = '%s %s %s' % (diffcmd(), refloc('single.txt'),
                           refloc('colours.txt'))
     self.assertEqual(r, (2, [
         'Files have different numbers of lines',
         'Compare with:\n    %s\n' % diff1,
         'Files have different numbers of lines',
         'Compare with:\n    %s\n' % diff2
     ]))
예제 #6
0
 def test_files_fail(self):
     compare = FilesComparison()
     r1 = compare.check_file(refloc('empty.txt'), refloc('single.txt'))
     r2 = compare.check_file(refloc('single.txt'), refloc('empty.txt'))
     r3 = compare.check_file(refloc('single.txt'),
                             refloc('colours.txt'))
     diff1 = '%s %s %s' % (diffcmd(),
                           refloc('empty.txt'), refloc('single.txt'))
     diff2 = '%s %s %s' % (diffcmd(),
                           refloc('single.txt'), refloc('empty.txt'))
     diff3 = '%s %s %s' % (diffcmd(),
                           refloc('single.txt'), refloc('colours.txt'))
     err1 = ('Files have different numbers of lines, '
            'differences start at end of actual file')
     err2 = ('Files have different numbers of lines, '
            'differences start at end of reference file')
     err3 = ('Files have different numbers of lines, '
            'differences start at line 1')
     self.assertEqual(r1, (1, [err1, 'Compare with:\n    %s\n' % diff1]))
     self.assertEqual(r2, (1, [err2, 'Compare with:\n    %s\n' % diff2]))
     self.assertEqual(r3, (1, [err3, 'Compare with:\n    %s\n' % diff3]))
예제 #7
0
 def test_pandas_csv_fail(self):
     compare = PandasComparison()
     (code, errs) = compare.check_csv_file(refloc('single.txt'),
                                           refloc('colours.txt'))
     errs = [
         e for e in errs if not e.startswith('Compare with:')
         and not e.startswith('    ' + diffcmd())
     ]
     self.assertEqual(code, 1)
     self.assertEqual(errs, [
         'Column check failed.',
         'Missing columns: [%s]' % ', '.join([
             "'%s'" % s
             for s in ['Name', 'RGB', 'Hue', 'Saturation', 'Value']
         ]), 'Extra columns: [\'a single line\']', 'Length check failed.',
         'Found 0 records, expected 147'
     ])
예제 #8
0
 def test_strings_against_files_fail(self):
     compare = FilesComparison()
     r1 = check(compare, ['x'], 'empty.txt')
     r2 = check(compare, 'x', 'empty.txt')
     r3 = check(compare, ['', ''], 'empty.txt')
     r4 = check(compare, ['the wrong text\n'], 'single.txt')
     r5 = check(compare, ['the wrong text\n'], 'single.txt', diff=True,
                actual_path='wrong.txt')
     errs = ['Strings have different numbers of lines, '
                 'differences start at end of reference file',
             'Expected file %s' % refloc('empty.txt')]
     self.assertEqual(r1, (1, errs))
     self.assertEqual(r2, (1, errs))
     self.assertEqual(r3, (1, errs))
     self.assertEqual(r4, (1,
                           ['1 line is different, starting at line 1',
                            'Expected file %s' % refloc('single.txt')]))
     diff = '%s %s %s' % (diffcmd(), 'wrong.txt', refloc('single.txt'))
     self.assertEqual(r5, (1, ['1 line is different, starting at line 1',
                               'Compare with:\n    %s\n' % diff]))