Пример #1
0
def test_trackingoptions(xec):
    dbconn = xec._XeroExtractConnector__dbconn
    xero = xec._XeroExtractConnector__xero
    ids = xec.extract_trackingcategories()
    xero_data = xero.trackingcategories.all()[0]['Options'][0]
    db_data = dbconn_table_row_dict(dbconn, 'xero_extract_trackingoptions')
    assert dict_compare_keys(db_data, xero_data) == ['->TrackingCategoryID'], 'db table has some columns that xero doesnt'
    assert dbconn_table_num_rows(dbconn, 'xero_extract_trackingoptions') == len(xero.trackingcategories.all()[0]['Options']), 'row count mismatch'
Пример #2
0
def test_contacts(xec):
    dbconn = xec._XeroExtractConnector__dbconn
    xero = xec._XeroExtractConnector__xero
    ids = xec.extract_contacts()
    xero_data = xero.contacts.all()[0]
    db_data = dbconn_table_row_dict(dbconn, 'xero_extract_contacts')
    assert dict_compare_keys(db_data, xero_data) == [], 'db table has some columns that xero doesnt'
    assert dbconn_table_num_rows(dbconn, 'xero_extract_contacts') == len(xero.contacts.all()), 'row count mismatch'
    assert len(ids) == 44, 'return value messed up'
Пример #3
0
def test_trackingcategories(xec):
    dbconn = xec._XeroExtractConnector__dbconn
    xero = xec._XeroExtractConnector__xero
    ids = xec.extract_trackingcategories()
    xero_data = xero.trackingcategories.all()[0]
    db_data = dbconn_table_row_dict(dbconn, 'xero_extract_trackingcategories')
    assert dict_compare_keys(db_data, xero_data) == [], 'db table has some columns that xero doesnt'
    assert dbconn_table_num_rows(dbconn, 'xero_extract_trackingcategories') == len(xero.trackingcategories.all()), 'row count mismatch'
    assert ids == ['fa437cfd-f005-4538-ae84-943857da5c8c'], 'return value messed up'
Пример #4
0
def test_extract_by_type_name(nsec, type_name):
    dbconn = nsec._NetSuiteExtractConnector__dbconn
    ns = nsec._NetSuiteExtractConnector__ns
    nsec_extract_fn = getattr(nsec, f'extract_{type_name}')
    ids = nsec_extract_fn()
    ns_get_all_fn = getattr(getattr(ns, f'{type_name}'), 'get_all')
    ns_data = ns_get_all_fn()
    db_data = dbconn_table_row_dict(dbconn, f'ns_extract_{type_name}')
    assert dict_compare_keys(
        db_data, ns_data[0]) == [], 'db table has some columns that ns doesnt'
    assert dbconn_table_num_rows(
        dbconn,
        f'ns_extract_{type_name}') == len(ns_data), 'row count mismatch'
Пример #5
0
def test_xlc_mock_setup(xlc):
    dbconn = xlc._XeroLoadConnector__dbconn
    assert dbconn_table_num_rows(dbconn, 'xero_load_invoices') == 2, 'Unclean db'
    assert dbconn_table_num_rows(dbconn, 'xero_load_invoice_lineitems') == 4, 'Unclean db'
Пример #6
0
def test_xec_mock_setup(xec):
    # python magic to access private variable for testing db state
    dbconn = xec._XeroExtractConnector__dbconn
    assert dbconn_table_num_rows(dbconn, 'xero_extract_accounts') == 0, 'Unclean db'
    assert dbconn_table_num_rows(dbconn, 'xero_extract_trackingcategories') == 0, 'Unclean db'
    assert dbconn_table_num_rows(dbconn, 'xero_extract_contacts') == 0, 'Unclean db'
Пример #7
0
def test_dbconn_mock_setup(dbconn):
    with pytest.raises(sqlite3.OperationalError) as e:
        rows = dbconn_table_num_rows(dbconn, 'xero_extract_accounts')
Пример #8
0
def test_nslc_mock_setup(nslc):
    dbconn = nslc._NetSuiteLoadConnector__dbconn
    assert dbconn_table_num_rows(dbconn,
                                 'ns_load_vendor_bills') == 1, 'Unclean db'
    assert dbconn_table_num_rows(
        dbconn, 'ns_load_vendor_bill_expenses') == 2, 'Unclean db'
Пример #9
0
def test_nsec_mock_setup(nsec):
    # python magic to access private variable for testing db state
    dbconn = nsec._NetSuiteExtractConnector__dbconn
    assert dbconn_table_num_rows(dbconn,
                                 'ns_extract_accounts') == 0, 'Unclean db'