aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Allan Webber <cwebber@dustycloud.org>2011-04-10 15:50:32 -0500
committerChristopher Allan Webber <cwebber@dustycloud.org>2011-04-10 15:50:32 -0500
commit17e7093e4b63a9df1ff717de839c6281dbf55e98 (patch)
treecb08da0ef7eec9d50c474b7e9f183cca572c771c
parente579cf544da9f4e44078377ecdff782c8c2cbf29 (diff)
downloadmediagoblin-17e7093e4b63a9df1ff717de839c6281dbf55e98.tar.lz
mediagoblin-17e7093e4b63a9df1ff717de839c6281dbf55e98.tar.xz
mediagoblin-17e7093e4b63a9df1ff717de839c6281dbf55e98.zip
Started BasicFileStorage tests. test_basic_storage__resolve_filepath() done.
Also switched to using assert_raises, which is only sane!
-rw-r--r--mediagoblin/tests/test_storage.py60
1 files changed, 52 insertions, 8 deletions
diff --git a/mediagoblin/tests/test_storage.py b/mediagoblin/tests/test_storage.py
index cdcddf09..a30ca149 100644
--- a/mediagoblin/tests/test_storage.py
+++ b/mediagoblin/tests/test_storage.py
@@ -15,6 +15,11 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+import os
+import tempfile
+
+from nose.tools import assert_raises
+
from mediagoblin import storage
@@ -31,11 +36,50 @@ def test_clean_listy_filepath():
assert storage.clean_listy_filepath(
['../../../etc/', 'passwd']) == expected
- try:
- storage.clean_listy_filepath(
- ['../../', 'linooks.jpg'])
- except storage.InvalidFilepath:
- # Yes, this error should be raise
- pass
- else:
- assert "success" == "failboat"
+ assert_raises(
+ storage.InvalidFilepath,
+ storage.clean_listy_filepath,
+ ['../../', 'linooks.jpg'])
+
+
+##########################
+# Basic file storage tests
+##########################
+
+def get_tmp_filestorage(mount_url=None):
+ tmpdir = tempfile.mkdtemp()
+ this_storage = storage.BasicFileStorage(tmpdir, mount_url)
+ return tmpdir, this_storage
+
+
+def test_basic_storage__resolve_filepath():
+ tmpdir, this_storage = get_tmp_filestorage()
+
+ result = this_storage._resolve_filepath(['dir1', 'dir2', 'filename.jpg'])
+ assert result == os.path.join(
+ tmpdir, 'dir1/dir2/filename.jpg')
+
+ result = this_storage._resolve_filepath(['../../etc/', 'passwd'])
+ assert result == os.path.join(
+ tmpdir, 'etc/passwd')
+
+ assert_raises(
+ storage.InvalidFilepath,
+ this_storage._resolve_filepath,
+ ['../../', 'etc', 'passwd'])
+
+
+def test_basic_storage_file_exists():
+ pass
+
+
+def test_basic_storage_get_file():
+ pass
+
+
+def test_basic_storage_delete_file():
+ pass
+
+
+def test_basic_storage_url_for_file():
+ pass