Example #1
0
  def test_build_report_no_such_file(self):
    no_such_file_instance = FileSet('not_here', 'jack')

    assert no_such_file_instance.build_report() == ('Processing FILE\n'
      'Base: not_here\n'
      'Type: jack\n'
      'Files: 0\n')
Example #2
0
    def build_main_output(source, level):
        instance = FileSet(source, 'jack')
        include_size = level == 1 or level == 3
        include_lines = level == 2 or level == 3

        size_header = 'Size (Bytes)' if include_size else ''
        lines_header = 'Lines' if include_lines else ''

        def add_file_info(file):
            file_path = source + '/' + file
            size_info = path.getsize(file_path) if include_size else ''
            lines_info = len(open(file_path,
                                  'rU').readlines()) if include_lines else ''

            return '{:20}{:>20}{:>20}'.format(file, size_info, lines_info)

        file_info = map(add_file_info, instance.file_set)

        lines = [
            '=' * 60, '{:20}{:>20}{:>20}'.format('File Name', size_header,
                                                 lines_header), '-' * 60,
            '\n'.join(file_info), '-' * 60,
            'FILES: ' + str(len(instance.file_set)), '=' * 60
        ]

        return '\n'.join(lines)
Example #3
0
    def main(self):
        self.header = Header('PY03')

        for ext in ['hdl', 'asm', 'vm', 'jack', 'py']:
            ext_file_set = FileSet('test', ext)

            while ext_file_set.hasMoreFiles():
                filename = ext_file_set.nextFile()
                basename = ext_file_set.baseName()

                self.create_bak_file(basename, filename)
                self.add_header(filename)
Example #4
0
  def test_build_report_no_such_file(self):
    no_such_file_instance = FileSet('12', 'jack')

    print no_such_file_instance.build_report()
    assert no_such_file_instance.build_report() == ('Processing DIRECTORY\n'
      'Base: 12\n'
      'Type: jack\n'
      'Files: 8\n'
      ' Array.jack\n'
      ' Keyboard.jack\n'
      ' Math.jack\n'
      ' Memory.jack\n'
      ' Output.jack\n'
      ' Screen.jack\n'
      ' String.jack\n'
      ' Sys.jack\n')
Example #5
0
  def test_build_file_set_for_directory(self):
    file_set = FileSet('12', 'jack')

    expected = [
      'Array.jack',
      'Keyboard.jack',
      'Math.jack',
      'Memory.jack',
      'Output.jack',
      'Screen.jack',
      'String.jack',
      'Sys.jack'
    ]

    expected.sort()

    assert file_set.file_set == expected
Example #6
0
 def test_build_file_set_for_missing_directory(self):
   file_set = FileSet('missing', 'py')
   assert file_set.file_set == []
Example #7
0
 def test_build_file_set_for_file_with_mismatched_extension(self):
   file_set = FileSet('util.py', 'different')
   assert file_set.file_set == []
Example #8
0
 def test_build_file_set_for_missing_file(self):
   file_set = FileSet('missing.py', 'py')
   assert file_set.file_set == []
Example #9
0
 def test_build_file_set_for_file(self):
   file_set = FileSet('util.py', 'py')
   assert file_set.file_set == ['util.py']
Example #10
0
 def setUp(self):
   self.instance = FileSet('12', 'jack')
Example #11
0
 def test_hasMoreFiles_when_empty(self):
   self.assertFalse(FileSet('foo', 'bar').hasMoreFiles())