Remove bundled testtools.
[nivanova/samba-autobuild/.git] / lib / testtools / testtools / tests / matchers / test_filesystem.py
diff --git a/lib/testtools/testtools/tests/matchers/test_filesystem.py b/lib/testtools/testtools/tests/matchers/test_filesystem.py
deleted file mode 100644 (file)
index 917ff2e..0000000
+++ /dev/null
@@ -1,243 +0,0 @@
-# Copyright (c) 2008-2012 testtools developers. See LICENSE for details.
-
-import os
-import shutil
-import tarfile
-import tempfile
-
-from testtools import TestCase
-from testtools.matchers import (
-    Contains,
-    DocTestMatches,
-    Equals,
-    )
-from testtools.matchers._filesystem import (
-    DirContains,
-    DirExists,
-    FileContains,
-    FileExists,
-    HasPermissions,
-    PathExists,
-    SamePath,
-    TarballContains,
-    )
-
-
-class PathHelpers(object):
-
-    def mkdtemp(self):
-        directory = tempfile.mkdtemp()
-        self.addCleanup(shutil.rmtree, directory)
-        return directory
-
-    def create_file(self, filename, contents=''):
-        fp = open(filename, 'w')
-        try:
-            fp.write(contents)
-        finally:
-            fp.close()
-
-    def touch(self, filename):
-        return self.create_file(filename)
-
-
-class TestPathExists(TestCase, PathHelpers):
-
-    def test_exists(self):
-        tempdir = self.mkdtemp()
-        self.assertThat(tempdir, PathExists())
-
-    def test_not_exists(self):
-        doesntexist = os.path.join(self.mkdtemp(), 'doesntexist')
-        mismatch = PathExists().match(doesntexist)
-        self.assertThat(
-            "%s does not exist." % doesntexist, Equals(mismatch.describe()))
-
-
-class TestDirExists(TestCase, PathHelpers):
-
-    def test_exists(self):
-        tempdir = self.mkdtemp()
-        self.assertThat(tempdir, DirExists())
-
-    def test_not_exists(self):
-        doesntexist = os.path.join(self.mkdtemp(), 'doesntexist')
-        mismatch = DirExists().match(doesntexist)
-        self.assertThat(
-            PathExists().match(doesntexist).describe(),
-            Equals(mismatch.describe()))
-
-    def test_not_a_directory(self):
-        filename = os.path.join(self.mkdtemp(), 'foo')
-        self.touch(filename)
-        mismatch = DirExists().match(filename)
-        self.assertThat(
-            "%s is not a directory." % filename, Equals(mismatch.describe()))
-
-
-class TestFileExists(TestCase, PathHelpers):
-
-    def test_exists(self):
-        tempdir = self.mkdtemp()
-        filename = os.path.join(tempdir, 'filename')
-        self.touch(filename)
-        self.assertThat(filename, FileExists())
-
-    def test_not_exists(self):
-        doesntexist = os.path.join(self.mkdtemp(), 'doesntexist')
-        mismatch = FileExists().match(doesntexist)
-        self.assertThat(
-            PathExists().match(doesntexist).describe(),
-            Equals(mismatch.describe()))
-
-    def test_not_a_file(self):
-        tempdir = self.mkdtemp()
-        mismatch = FileExists().match(tempdir)
-        self.assertThat(
-            "%s is not a file." % tempdir, Equals(mismatch.describe()))
-
-
-class TestDirContains(TestCase, PathHelpers):
-
-    def test_empty(self):
-        tempdir = self.mkdtemp()
-        self.assertThat(tempdir, DirContains([]))
-
-    def test_not_exists(self):
-        doesntexist = os.path.join(self.mkdtemp(), 'doesntexist')
-        mismatch = DirContains([]).match(doesntexist)
-        self.assertThat(
-            PathExists().match(doesntexist).describe(),
-            Equals(mismatch.describe()))
-
-    def test_contains_files(self):
-        tempdir = self.mkdtemp()
-        self.touch(os.path.join(tempdir, 'foo'))
-        self.touch(os.path.join(tempdir, 'bar'))
-        self.assertThat(tempdir, DirContains(['bar', 'foo']))
-
-    def test_matcher(self):
-        tempdir = self.mkdtemp()
-        self.touch(os.path.join(tempdir, 'foo'))
-        self.touch(os.path.join(tempdir, 'bar'))
-        self.assertThat(tempdir, DirContains(matcher=Contains('bar')))
-
-    def test_neither_specified(self):
-        self.assertRaises(AssertionError, DirContains)
-
-    def test_both_specified(self):
-        self.assertRaises(
-            AssertionError, DirContains, filenames=[], matcher=Contains('a'))
-
-    def test_does_not_contain_files(self):
-        tempdir = self.mkdtemp()
-        self.touch(os.path.join(tempdir, 'foo'))
-        mismatch = DirContains(['bar', 'foo']).match(tempdir)
-        self.assertThat(
-            Equals(['bar', 'foo']).match(['foo']).describe(),
-            Equals(mismatch.describe()))
-
-
-class TestFileContains(TestCase, PathHelpers):
-
-    def test_not_exists(self):
-        doesntexist = os.path.join(self.mkdtemp(), 'doesntexist')
-        mismatch = FileContains('').match(doesntexist)
-        self.assertThat(
-            PathExists().match(doesntexist).describe(),
-            Equals(mismatch.describe()))
-
-    def test_contains(self):
-        tempdir = self.mkdtemp()
-        filename = os.path.join(tempdir, 'foo')
-        self.create_file(filename, 'Hello World!')
-        self.assertThat(filename, FileContains('Hello World!'))
-
-    def test_matcher(self):
-        tempdir = self.mkdtemp()
-        filename = os.path.join(tempdir, 'foo')
-        self.create_file(filename, 'Hello World!')
-        self.assertThat(
-            filename, FileContains(matcher=DocTestMatches('Hello World!')))
-
-    def test_neither_specified(self):
-        self.assertRaises(AssertionError, FileContains)
-
-    def test_both_specified(self):
-        self.assertRaises(
-            AssertionError, FileContains, contents=[], matcher=Contains('a'))
-
-    def test_does_not_contain(self):
-        tempdir = self.mkdtemp()
-        filename = os.path.join(tempdir, 'foo')
-        self.create_file(filename, 'Goodbye Cruel World!')
-        mismatch = FileContains('Hello World!').match(filename)
-        self.assertThat(
-            Equals('Hello World!').match('Goodbye Cruel World!').describe(),
-            Equals(mismatch.describe()))
-class TestTarballContains(TestCase, PathHelpers):
-
-    def test_match(self):
-        tempdir = self.mkdtemp()
-        in_temp_dir = lambda x: os.path.join(tempdir, x)
-        self.touch(in_temp_dir('a'))
-        self.touch(in_temp_dir('b'))
-        tarball = tarfile.open(in_temp_dir('foo.tar.gz'), 'w')
-        tarball.add(in_temp_dir('a'), 'a')
-        tarball.add(in_temp_dir('b'), 'b')
-        tarball.close()
-        self.assertThat(
-            in_temp_dir('foo.tar.gz'), TarballContains(['b', 'a']))
-
-    def test_mismatch(self):
-        tempdir = self.mkdtemp()
-        in_temp_dir = lambda x: os.path.join(tempdir, x)
-        self.touch(in_temp_dir('a'))
-        self.touch(in_temp_dir('b'))
-        tarball = tarfile.open(in_temp_dir('foo.tar.gz'), 'w')
-        tarball.add(in_temp_dir('a'), 'a')
-        tarball.add(in_temp_dir('b'), 'b')
-        tarball.close()
-        mismatch = TarballContains(['d', 'c']).match(in_temp_dir('foo.tar.gz'))
-        self.assertEqual(
-            mismatch.describe(),
-            Equals(['c', 'd']).match(['a', 'b']).describe())
-
-
-class TestSamePath(TestCase, PathHelpers):
-
-    def test_same_string(self):
-        self.assertThat('foo', SamePath('foo'))
-
-    def test_relative_and_absolute(self):
-        path = 'foo'
-        abspath = os.path.abspath(path)
-        self.assertThat(path, SamePath(abspath))
-        self.assertThat(abspath, SamePath(path))
-
-    def test_real_path(self):
-        tempdir = self.mkdtemp()
-        source = os.path.join(tempdir, 'source')
-        self.touch(source)
-        target = os.path.join(tempdir, 'target')
-        try:
-            os.symlink(source, target)
-        except (AttributeError, NotImplementedError):
-            self.skip("No symlink support")
-        self.assertThat(source, SamePath(target))
-        self.assertThat(target, SamePath(source))
-
-
-class TestHasPermissions(TestCase, PathHelpers):
-
-    def test_match(self):
-        tempdir = self.mkdtemp()
-        filename = os.path.join(tempdir, 'filename')
-        self.touch(filename)
-        permissions = oct(os.stat(filename).st_mode)[-4:]
-        self.assertThat(filename, HasPermissions(permissions))
-
-
-def test_suite():
-    from unittest import TestLoader
-    return TestLoader().loadTestsFromName(__name__)