~gz/pyjuju/no_default_instance_1069883

« back to all changes in this revision

Viewing changes to juju/charm/tests/test_directory.py

  • Committer: Clint Byrum
  • Date: 2012-11-02 17:57:59 UTC
  • mfrom: (598.1.2 no-lsb-release)
  • Revision ID: clint@ubuntu.com-20121102175759-iy9byf34wcbs1xqu
[r=jimbaker][f=1007544] Make sure test suite does not assume /etc/lsb-release exists

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
import hashlib
4
4
import inspect
5
5
import shutil
6
 
import tempfile
7
6
import zipfile
8
7
 
9
8
from juju.errors import CharmError, FileNotFound
111
110
    def test_make_archive(self):
112
111
        # make archive from sample directory
113
112
        directory = CharmDirectory(sample_directory)
114
 
        f = tempfile.NamedTemporaryFile(suffix=".charm")
115
 
        directory.make_archive(f.name)
 
113
        f = self.makeFile(suffix=".charm")
 
114
        directory.make_archive(f)
116
115
 
117
116
        # open archive in .zip-format and assert integrity
118
117
        from zipfile import ZipFile
119
 
        zf = ZipFile(f.name)
 
118
        zf = ZipFile(f)
120
119
        self.assertEqual(zf.testzip(), None)
121
120
 
122
121
        # assert included
212
211
 
213
212
    def test_internal_symlink(self):
214
213
        charm_path = self.copy_charm()
215
 
        os.symlink("/etc/lsb-release", os.path.join(charm_path, "foobar"))
 
214
        external_file = self.makeFile(content='baz')
 
215
        os.symlink(external_file, os.path.join(charm_path, "foobar"))
216
216
 
217
217
        directory = CharmDirectory(charm_path)
218
218
        e = self.assertRaises(InvalidCharmFile, directory.as_bundle)
220
220
 
221
221
    def test_extract_symlink(self):
222
222
        charm_path = self.copy_charm()
223
 
        os.symlink("/etc/lsb-release", os.path.join(charm_path, "foobar"))
 
223
        external_file = self.makeFile(content='lorem ipsum')
 
224
        os.symlink(external_file, os.path.join(charm_path, "foobar"))
224
225
 
225
226
        directory = CharmDirectory(charm_path)
226
227
        e = self.assertRaises(InvalidCharmFile, directory.as_bundle)