| Index: py/utils/url_utils_test.py
|
| diff --git a/py/utils/url_utils_test.py b/py/utils/url_utils_test.py
|
| new file mode 100755
|
| index 0000000000000000000000000000000000000000..ef3d8c8aaaa8e2016977435be7bc2d6a723918a5
|
| --- /dev/null
|
| +++ b/py/utils/url_utils_test.py
|
| @@ -0,0 +1,61 @@
|
| +#!/usr/bin/python
|
| +
|
| +"""
|
| +Copyright 2014 Google Inc.
|
| +
|
| +Use of this source code is governed by a BSD-style license that can be
|
| +found in the LICENSE file.
|
| +
|
| +Test url_utils.py
|
| +"""
|
| +
|
| +# System-level imports
|
| +import os
|
| +import shutil
|
| +import tempfile
|
| +import unittest
|
| +import urllib
|
| +
|
| +# Imports from within Skia
|
| +import url_utils
|
| +
|
| +
|
| +class UrlUtilsTest(unittest.TestCase):
|
| +
|
| + def test_create_filepath_url(self):
|
| + """Tests create_filepath_url(). """
|
| + with self.assertRaises(Exception):
|
| + url_utils.create_filepath_url('http://1.2.3.4/path')
|
| + # Pass absolute filepath.
|
| + self.assertEquals(
|
| + url_utils.create_filepath_url(
|
| + '%sdir%sfile' % (os.path.sep, os.path.sep)),
|
| + 'file:///dir/file')
|
| + # Pass relative filepath.
|
| + self.assertEquals(
|
| + url_utils.create_filepath_url(os.path.join('dir', 'file')),
|
| + 'file://%s/dir/file' % urllib.pathname2url(os.getcwd()))
|
| +
|
| + def test_copy_contents(self):
|
| + """Tests copy_contents(). """
|
| + contents = 'these are the contents'
|
| + tempdir_path = tempfile.mkdtemp()
|
| + try:
|
| + source_path = os.path.join(tempdir_path, 'source')
|
| + source_url = url_utils.create_filepath_url(source_path)
|
| + with open(source_path, 'w') as source_handle:
|
| + source_handle.write(contents)
|
| + dest_path = os.path.join(tempdir_path, 'new_subdir', 'dest')
|
| + # Destination subdir does not exist, so copy_contents() should fail
|
| + # if create_subdirs_if_needed is False.
|
| + with self.assertRaises(Exception):
|
| + url_utils.copy_contents(source_url=source_url,
|
| + dest_path=dest_path,
|
| + create_subdirs_if_needed=False)
|
| + # If create_subdirs_if_needed is True, it should work.
|
| + url_utils.copy_contents(source_url=source_url,
|
| + dest_path=dest_path,
|
| + create_subdirs_if_needed=True)
|
| + self.assertEquals(open(dest_path).read(), contents)
|
| + finally:
|
| + shutil.rmtree(tempdir_path)
|
|
|