From dce92efdbc3f689197c6d46ff3f37cecb7c81a40 Mon Sep 17 00:00:00 2001
From: Trygve Laugstøl <trygvis@inamo.no>
Date: Tue, 12 Dec 2017 13:00:00 +0100
Subject: o Adding a test for kicad-make-pos.

---
 test/tool/test_kicad_make_pos.py | 27 +++++++++++++++++++++++++++
 test/utils.py                    | 26 ++++++++++++++++++++++++++
 2 files changed, 53 insertions(+)
 create mode 100644 test/tool/test_kicad_make_pos.py
 create mode 100644 test/utils.py

(limited to 'test')

diff --git a/test/tool/test_kicad_make_pos.py b/test/tool/test_kicad_make_pos.py
new file mode 100644
index 0000000..447b497
--- /dev/null
+++ b/test/tool/test_kicad_make_pos.py
@@ -0,0 +1,27 @@
+import utils
+import argparse
+import os.path
+from io import StringIO
+
+basedir = os.path.dirname(os.path.abspath(__file__))
+
+def test_basic():
+    argv = [
+      "ee",
+      "--kicad-pcb",
+      os.path.join(basedir, "../kicad_pcb/parser-1.kicad_pcb")
+    ]
+    buf = StringIO()
+    try:
+        with utils.make_env(argv=argv, stdout=buf): 
+            import ee.tools.kicad_make_pos
+    except SystemExit as e:
+        raise e
+    finally:
+        print("Output")
+        buf.seek(0)
+        count = 0
+        for l in buf.readlines():
+            print(l.rstrip())
+            count = count + 1
+        assert count > 3
diff --git a/test/utils.py b/test/utils.py
new file mode 100644
index 0000000..5c67f92
--- /dev/null
+++ b/test/utils.py
@@ -0,0 +1,26 @@
+import sys
+
+class make_env(object):
+    def __init__(self, argv=None, stdout=None):
+        self.argv = argv
+        self.stdout = stdout
+
+    def __enter__(self):
+        self.old_argv = sys.argv
+        if self.argv:
+            sys.argv = self.argv
+
+        self.old_stdout = sys.stdout
+        self.old_stderr = sys.stderr
+        if self.stdout:
+            sys.stdout = self.stdout
+            sys.stderr = self.stdout
+
+    def __exit__(self, *args):
+        if self.old_argv:
+            sys.argv = self.old_argv
+
+        if self.old_stdout:
+            sys.stdout = self.old_stdout
+        if self.old_stderr:
+            sys.stderr = self.old_stderr
-- 
cgit v1.2.3