summaryrefslogtreecommitdiff
path: root/gerber/tests/test_excellon.py
diff options
context:
space:
mode:
authorHamilton Kibbe <hamilton.kibbe@gmail.com>2015-02-18 04:31:23 -0500
committerHamilton Kibbe <hamilton.kibbe@gmail.com>2015-02-18 04:31:23 -0500
commit288ac27084b47166ac662402ea340d0aa25d8f56 (patch)
tree792374b99932120fb08e1d689518eed69e0feccb /gerber/tests/test_excellon.py
parentbc532997aecc60f5a939f9ca6ba55dd3eae27a42 (diff)
downloadgerbonara-288ac27084b47166ac662402ea340d0aa25d8f56.tar.gz
gerbonara-288ac27084b47166ac662402ea340d0aa25d8f56.tar.bz2
gerbonara-288ac27084b47166ac662402ea340d0aa25d8f56.zip
Get unit conversion working for Gerber/Excellon files
Started operations module for file operations/transforms
Diffstat (limited to 'gerber/tests/test_excellon.py')
-rw-r--r--gerber/tests/test_excellon.py26
1 files changed, 25 insertions, 1 deletions
diff --git a/gerber/tests/test_excellon.py b/gerber/tests/test_excellon.py
index ea067b5..24cf793 100644
--- a/gerber/tests/test_excellon.py
+++ b/gerber/tests/test_excellon.py
@@ -2,12 +2,13 @@
# -*- coding: utf-8 -*-
# Author: Hamilton Kibbe <ham@hamiltonkib.be>
+import os
+
from ..cam import FileSettings
from ..excellon import read, detect_excellon_format, ExcellonFile, ExcellonParser
from ..excellon_statements import ExcellonTool
from tests import *
-import os
NCDRILL_FILE = os.path.join(os.path.dirname(__file__),
'resources/ncdrill.DRD')
@@ -37,6 +38,29 @@ def test_bounds():
def test_report():
ncdrill = read(NCDRILL_FILE)
+
+def test_conversion():
+ import copy
+ ncdrill = read(NCDRILL_FILE)
+ assert_equal(ncdrill.settings.units, 'inch')
+ ncdrill_inch = copy.deepcopy(ncdrill)
+ ncdrill.to_metric()
+ assert_equal(ncdrill.settings.units, 'metric')
+
+ for tool in ncdrill_inch.tools.itervalues():
+ tool.to_metric()
+ for primitive in ncdrill_inch.primitives:
+ primitive.to_metric()
+ for statement in ncdrill_inch.statements:
+ statement.to_metric()
+
+ for m_tool, i_tool in zip(ncdrill.tools.itervalues(), ncdrill_inch.tools.itervalues()):
+ assert_equal(i_tool, m_tool)
+
+ for m, i in zip(ncdrill.primitives,ncdrill_inch.primitives):
+ assert_equal(m, i)
+
+
def test_parser_hole_count():
settings = FileSettings(**detect_excellon_format(NCDRILL_FILE))
p = ExcellonParser(settings)