Beispiel #1
0
    def test_abnormal(self, invalid_excel_file_path, table_name, start_row, expected):
        loader = ptr.ExcelTableFileLoader(invalid_excel_file_path)
        loader.table_name = table_name
        loader.start_row = start_row

        for tabletuple in loader.load():
            assert tabletuple == []
Beispiel #2
0
    def test_null_table_name(self, valid_excel_file_path, table_name, expected):
        loader = ptr.ExcelTableFileLoader(valid_excel_file_path)
        loader.table_name = table_name

        with pytest.raises(expected):
            for _tabletuple in loader.load():
                pass
Beispiel #3
0
    def test_normal(self, monkeypatch, value, source, expected):
        loader = ptr.ExcelTableFileLoader(source)
        loader.table_name = value

        monkeypatch.setattr(ptr.ExcelTableFileLoader, "_sheet_name", self.monkey_property)

        assert loader.make_table_name() == expected
Beispiel #4
0
    def test_normal(self, valid_excel_file_path, table_name, start_row, expected_list):
        loader = ptr.ExcelTableFileLoader(valid_excel_file_path)
        loader.table_name = table_name
        loader.start_row = start_row

        for table_data in loader.load():
            print("[actual]\n{}".format(dumps_tabledata(table_data)))
            assert table_data.in_tabledata_list(expected_list)
Beispiel #5
0
    def test_normal(self, valid_excel_file_path, table_name, start_row,
                    expected_list):
        loader = ptr.ExcelTableFileLoader(valid_excel_file_path)
        loader.table_name = table_name
        loader.start_row = start_row

        for table_data in loader.load():
            assert table_data.in_tabledata_list(expected_list)
Beispiel #6
0
    def test_normal(self, valid_excel_file_path, table_name, start_row,
                    expected_tabledata):
        loader = ptr.ExcelTableFileLoader(valid_excel_file_path)
        loader.table_name = table_name
        loader.start_row = start_row

        for tabledata, expected in zip(loader.load(), expected_tabledata):
            assert tabledata == expected
Beispiel #7
0
def main():
    file_path = "sample_data.xlsx"

    # create sample data file ---
    workbook = xlsxwriter.Workbook(file_path)

    worksheet = workbook.add_worksheet("samplesheet1")
    table = [
        ["", "", "", ""],
        ["", "a", "b", "c"],
        ["", 1, 1.1, "a"],
        ["", 2, 2.2, "bb"],
        ["", 3, 3.3, "cc"],
    ]
    for row_idx, row in enumerate(table):
        for col_idx, item in enumerate(row):
            worksheet.write(row_idx, col_idx, item)

    worksheet = workbook.add_worksheet("samplesheet2")

    worksheet = workbook.add_worksheet("samplesheet3")
    table = [
        ["", "", ""],
        ["", "", ""],
        ["aa", "ab", "ac"],
        [1, "hoge", "a"],
        [2, "", "bb"],
        [3, "foo", ""],
    ]
    for row_idx, row in enumerate(table):
        for col_idx, item in enumerate(row):
            worksheet.write(row_idx, col_idx, item)

    workbook.close()

    # create table ---
    con = simplesqlite.SimpleSQLite("sample.sqlite", "w")

    loader = pytablereader.ExcelTableFileLoader(file_path)
    for table_data in loader.load():
        con.create_table_from_tabledata(table_data)

    # output ---
    for table_name in con.fetch_table_names():
        print("table: " + table_name)
        print(con.fetch_attr_names(table_name))
        result = con.select(select="*", table_name=table_name)
        for record in result.fetchall():
            print(record)
        print()
    def test_normal(
            self, tmpdir, writer_class, table, header, value, expected):
        test_file_path = tmpdir.join("test.xlsx")

        writer = writer_class()
        writer.open(str(test_file_path))
        writer.make_worksheet(table)
        writer.header_list = header
        writer.value_matrix = value
        writer.iteration_length = len(value)
        writer.write_table_iter()

        writer.close()
        assert writer.first_data_row == 1
        assert writer.last_data_row == 7

        loader = ptr.ExcelTableFileLoader(str(test_file_path))

        for table_data in loader.load():
            assert table_data == expected
    def test_normal(
            self, tmpdir, writer_class, table, header, value, expected):
        test_file_path = tmpdir.join("test.xlsx")

        writer = writer_class()
        writer.open(str(test_file_path))
        writer.make_worksheet(table)
        writer.header_list = header
        writer.value_matrix = value
        writer.write_table()
        writer.close()

        loader = ptr.ExcelTableFileLoader(str(test_file_path))

        for table_data in loader.load():
            expected_dump = ptw.dump_tabledata(expected)
            actual_dump = ptw.dump_tabledata(table_data)

            print("[expected]\n{}".format(expected_dump))
            print("[actual]\n{}".format(actual_dump))

            assert actual_dump == expected_dump
    def test_normal(self, tmpdir, writer_class, table, header, value,
                    expected):
        if writer_class == ptw.ExcelXlsTableWriter and not HAS_XLWT:
            pytest.skip()

        test_file_path = tmpdir.join("test.xlsx")

        writer = writer_class()
        writer.open(str(test_file_path))
        writer.make_worksheet(table)
        writer.header_list = header
        writer.value_matrix = value
        writer.write_table()
        writer.close()

        loader = ptr.ExcelTableFileLoader(str(test_file_path))

        for table_data in loader.load():
            expected_dump = ptw.dump_tabledata(expected)
            actual_dump = ptw.dump_tabledata(table_data)

            print_test_result(expected=expected_dump, actual=actual_dump)

            assert actual_dump == expected_dump
Beispiel #11
0
    def test_null_file_path(self, source, expected):
        loader = ptr.ExcelTableFileLoader(source)

        with pytest.raises(expected):
            for _tabletuple in loader.load():
                pass
Beispiel #12
0
    def test_exception(self, value, source, expected):
        loader = ptr.ExcelTableFileLoader(source)
        loader.table_name = value

        with pytest.raises(expected):
            loader.make_table_name()
worksheet = workbook.add_worksheet("samplesheet3")
table = [
    ["", "", ""],
    ["", "", ""],
    ["aa", "ab", "ac"],
    [1, "hoge", "a"],
    [2, "", "bb"],
    [3, "foo", ""],
]
for row_idx, row in enumerate(table):
    for col_idx, item in enumerate(row):
        worksheet.write(row_idx, col_idx, item)

workbook.close()

# create table ---
con = simplesqlite.SimpleSQLite("sample.sqlite", "w")

loader = pytablereader.ExcelTableFileLoader(file_path)
for table_data in loader.load():
    con.create_table_from_tabledata(table_data)

# output ---
for table_name in con.fetch_table_names():
    print("table: " + table_name)
    print(con.fetch_attr_names(table_name))
    result = con.select(select="*", table_name=table_name)
    for record in result.fetchall():
        print(record)
    print()