def dataunittest_files(): from cellrename_data import CellRenameData names = unittestsetup() def containsName(data, name): return any((item.filename == name for item in data.data)) os.mkdir(os.path.join(dir, 'directory1')) os.mkdir(os.path.join(dir, 'directory.jpg')) os.mkdir(os.path.join(dir, '.hiddendirectory')) test1 = CellRenameData(dir, '*', True) expectEqual(len(test1.data), len(names) + 3 - 2) # 2 begin with . and shouldn't be included expectEqual(containsName(test1, 'directory1'), True) expectEqual(containsName(test1, 'directory.jpg'), True) expectEqual(containsName(test1, '1'), True) expectEqual(containsName(test1, 'a picture.JPG'), True) expectEqual(containsName(test1, '.hiddendirectory'), False) expectEqual(containsName(test1, '.testhidden'), False) expectEqual(any((item.filename.startswith('.') for item in test1.data)), False) test2 = CellRenameData(dir, '*', False) expectEqual(containsName(test2, 'directory1'), False) expectEqual(containsName(test2, 'directory.jpg'), False) expectEqual(containsName(test2, '.testhidden'), False) expectEqual(containsName(test2, '.hiddendirectory'), False) expectEqual(containsName(test2, '1'), True) testFilter1 = CellRenameData(dir, '*.*', False) expectEqual(containsName(testFilter1, '1'), False) expectEqual(containsName(testFilter1, 'a picture.JPG'), True) expectEqual(containsName(testFilter1, '2.gif'), True) expectEqual(containsName(testFilter1, 'directory.jpg'), False) testFilter2 = CellRenameData(dir, '*.jp', False) expectEqual(containsName(testFilter2, 'a picture.JPG'), False) expectEqual(len(testFilter2.data), 0) # even on posix systems we want case-insensitive pattern matching. testFilter3 = CellRenameData(dir, '*.jpg', False) testFilter4 = CellRenameData(dir, '*.JpG', False) testFilter5 = CellRenameData(dir, '*.jp*', False) testFilter6 = CellRenameData(dir, '*.jp?', False) for filter in (testFilter3, testFilter4, testFilter5, testFilter6): expectEqual(containsName(filter, 'a picture.JPG'), True) expectEqual(containsName(filter, 'picture 2.jpg'), True) expectEqual(containsName(filter, 'picture and picture.jpG'), True) expectEqual(containsName(filter, 'the PiCture with caps.jpg'), True) expectEqual(containsName(filter, 'directory.jpg'), False) # test sorting testSort1 = CellRenameData(dir, '*', True) testSort1.sort('filename') expectEqual(testSort1.data[0].filename, '1') expectEqual(testSort1.data[1].filename, '2.gif') expectEqual(testSort1.data[-1].filename, 'the PiCture with caps.jpg') testSort1.sort('filename', True) # reverse order expectEqual(testSort1.data[-1].filename, '1') expectEqual(testSort1.data[-2].filename, '2.gif') expectEqual(testSort1.data[0].filename, 'the PiCture with caps.jpg') fout = open(join(dir, 'a picture.JPG'), 'w') fout.write('a') fout.close() testSort1.refresh() testSort1.sort('size') expectEqual(testSort1.data[0].filename in ('directory1', 'directory.jpg'), True) # directories always at top expectEqual(testSort1.data[1].filename in ('directory1', 'directory.jpg'), True) # directories always at top expectEqual(testSort1.data[2].filename, 'a picture.JPG')
def dataunittest_files(): from cellrename_data import CellRenameData names = unittestsetup() def containsName(data, name): return any((item.filename==name for item in data.data)) os.mkdir(os.path.join(dir, 'directory1')) os.mkdir(os.path.join(dir, 'directory.jpg')) os.mkdir(os.path.join(dir, '.hiddendirectory')) test1 = CellRenameData(dir, '*', True) expectEqual( len(test1.data), len(names)+3-2) # 2 begin with . and shouldn't be included expectEqual( containsName(test1, 'directory1'), True) expectEqual( containsName(test1, 'directory.jpg'), True) expectEqual( containsName(test1, '1'), True) expectEqual( containsName(test1, 'a picture.JPG'), True) expectEqual( containsName(test1, '.hiddendirectory'), False) expectEqual( containsName(test1, '.testhidden'), False) expectEqual(any((item.filename.startswith('.') for item in test1.data)), False) test2 = CellRenameData(dir, '*', False) expectEqual( containsName(test2, 'directory1'), False) expectEqual( containsName(test2, 'directory.jpg'), False) expectEqual( containsName(test2, '.testhidden'), False) expectEqual( containsName(test2, '.hiddendirectory'), False) expectEqual( containsName(test2, '1'), True) testFilter1 = CellRenameData(dir, '*.*', False) expectEqual( containsName(testFilter1, '1'), False) expectEqual( containsName(testFilter1, 'a picture.JPG'), True) expectEqual( containsName(testFilter1, '2.gif'), True) expectEqual( containsName(testFilter1, 'directory.jpg'), False) testFilter2 = CellRenameData(dir, '*.jp', False) expectEqual( containsName(testFilter2, 'a picture.JPG'), False) expectEqual( len(testFilter2.data), 0) # even on posix systems we want case-insensitive pattern matching. testFilter3 = CellRenameData(dir, '*.jpg', False) testFilter4 = CellRenameData(dir, '*.JpG', False) testFilter5 = CellRenameData(dir, '*.jp*', False) testFilter6 = CellRenameData(dir, '*.jp?', False) for filter in (testFilter3, testFilter4, testFilter5, testFilter6): expectEqual( containsName(filter, 'a picture.JPG'), True) expectEqual( containsName(filter, 'picture 2.jpg'), True) expectEqual( containsName(filter, 'picture and picture.jpG'), True) expectEqual( containsName(filter, 'the PiCture with caps.jpg'), True) expectEqual( containsName(filter, 'directory.jpg'), False) # test sorting testSort1 = CellRenameData(dir, '*', True) testSort1.sort('filename') expectEqual( testSort1.data[0].filename , '1') expectEqual( testSort1.data[1].filename , '2.gif') expectEqual( testSort1.data[-1].filename , 'the PiCture with caps.jpg') testSort1.sort('filename',True) # reverse order expectEqual( testSort1.data[-1].filename , '1') expectEqual( testSort1.data[-2].filename , '2.gif') expectEqual( testSort1.data[0].filename , 'the PiCture with caps.jpg') fout=open(join(dir, 'a picture.JPG'),'w'); fout.write('a'); fout.close() testSort1.refresh() testSort1.sort('size') expectEqual( testSort1.data[0].filename in ('directory1', 'directory.jpg'), True) # directories always at top expectEqual( testSort1.data[1].filename in ('directory1', 'directory.jpg'), True) # directories always at top expectEqual( testSort1.data[2].filename , 'a picture.JPG')