Test for BasicFileStorage.file_url()
authorChristopher Allan Webber <cwebber@dustycloud.org>
Sat, 16 Apr 2011 17:47:15 +0000 (12:47 -0500)
committerChristopher Allan Webber <cwebber@dustycloud.org>
Sat, 16 Apr 2011 17:47:15 +0000 (12:47 -0500)
mediagoblin/tests/test_storage.py

index 6a73cd82e470da79f6e721ffe7c3a74ab97a2106..0db9df842a580a434f213ff38d134da2c0b237ea 100644 (file)
@@ -159,4 +159,24 @@ def test_basic_storage_delete_file():
 
 
 def test_basic_storage_url_for_file():
-    pass
+    # Not supplying a base_url should actually just bork.
+    tmpdir, this_storage = get_tmp_filestorage()
+    assert_raises(
+        storage.NoWebServing,
+        this_storage.file_url,
+        ['dir1', 'dir2', 'filename.txt'])
+
+    # base_url without domain
+    tmpdir, this_storage = get_tmp_filestorage('/media/')
+    result = this_storage.file_url(
+        ['dir1', 'dir2', 'filename.txt'])
+    expected = '/media/dir1/dir2/filename.txt'
+    assert result == expected
+
+    # base_url with domain
+    tmpdir, this_storage = get_tmp_filestorage(
+        'http://media.example.org/ourmedia/')
+    result = this_storage.file_url(
+        ['dir1', 'dir2', 'filename.txt'])
+    expected = 'http://media.example.org/ourmedia/dir1/dir2/filename.txt'
+    assert result == expected