From 46bb1b83ea0843c25783f86e2033a10aeaed79d2 Mon Sep 17 00:00:00 2001 From: jvoisin Date: Wed, 5 Sep 2018 17:22:17 +0200 Subject: Improve the previous commit --- tests/test_climat2.py | 4 ++-- tests/test_policy.py | 31 +++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 tests/test_policy.py (limited to 'tests') diff --git a/tests/test_climat2.py b/tests/test_climat2.py index 6ee84d5..9614347 100644 --- a/tests/test_climat2.py +++ b/tests/test_climat2.py @@ -8,13 +8,13 @@ class TestHelp(unittest.TestCase): def test_help(self): proc = subprocess.Popen(['./mat2', '--help'], stdout=subprocess.PIPE) stdout, _ = proc.communicate() - self.assertIn(b'usage: mat2 [-h] [-v] [-l] [-c] [-V] [-u POLICY] [-s | -L] [files [files ...]]', + self.assertIn(b'usage: mat2 [-h] [-v] [-l] [-c] [-V] [-u policy] [-s | -L] [files [files ...]]', stdout) def test_no_arg(self): proc = subprocess.Popen(['./mat2'], stdout=subprocess.PIPE) stdout, _ = proc.communicate() - self.assertIn(b'usage: mat2 [-h] [-v] [-l] [-c] [-V] [-u POLICY] [-s | -L] [files [files ...]]', + self.assertIn(b'usage: mat2 [-h] [-v] [-l] [-c] [-V] [-u policy] [-s | -L] [files [files ...]]', stdout) diff --git a/tests/test_policy.py b/tests/test_policy.py new file mode 100644 index 0000000..39282b1 --- /dev/null +++ b/tests/test_policy.py @@ -0,0 +1,31 @@ +#!/usr/bin/python3 + +import unittest +import shutil +import os + +from libmat2 import office + +class TestPolicy(unittest.TestCase): + def test_policy_omit(self): + shutil.copy('./tests/data/embedded.docx', './tests/data/clean.docx') + p = office.MSOfficeParser('./tests/data/clean.docx') + p.unknown_member_policy = 'omit' + self.assertTrue(p.remove_all()) + os.remove('./tests/data/clean.docx') + + def test_policy_keep(self): + shutil.copy('./tests/data/embedded.docx', './tests/data/clean.docx') + p = office.MSOfficeParser('./tests/data/clean.docx') + p.unknown_member_policy = 'keep' + self.assertTrue(p.remove_all()) + os.remove('./tests/data/clean.docx') + + def test_policy_unknown(self): + shutil.copy('./tests/data/embedded.docx', './tests/data/clean.docx') + p = office.MSOfficeParser('./tests/data/clean.docx') + p.unknown_member_policy = 'unknown_policy_name_totally_invalid' + with self.assertRaises(ValueError): + p.remove_all() + os.remove('./tests/data/clean.docx') + -- cgit v1.3