def test_copy_debug_copies_binaries(self): """ Test that CopyDebug copies binaries as well on Windows. """ test_file = os.path.join(self.test_dir, 'foo.dll') write_dll(test_file) code_file = 'foo.dll' code_id = 'abc123' self.stdouts.append( mock_dump_syms('X' * 33, 'foo.pdb', ['INFO CODE_ID %s %s' % (code_id, code_file)])) def mock_compress(args, **kwargs): filename = args[-1] open(filename, 'w').write('stuff') return 0 self.mock_call.side_effect = mock_compress d = symbolstore.Dumper_Win32(dump_syms='dump_syms', symbol_path=self.symbol_dir, copy_debug=True) d.Process(test_file) self.assertTrue( os.path.isfile( os.path.join(self.symbol_dir, code_file, code_id, code_file[:-1] + '_')))
def test_copy_debug_copies_binaries(self): """ Test that CopyDebug copies binaries as well on Windows. """ test_file = os.path.join(self.test_dir, "foo.dll") write_dll(test_file) code_file = "foo.dll" code_id = "abc123" self.stdouts.append( mock_dump_syms("X" * 33, "foo.pdb", ["INFO CODE_ID %s %s" % (code_id, code_file)])) def mock_compress(args, **kwargs): filename = args[-1] open(filename, "w").write("stuff") return 0 self.mock_call.side_effect = mock_compress d = symbolstore.Dumper_Win32(dump_syms="dump_syms", symbol_path=self.symbol_dir, copy_debug=True) d.Process(test_file) self.assertTrue( os.path.isfile( os.path.join(self.symbol_dir, code_file, code_id, code_file)))
def test_fix_filename_case(self): # self.test_dir is going to be 8.3 paths... junk = os.path.join(self.test_dir, 'x') with open(junk, 'wb') as o: o.write('x') d = symbolstore.Dumper_Win32(dump_syms='dump_syms', symbol_path=self.test_dir) fixed_dir = os.path.dirname(d.FixFilenameCase(junk)) files = [ 'one\\two.c', 'three\\Four.d', 'Five\\Six.e', 'seven\\Eight\\nine.F', ] for rel_path in files: full_path = os.path.normpath( os.path.join(self.test_dir, rel_path)) self.make_dirs(full_path) with open(full_path, 'wb') as o: o.write('x') fixed_path = d.FixFilenameCase(full_path.lower()) fixed_path = os.path.relpath(fixed_path, fixed_dir) self.assertEqual(rel_path, fixed_path)