[apparmor] [patch] Adjust test-aa.py for python2
Tyler Hicks
tyhicks at canonical.com
Thu Dec 17 16:20:10 UTC 2015
On 2015-11-29 22:34:43, Christian Boltz wrote:
> Hello,
>
> $subject.
>
> This means:
> - expect unicode (instead of str) when reading from a file in py2
> - convert keys() result to a set to avoid test failures because of
> dict_keys type
>
> After this change, all tests work for both py2 and py3.
>
>
> I propose this patch for trunk and 2.10.
> (Nothing to fix in 2.9 - it doesn't have this test.)
>
>
>
> [ 22-adjust-test-aa-for-py2.diff ]
>
> === modified file ./utils/test/test-aa.py
> --- utils/test/test-aa.py 2015-11-19 17:42:26.329879090 +0100
> +++ utils/test/test-aa.py 2015-11-29 21:44:36.968433594 +0100
> @@ -75,7 +75,7 @@
> class AaTest_create_new_profile(AATest):
> tests = [
> # file content expected interpreter expected abstraction (besides 'base')
> - ('#!/bin/bash\ntrue', ('/bin/bash', 'abstractions/bash')),
> + ('#!/bin/bash\ntrue', (u'/bin/bash', 'abstractions/bash')),
This syntax for unicode strings was introduced for Python 3 in version
3.3:
https://www.python.org/dev/peps/pep-0414/
That means that this change will prevent the test from being run on
python3.2 in Ubuntu 12.04:
$ python3.2 -c "print(u'test')"
File "<string>", line 1
print(u'test')
^
SyntaxError: invalid syntax
That may affect Steve's automated tests so I'm cc'ing him so that he can NAK,
if needed.
If he's good with the change, then...
Acked-by: Tyler Hicks <tyhicks at canonical.com>
... for both branches.
Tyler
> ('foo bar', (None, None)),
> ]
> def _run_test(self, params, expected):
> @@ -89,16 +89,16 @@
> self.assertEqual(profile[program][program]['allow']['path'][exp_interpreter_path]['audit'], set() )
> self.assertEqual(profile[program][program]['allow']['path'][program]['mode'], {'r', '::r'} )
> self.assertEqual(profile[program][program]['allow']['path'][program]['audit'], set() )
> - self.assertEqual(profile[program][program]['allow']['path'].keys(), {exp_interpreter_path, program} )
> + self.assertEqual(set(profile[program][program]['allow']['path'].keys()), {program, exp_interpreter_path} )
> else:
> self.assertEqual(profile[program][program]['allow']['path'][program]['mode'], {'r', '::r', 'm', '::m'} )
> self.assertEqual(profile[program][program]['allow']['path'][program]['audit'], set() )
> - self.assertEqual(profile[program][program]['allow']['path'].keys(), {program} )
> + self.assertEqual(set(profile[program][program]['allow']['path'].keys()), {program} )
>
> if exp_abstraction:
> - self.assertEqual(profile[program][program]['include'].keys(), {exp_abstraction, 'abstractions/base'})
> + self.assertEqual(set(profile[program][program]['include'].keys()), {exp_abstraction, 'abstractions/base'})
> else:
> - self.assertEqual(profile[program][program]['include'].keys(), {'abstractions/base'})
> + self.assertEqual(set(profile[program][program]['include'].keys()), {'abstractions/base'})
>
> class AaTest_get_interpreter_and_abstraction(AATest):
> tests = [
>
>
>
> Regards,
>
> Christian Boltz
> --
> > Kann ich auf einen Bootloader (lilo oder grub) verzichten,
> > falls auf der Festplatte nur 2 Partitionen sind
> Klar kannst du. Vorausgesetzt du kannst auch darauf verzichten
> das Betriebssystem zu booten.
> [> Wolfgang Erlenkötter und Hartmut Meyer in suse-linux]
>
>
> --
> AppArmor mailing list
> AppArmor at lists.ubuntu.com
> Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/apparmor
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <https://lists.ubuntu.com/archives/apparmor/attachments/20151217/cac289fd/attachment.pgp>
More information about the AppArmor
mailing list