コード例 #1
0
ファイル: test_csvparser.py プロジェクト: ransage/csv2docx
from csv2docx import CsvParser, MySettings, JsonError, CrossRefError, utils, DocxConfig
import unittest
from sys import stderr as err
import os
import csv
import inspect

THIS_FOLDER = os.path.abspath(os.path.dirname(__file__))

JSON_FILE = list(utils.locator('test_settings.json'))[0] # Only takes first
DEFAULT_INPUT_FILE = list(utils.locator('input.csv'))[0]
DEFAULT_OUTPUT_FILE = 'test/output.docx'


# TODO: make delimeter and quotechar json settings
def build_ref_dict(filename):
    ref_dict = {}
    with open(filename, 'U') as csvfile:
        delim = ','
        reader = csv.reader(csvfile, delimiter=delim, quotechar='"')
        for row in reader:
            if len(row):
                id = utils.int_repr(row[0])
                if id == None:
                    continue
                ref_dict[id] = row
            # end if
        # end for
    # end with
    return ref_dict
# end build_ref_dict
コード例 #2
0
ファイル: test_docxconfig.py プロジェクト: ransage/csv2docx
from csv2docx import DocxConfig, utils
import unittest
from sys import stderr as err
import os
import csv
import inspect
import time

DEFAULT_INPUT_FILE = list(utils.locator('input.csv'))[0]

class TestDocxConfig(unittest.TestCase):

    def setUp(self):
        pass
    # end setUp

    def tearDown(self):
        pass

    def test_clean_changes_slash_r_ascii(self):
        test_text = 'aoeuu\naoeu\raoeu\r\naoeu'
        self.assertEqual(test_text.replace('\r', '\n'),
                         DocxConfig.clean(test_text))

    def test_clean_effect_on_unicode(self):
        with open(DEFAULT_INPUT_FILE) as input:
            test_text = input.read()
        self.assertEqual(test_text.replace('\r', '\n'),
                         DocxConfig.clean(test_text))