summaryrefslogtreecommitdiff
path: root/gerber/tests/test_common.py
blob: 0224c485012049e99a9920555a5799a1f0939a70 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#! /usr/bin/env python
# -*- coding: utf-8 -*-

# Author: Hamilton Kibbe <ham@hamiltonkib.be>
from ..exceptions import ParseError
from ..common import read, loads
from ..excellon import ExcellonFile
from ..rs274x import GerberFile
from .tests import *

import os


NCDRILL_FILE = os.path.join(os.path.dirname(__file__),
                            'resources/ncdrill.DRD')
TOP_COPPER_FILE = os.path.join(os.path.dirname(__file__),
                               'resources/top_copper.GTL')


def test_file_type_detection():
    """ Test file type detection
    """
    ncdrill = read(NCDRILL_FILE)
    top_copper = read(TOP_COPPER_FILE)
    assert_true(isinstance(ncdrill, ExcellonFile))
    assert_true(isinstance(top_copper, GerberFile))


def test_load_from_string():
    with open(NCDRILL_FILE, 'rU') as f:
        ncdrill = loads(f.read())
    with open(TOP_COPPER_FILE, 'rU') as f:
        top_copper = loads(f.read())
    assert_true(isinstance(ncdrill, ExcellonFile))
    assert_true(isinstance(top_copper, GerberFile))


def test_file_type_validation():
    """ Test file format validation
    """
    assert_raises(ParseError, read, __file__)