Пример #1
0
def fill_the_form_using_the_data_from_the_excel_file():
    excel = Files()
    excel.open_workbook("SalesData.xlsx")
    sales_reps = excel.read_worksheet_as_table(header=True)
    excel.close_workbook()
    for sales_rep in sales_reps:
        fill_and_submit_the_form_for_one_person(sales_rep)
Пример #2
0
def read_excel_worksheet(path, worksheet):
    lib = Files()
    lib.open_workbook(path)
    try:
        return lib.read_worksheet(worksheet)
    finally:
        lib.close_workbook()
Пример #3
0
def test_read_worksheet_with_formulas(excel_file, data_only):
    library = Files()
    excel_path = RESOURCES_DIR / excel_file
    library.open_workbook(excel_path, data_only=data_only)
    assert library.get_worksheet_value(2, "A") == 1
    assert library.get_worksheet_value(2, "B") == 3
    if library.workbook.path.suffix == ".xlsx":
        assert library.get_worksheet_value(2, "C") == 4 if data_only else "=A2+B2"
    else:
        assert library.get_worksheet_value(2, "C") == 4
    library.close_workbook()
Пример #4
0
class ExcelUtility:
    def __init__(self, path_to_excel_file: str):
        self.path_to_file = path_to_excel_file
        self.lib = Files()

    def open_file(self):
        if self.lib is None:
            self.lib = Files()

        self.lib.open_workbook(self.path_to_file)

    def set_active_sheet(self, sheet_name: str):
        self.lib.set_active_worksheet(sheet_name)

    def write_agencies_to_file(self, agencies: []):
        row_number: int = 2
        for item in agencies:
            agency: AgencyModel = item
            self.lib.set_worksheet_value(row_number, 1, agency.name)
            self.lib.set_worksheet_value(row_number, 2, agency.amount)
            self.lib.set_worksheet_value(row_number, 3, agency.link)
            row_number += 1

    def write_table_page_data_to_file(self, data: [], row_number: int = 2):
        for item in data:
            indv_invst_item: IndividualInvestmentsModel = item
            self.lib.set_worksheet_value(row_number, 1, indv_invst_item.uii)
            self.lib.set_worksheet_value(row_number, 2,
                                         indv_invst_item.uii_link)
            self.lib.set_worksheet_value(row_number, 3, indv_invst_item.bureau)
            self.lib.set_worksheet_value(row_number, 4,
                                         indv_invst_item.investment_title)
            self.lib.set_worksheet_value(row_number, 5,
                                         indv_invst_item.total_fy_spending)
            self.lib.set_worksheet_value(row_number, 6, indv_invst_item.type_)
            self.lib.set_worksheet_value(row_number, 7,
                                         indv_invst_item.cio_rating)
            self.lib.set_worksheet_value(row_number, 8,
                                         indv_invst_item.project_num)
            row_number += 1

        return row_number

    def save_and_close_file(self) -> object:
        if self.lib is not None:
            self.lib.save_workbook(self.path_to_file)
            self.lib.close_workbook()
Пример #5
0
def library(request):
    lib = Files()
    lib.open_workbook(request.param)
    yield lib
    lib.close_workbook()
Пример #6
0
def test_create_after_close(fmt):
    library = Files()
    library.create_workbook(fmt=fmt)
    library.close_workbook()
    library.create_workbook(fmt=fmt)
Пример #7
0
def _library(excel_file):
    lib = Files()
    excel_path = RESOURCES_DIR / excel_file
    lib.open_workbook(excel_path)
    yield lib
    lib.close_workbook()
Пример #8
0
def test_wrong_extension_fallback(filename):
    library = Files()
    library.open_workbook(filename)
    assert library.workbook is not None
    library.close_workbook()