Add a test that ensures the upstart handler does not output files when in non-per-instance mode.
This commit is contained in:
parent
79844379fb
commit
d179f59c09
54
tests/unittests/test_builtin_handlers.py
Normal file
54
tests/unittests/test_builtin_handlers.py
Normal file
@ -0,0 +1,54 @@
|
||||
"""Tests of the built-in user data handlers"""
|
||||
|
||||
import os
|
||||
|
||||
from mocker import MockerTestCase
|
||||
|
||||
from cloudinit import handlers
|
||||
from cloudinit import helpers
|
||||
from cloudinit import util
|
||||
|
||||
from cloudinit.handlers import upstart_job
|
||||
|
||||
from cloudinit.settings import (PER_ALWAYS, PER_INSTANCE)
|
||||
|
||||
|
||||
class TestBuiltins(MockerTestCase):
|
||||
|
||||
def test_upstart_frequency_no_out(self):
|
||||
c_root = self.makeDir()
|
||||
up_root = self.makeDir()
|
||||
paths = helpers.Paths({
|
||||
'cloud_dir': c_root,
|
||||
'upstart_dir': up_root,
|
||||
})
|
||||
freq = PER_ALWAYS
|
||||
h = upstart_job.UpstartJobPartHandler(paths)
|
||||
# No files should be written out when
|
||||
# the frequency is ! per-instance
|
||||
h.handle_part('', handlers.CONTENT_START,
|
||||
None, None, None)
|
||||
h.handle_part('blah', 'text/upstart-job',
|
||||
'test.conf', 'blah', freq)
|
||||
h.handle_part('', handlers.CONTENT_END,
|
||||
None, None, None)
|
||||
self.assertEquals(0, len(os.listdir(up_root)))
|
||||
|
||||
def test_upstart_frequency_single(self):
|
||||
c_root = self.makeDir()
|
||||
up_root = self.makeDir()
|
||||
paths = helpers.Paths({
|
||||
'cloud_dir': c_root,
|
||||
'upstart_dir': up_root,
|
||||
})
|
||||
freq = PER_INSTANCE
|
||||
h = upstart_job.UpstartJobPartHandler(paths)
|
||||
# No files should be written out when
|
||||
# the frequency is ! per-instance
|
||||
h.handle_part('', handlers.CONTENT_START,
|
||||
None, None, None)
|
||||
h.handle_part('blah', 'text/upstart-job',
|
||||
'test.conf', 'blah', freq)
|
||||
h.handle_part('', handlers.CONTENT_END,
|
||||
None, None, None)
|
||||
self.assertEquals(1, len(os.listdir(up_root)))
|
Loading…
x
Reference in New Issue
Block a user