|
38 | 38 | _libExt, |
39 | 39 | ExecutableData, |
40 | 40 | import_file, |
| 41 | + to_legal_filename, |
41 | 42 | ) |
42 | 43 | from pyomo.common.download import FileDownloader |
43 | 44 |
|
@@ -497,3 +498,35 @@ def test_PathManager(self): |
497 | 498 | Executable(f_in_path2).rehash() |
498 | 499 | self.assertTrue(Executable(f_in_path2).available()) |
499 | 500 | self.assertEqual(Executable(f_in_path2).path(), f_loc) |
| 501 | + |
| 502 | + def test_to_legal_filename(self): |
| 503 | + self.assertEqual('abc', to_legal_filename('abc')) |
| 504 | + self.assertEqual('', to_legal_filename('')) |
| 505 | + if envvar.is_windows: |
| 506 | + self.assertEqual('_abc', to_legal_filename(' abc')) |
| 507 | + self.assertEqual('abc_', to_legal_filename('abc.')) |
| 508 | + self.assertEqual('abc_', to_legal_filename('abc ')) |
| 509 | + self.assertEqual('abc_def', to_legal_filename('abc/def')) |
| 510 | + self.assertEqual('abc_def', to_legal_filename('abc\\def')) |
| 511 | + self.assertEqual( |
| 512 | + 'a_b_c', to_legal_filename(''.join(['a', chr(0), 'b', chr(7), 'c'])) |
| 513 | + ) |
| 514 | + else: |
| 515 | + self.assertEqual(' abc', to_legal_filename(' abc')) |
| 516 | + self.assertEqual('abc.', to_legal_filename('abc.')) |
| 517 | + self.assertEqual('abc ', to_legal_filename('abc ')) |
| 518 | + self.assertEqual('abc_def', to_legal_filename('abc/def')) |
| 519 | + self.assertEqual('abc\\def', to_legal_filename('abc\\def')) |
| 520 | + self.assertEqual( |
| 521 | + 'a_b' + chr(7) + 'c', |
| 522 | + to_legal_filename(''.join(['a', chr(0), 'b', chr(7), 'c'])), |
| 523 | + ) |
| 524 | + |
| 525 | + self.assertEqual('_abc', to_legal_filename(' abc', True)) |
| 526 | + self.assertEqual('abc_', to_legal_filename('abc.', True)) |
| 527 | + self.assertEqual('abc_', to_legal_filename('abc ', True)) |
| 528 | + self.assertEqual('abc_def', to_legal_filename('abc/def', True)) |
| 529 | + self.assertEqual('abc_def', to_legal_filename('abc\\def', True)) |
| 530 | + self.assertEqual( |
| 531 | + 'a_b_c', to_legal_filename(''.join(['a', chr(0), 'b', chr(7), 'c']), True) |
| 532 | + ) |
0 commit comments