blob: 857881cb4d699605340c5e9064cbde89532e908b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# This file is part of cloud-init. See LICENSE file for license information.
"""cloud-init Integration Test Verify Script."""
from tests.cloud_tests.testcases import base
class TestCommandOutputSimple(base.CloudTestCase):
"""Test functionality of simple output redirection."""
def test_output_file(self):
"""Ensure that the output file is not empty and has all stages."""
data = self.get_data_file('cloud-init-test-output')
self.assertNotEqual(len(data), 0, "specified log empty")
self.assertEqual(self.get_config_entry('final_message'),
data.splitlines()[-1].strip())
# TODO: need to test that all stages redirected here
def test_no_warnings_in_log(self):
"""Warnings should not be found in the log.
This class redirected stderr and stdout, so it expects to find
a warning in cloud-init.log to that effect."""
redirect_msg = 'Stdout, stderr changing to'
warnings = [
l for l in self.get_data_file('cloud-init.log').splitlines()
if 'WARN' in l]
self.assertEqual(
[], [w for w in warnings if redirect_msg not in w],
msg="'WARN' found inside cloud-init.log")
self.assertEqual(
1, len(warnings),
msg="Did not find %s in cloud-init.log" % redirect_msg)
# vi: ts=4 expandtab
|