~jamesodhunt/click/add-utf8-test

« back to all changes in this revision

Viewing changes to click/tests/test_framework.py

  • Committer: CI bot
  • Author(s): Michael Vogt, Colin Watson
  • Date: 2014-08-06 23:33:12 UTC
  • mfrom: (425.1.67 devel)
  • Revision ID: ps-jenkins@lists.canonical.com-20140806233312-4nc48i27d6zn4i9j
Click 0.4.30: Unit test improvements; fix upgrade if packages are present for removed users; flesh out 14.10 chroots. Fixes: 1334611

Show diffs side-by-side

added added

removed removed

Lines of Context:
27
27
 
28
28
from gi.repository import Click
29
29
 
30
 
from click.tests.helpers import TestCase
 
30
from click.tests.helpers import TestCase, touch
31
31
 
32
32
 
33
33
class TestClickFramework(TestCase):
78
78
                ["ubuntu-sdk-13.10", "ubuntu-sdk-14.04", "ubuntu-sdk-14.10"],
79
79
                sorted(f.props.name for f in Click.Framework.get_frameworks()))
80
80
 
 
81
    def test_get_frameworks_nonexistent(self):
 
82
        with self.run_in_subprocess(
 
83
                "click_get_frameworks_dir") as (enter, preloads):
 
84
            enter()
 
85
            frameworks_dir = os.path.join(self.temp_dir, "nonexistent")
 
86
            preloads["click_get_frameworks_dir"].side_effect = (
 
87
                lambda: self.make_string(frameworks_dir))
 
88
            self.assertEqual([], Click.Framework.get_frameworks())
 
89
 
 
90
    def test_get_frameworks_not_directory(self):
 
91
        with self.run_in_subprocess(
 
92
                "click_get_frameworks_dir") as (enter, preloads):
 
93
            enter()
 
94
            path = os.path.join(self.temp_dir, "file")
 
95
            touch(path)
 
96
            preloads["click_get_frameworks_dir"].side_effect = (
 
97
                lambda: self.make_string(path))
 
98
            self.assertEqual([], Click.Framework.get_frameworks())
 
99
 
 
100
    def test_get_frameworks_ignores_other_files(self):
 
101
        with self.run_in_subprocess(
 
102
                "click_get_frameworks_dir") as (enter, preloads):
 
103
            enter()
 
104
            frameworks_dir = os.path.join(self.temp_dir, "frameworks")
 
105
            Click.ensuredir(frameworks_dir)
 
106
            touch(os.path.join(frameworks_dir, "file"))
 
107
            preloads["click_get_frameworks_dir"].side_effect = (
 
108
                lambda: self.make_string(frameworks_dir))
 
109
            self.assertEqual([], Click.Framework.get_frameworks())
 
110
 
 
111
    def test_get_frameworks_ignores_unopenable_files(self):
 
112
        with self.run_in_subprocess(
 
113
                "click_get_frameworks_dir") as (enter, preloads):
 
114
            enter()
 
115
            frameworks_dir = os.path.join(self.temp_dir, "frameworks")
 
116
            Click.ensuredir(frameworks_dir)
 
117
            os.symlink(
 
118
                "nonexistent", os.path.join(frameworks_dir, "foo.framework"))
 
119
            preloads["click_get_frameworks_dir"].side_effect = (
 
120
                lambda: self.make_string(frameworks_dir))
 
121
            self.assertEqual([], Click.Framework.get_frameworks())
 
122
 
81
123
    def test_fields(self):
82
124
        with self.run_in_subprocess(
83
125
                "click_get_frameworks_dir") as (enter, preloads):