summaryrefslogtreecommitdiff
path: root/tests/test_logger.py
diff options
context:
space:
mode:
authorBen Howard <ben.howard@ubuntu.com>2015-08-14 16:40:41 -0600
committerusd-importer <ubuntu-server@lists.ubuntu.com>2015-08-15 14:33:21 +0000
commitf78b9650d0e7b008d430673a075aad95dda863be (patch)
treea6749619e78483d45a66d4bad4d6e922391541fc /tests/test_logger.py
parent0afc048f2a6ff3638ecfa33e7ded5dc8dddf041a (diff)
downloadvyos-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.py87
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()