def test_getMappedPathForHost(self): mappingdata_for_mappedPaths = { "": ({ "/tmp/file1.txt": "/tmp/file1.txt", "/server/tmp/file2.txt": "/server/tmp/file2.txt", "/f.c": "/f.c", "/remote/tmp/file3.txt": "/remote/tmp/file3.txt", "C:\\tmp\\file4.txt": "C:\\tmp\\file4.txt", }, ""), "http://server/tmp##/tmp::"\ "sftp://remote##/remote": ({ "/tmp/file1.txt": "http://server/tmp/file1.txt", "/server/tmp/file2.txt": "/server/tmp/file2.txt", "/f.c": "/f.c", "/remote/tmp/file3.txt": "/tmp/file3.txt", "C:\\tmp\\file4.txt": "C:\\tmp\\file4.txt", }, "server"), "http://server/tmp##/tmp::"\ "sftp://remote##/remote": ({ "/tmp/file1.txt": "/tmp/file1.txt", "/server/tmp/file2.txt": "/server/tmp/file2.txt", "/f.c": "/f.c", "/remote/tmp/file3.txt": "sftp://remote/tmp/file3.txt", "C:\\tmp\\file4.txt": "C:\\tmp\\file4.txt", }, "remote"), } for mappedPath, mappingData in mappingdata_for_mappedPaths.items(): mappingData, host = mappingData prefs = _dummyPrefsClass({"mappedPaths": mappedPath}) for path, expected_uri in mappingData.items(): mapped_uri = uriparse.getMappedPath(path, prefs, host) self.failUnlessEqual(mapped_uri, expected_uri, "Mapped URI was not expected: %r != %r" % (mapped_uri, expected_uri)) # Now try the same tests using a parent pref chain. # http://bugs.activestate.com/show_bug.cgi?id=76389 for mappedPath, mappingData in mappingdata_for_mappedPaths.items(): mappingData, host = mappingData prefs_parent = _dummyPrefsClass({"mappedPaths": mappedPath}) prefs = _dummyPrefsClass(parent=prefs_parent) for path, expected_uri in mappingData.items(): mapped_uri = uriparse.getMappedPath(path, prefs, host) self.failUnlessEqual(mapped_uri, expected_uri, "Mapped URI was not expected: %r != %r" % (mapped_uri, expected_uri))
def test_getMappedPath(self): mappingdata_for_mappedPaths = { "": { "/tmp/file1.txt": "/tmp/file1.txt", "/server/tmp/file2.txt": "/server/tmp/file2.txt", "/f.c": "/f.c", "/remote/tmp/file3.txt": "/remote/tmp/file3.txt", "C:\\tmp\\file4.txt": "C:\\tmp\\file4.txt", }, "http://server/tmp##/tmp::"\ "sftp://remote##/remote": { "/tmp/file1.txt": "http://server/tmp/file1.txt", "/server/tmp/file2.txt": "/server/tmp/file2.txt", "/f.c": "/f.c", "/remote/tmp/file3.txt": "sftp://remote/tmp/file3.txt", "C:\\tmp\\file4.txt": "C:\\tmp\\file4.txt", }, } for mappedPath, mappingData in mappingdata_for_mappedPaths.items(): prefs = _dummyPrefsClass({"mappedPaths": mappedPath}) for path, expected_uri in mappingData.items(): mapped_uri = uriparse.getMappedPath(path, prefs) self.failUnlessEqual(mapped_uri, expected_uri, "Mapped URI was not expected: %r != %r" % (mapped_uri, expected_uri))
def test_URIUnmapping(self): # Testcase to show where the current mapped uri system falls down mappingdata_for_mappedPaths = { "": { "file://myserver/tmp/file1.txt": "file://myserver/tmp/file1.txt", }, "file://myserver/tmp##file://C:/tmp": { "file://myserver/tmp/file1.txt": "file:///C:/tmp/file1.txt", }, "file://myserver/tmp##C:\\tmp": { "file://myserver/tmp/file1.txt": "file:///C:/tmp/file1.txt", }, } for mappedPath, mappingData in mappingdata_for_mappedPaths.items(): prefs = _dummyPrefsClass({"mappedPaths": mappedPath}) for path, expected_uri in mappingData.items(): mapped_uri = uriparse.getMappedURI(path, prefs) self.failUnlessEqual(mapped_uri, expected_uri, "Mapped URI was not expected: %r != %r (mappedPath: %r)" % (mapped_uri, expected_uri, mappedPath)) unmapped_path = uriparse.getMappedPath(mapped_uri, prefs) self.failUnlessEqual(unmapped_path, path, "Mapped URI was not unmapped correctly: %r != %r (mappedPath: %r)" % (unmapped_path, path, mappedPath))