diff options
author | Ben Howard <ben.howard@ubuntu.com> | 2015-08-14 16:40:41 -0600 |
---|---|---|
committer | usd-importer <ubuntu-server@lists.ubuntu.com> | 2015-08-15 14:33:21 +0000 |
commit | f78b9650d0e7b008d430673a075aad95dda863be (patch) | |
tree | a6749619e78483d45a66d4bad4d6e922391541fc /tests/test_logger.py | |
parent | 0afc048f2a6ff3638ecfa33e7ded5dc8dddf041a (diff) | |
download | vyos-walinuxagent-f78b9650d0e7b008d430673a075aad95dda863be.tar.gz vyos-walinuxagent-f78b9650d0e7b008d430673a075aad95dda863be.zip |
Import patches-unapplied version 2.1.1-0ubuntu1 to ubuntu/wily-proposed
Imported using git-ubuntu import.
Changelog parent: 0afc048f2a6ff3638ecfa33e7ded5dc8dddf041a
New changelog entries:
* New upstream release for Ubuntu.
- Switch to Python3
- Applies Ubuntu specific patches
Diffstat (limited to 'tests/test_logger.py')
-rw-r--r-- | tests/test_logger.py | 87 |
1 files changed, 77 insertions, 10 deletions
diff --git a/tests/test_logger.py b/tests/test_logger.py index d188277..121a8fe 100644 --- a/tests/test_logger.py +++ b/tests/test_logger.py @@ -12,24 +12,91 @@ # See the License for the specific language governing permissions and # limitations under the License. # +# Requires Python 2.4+ and Openssl 1.0+ +# +# Implements parts of RFC 2131, 1541, 1497 and +# http://msdn.microsoft.com/en-us/library/cc227282%28PROT.10%29.aspx +# http://msdn.microsoft.com/en-us/library/cc227259%28PROT.13%29.aspx +import tests.env +import tests.tools as tools +import uuid import unittest -from env import waagent +import azurelinuxagent.logger as logger +from azurelinuxagent.future import text + +class TestLogger(unittest.TestCase): + + def test_no_appender(self): + #The logger won't throw exception even if no appender. + _logger = logger.Logger() + _logger.verbose("Assert no exception") + _logger.info("Assert no exception") + _logger.warn("Assert no exception") + _logger.error("Assert no exception") + + def test_logger_format(self): + _logger = logger.Logger() + _logger.info("This is an exception {0}", Exception("Test")) + _logger.info("This is an number {0}", 0) + _logger.info("This is an boolean {0}", True) + _logger.verbose("{0}") + _logger.verbose("{0} {1}", 0, 1) + _logger.info("{0} {1}", 0, 1) + _logger.warn("{0} {1}", 0, 1) + _logger.error("{0} {1}", 0, 1) + _logger.info("this is a unicode {0}", '\u6211') + _logger.info("this is a utf-8 {0}", '\u6211'.encode('utf-8')) + _logger.info("this is a gbk {0}", 0xff ) + + def test_file_appender(self): + _logger = logger.Logger() + _logger.add_appender(logger.AppenderType.FILE, + logger.LogLevel.INFO, + '/tmp/testlog') + + msg = text(uuid.uuid4()) + _logger.info("Test logger: {0}", msg) + self.assertTrue(tools.simple_file_grep('/tmp/testlog', msg)) + + msg = text(uuid.uuid4()) + _logger.verbose("Verbose should not be logged: {0}", msg) + self.assertFalse(tools.simple_file_grep('/tmp/testlog', msg)) + + _logger.info("this is a unicode {0}", '\u6211') + _logger.info("this is a utf-8 {0}", '\u6211'.encode('utf-8')) + _logger.info("this is a gbk {0}", 0xff) + + def test_concole_appender(self): + _logger = logger.Logger() + _logger.add_appender(logger.AppenderType.CONSOLE, + logger.LogLevel.VERBOSE, + '/tmp/testlog') + + msg = text(uuid.uuid4()) + _logger.info("Test logger: {0}", msg) + self.assertTrue(tools.simple_file_grep('/tmp/testlog', msg)) + + msg = text(uuid.uuid4()) + _logger.verbose("Test logger: {0}", msg) + self.assertFalse(tools.simple_file_grep('/tmp/testlog', msg)) -class TestWAAgentLogger(unittest.TestCase): - def test_log_to_non_exists_dev(self): - logger = waagent.Logger('/tmp/testlog', '/dev/nonexists') - logger.Log("something") + _logger = logger.Logger() + _logger.add_appender(logger.AppenderType.CONSOLE, + logger.LogLevel.INFO, + '/dev/nonexists') + _logger.info("something") def test_log_to_non_exists_file(self): - logger = waagent.Logger('/tmp/nonexists/testlog', '/tmp/testconsole') - logger.Log("something") + _logger = logger.Logger() + _logger.add_appender(logger.AppenderType.FILE, + logger.LogLevel.INFO, + '/tmp/nonexists') + _logger.info("something") + - def test_log_unicode(self): - logger = waagent.Logger('/tmp/testlog', '/tmp/testconsole') - logger.Log(u"anything\u6211\u7231\u5201\u831C".encode("utf-8")) if __name__ == '__main__': unittest.main() |