~smoser/ubuntu/vivid/cloud-init/snappy

« back to all changes in this revision

Viewing changes to tests/unittests/test_templating.py

  • Committer: Scott Moser
  • Date: 2015-02-27 20:55:58 UTC
  • mfrom: (355.2.8 vivid)
  • Revision ID: smoser@ubuntu.com-20150227205558-glrwdgxqkaz6zyxa
* Merge with vivid at 0.7.7~bzr1067-0ubuntu1
* New upstream snapshot.
  * fix broken consumption of gzipped user-data (LP: #1424900)
  * functional user-data on Azure again (LP: #1423972)
  * CloudStack: support fetching password from virtual router (LP: #1422388)
* New upstream snapshot.
  * Fix for ascii decode in DataSourceAzure (LP: #1422993).
* New upstream snapshot.
  * support for gpt partitioning, utilized in Azure [Daniel Watkins]
  * fix bug in exception handling in mount_cb.
* New upstream snapshot.
  * move to python3 (LP: #1247132)
  * systemd: run cloud-init before systemd-user-sessions.service
  * Use the GCE short hostname. (LP: #1383794)
  * Enable user-data encoding support for GCE. (LP: #1404311)
  * Update to use a newer and better OMNIBUS_URL
  * Be more tolerant of 'ssh_authorized_keys' types
  * Fix parse_ssh_config failing in ssh_util.py
  * Increase the robustness/configurability of the chef module.
  * retain trailing newline from template files when using
    jinja2 (LP: #1355343)
  * fix broken output handling (LP: #1387340)
  * digital ocean datasource
  * update url in config drive documentation
  * freebsd: enable correct behavior on Ec2.
  * freebsd: Use the proper virtio FreeBSD network interface name.

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
#    You should have received a copy of the GNU General Public License
17
17
#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
18
18
 
 
19
from __future__ import print_function
 
20
 
 
21
import sys
 
22
import six
 
23
import unittest
 
24
 
19
25
from . import helpers as test_helpers
20
26
import textwrap
21
27
 
22
28
from cloudinit import templater
23
29
 
 
30
try:
 
31
    import Cheetah
 
32
    HAS_CHEETAH = True
 
33
except ImportError:
 
34
    HAS_CHEETAH = False
 
35
 
24
36
 
25
37
class TestTemplates(test_helpers.TestCase):
26
38
    def test_render_basic(self):
38
50
        out_data = templater.basic_render(in_data, {'b': 2})
39
51
        self.assertEqual(expected_data.strip(), out_data)
40
52
 
 
53
    @test_helpers.skipIf(not HAS_CHEETAH, 'cheetah renderer not available')
41
54
    def test_detection(self):
42
55
        blob = "## template:cheetah"
43
56
 
100
113
        mirror = "mymirror"
101
114
        codename = "zany"
102
115
        in_data = "deb $mirror $codename-updates main contrib non-free"
103
 
        ex_data = "deb %s %s-updates main contrib non-free" % (mirror, codename)
 
116
        ex_data = "deb %s %s-updates main contrib non-free" % (mirror,
 
117
                                                               codename)
104
118
 
105
119
        out_data = templater.basic_render(in_data,
106
120
            {'mirror': mirror, 'codename': codename})