diff options
author | Ben Howard <ben.howard@ubuntu.com> | 2016-02-08 16:33:07 -0700 |
---|---|---|
committer | usd-importer <ubuntu-server@lists.ubuntu.com> | 2016-02-09 00:59:05 +0000 |
commit | 5eee50d19640c3c1ee5c2584d6f69e0ce5423214 (patch) | |
tree | b0c8b3050a2db0059ce9f17a290297de89ff6986 /tests/utils/test_text_util.py | |
parent | db0601bdd8753aad210589ec9ce22ee67984df27 (diff) | |
parent | 9bb648958a406f80ab2097969e2e1ac65fec11a0 (diff) | |
download | vyos-walinuxagent-5eee50d19640c3c1ee5c2584d6f69e0ce5423214.tar.gz vyos-walinuxagent-5eee50d19640c3c1ee5c2584d6f69e0ce5423214.zip |
Import patches-applied version 2.1.3-0ubuntu1 to applied/ubuntu/xenial-proposed
Imported using git-ubuntu import.
Changelog parent: db0601bdd8753aad210589ec9ce22ee67984df27
Unapplied parent: 9bb648958a406f80ab2097969e2e1ac65fec11a0
New changelog entries:
* New upstream release (LP: #1543359):
- Bug fixes for extension handling
- Feature enablement for AzureStack.
Diffstat (limited to 'tests/utils/test_text_util.py')
-rw-r--r-- | tests/utils/test_text_util.py | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/tests/utils/test_text_util.py b/tests/utils/test_text_util.py new file mode 100644 index 0000000..0e8cc7d --- /dev/null +++ b/tests/utils/test_text_util.py @@ -0,0 +1,79 @@ +# Copyright 2014 Microsoft Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# 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 + +from tests.tools import * +import uuid +import unittest +import os +from azurelinuxagent.future import ustr +import azurelinuxagent.utils.textutil as textutil +from azurelinuxagent.utils.textutil import Version + +class TestTextUtil(AgentTestCase): + def test_get_password_hash(self): + password_hash = textutil.gen_password_hash("asdf", 6, 10) + self.assertNotEquals(None, password_hash) + password_hash = textutil.gen_password_hash("asdf", 6, 0) + self.assertNotEquals(None, password_hash) + + def test_remove_bom(self): + #Test bom could be removed + data = ustr(b'\xef\xbb\xbfhehe', encoding='utf-8') + data = textutil.remove_bom(data) + self.assertNotEquals(0xbb, data[0]) + + #Test string without BOM is not affected + data = u"hehe" + data = textutil.remove_bom(data) + self.assertEquals(u"h", data[0]) + + def test_version_compare(self): + self.assertTrue(Version("1.0") < Version("1.1")) + self.assertTrue(Version("1.9") < Version("1.10")) + self.assertTrue(Version("1.9.9") < Version("1.10.0")) + self.assertTrue(Version("1.0.0.0") < Version("1.2.0.0")) + + self.assertTrue(Version("1.0") <= Version("1.1")) + self.assertTrue(Version("1.1") > Version("1.0")) + self.assertTrue(Version("1.1") >= Version("1.0")) + + self.assertTrue(Version("1.0") == Version("1.0")) + self.assertTrue(Version("1.0") >= Version("1.0")) + self.assertTrue(Version("1.0") <= Version("1.0")) + + self.assertTrue(Version("1.9") < "1.10") + self.assertTrue("1.9" < Version("1.10")) + + def test_get_bytes_from_pem(self): + content = ("-----BEGIN CERTIFICATE-----\n" + "certificate\n" + "-----END CERTIFICATE----\n") + base64_bytes = textutil.get_bytes_from_pem(content) + self.assertEquals("certificate", base64_bytes) + + + content = ("-----BEGIN PRIVATE KEY-----\n" + "private key\n" + "-----END PRIVATE Key-----\n") + base64_bytes = textutil.get_bytes_from_pem(content) + self.assertEquals("private key", base64_bytes) + +if __name__ == '__main__': + unittest.main() |