import pandas as pd from queries.process_mrbts import process_mrbts_data from utils.utils_vars import UtilsVars def test_process_mrbts_data_normalizes_mrbts_before_merge(monkeypatch): dump_dfs = { "MRBTS": pd.DataFrame( { "MRBTS": ["9201", "9202"], "name": ["SITE_A", "SITE_B"], "btsName": ["BTS_A", "BTS_B"], } ), "GNBCF": pd.DataFrame( { "MRBTS": [9201, 9202], "bscId": [1, 2], "bcfId": [11, 22], } ), "WNBTS": pd.DataFrame( { "MRBTS": [9201.0, 9202.0], "wbtsId": [101, 202], } ), "ALD": pd.DataFrame( { "MRBTS": [9201, "9202"], "productCode": ["P1", "P2"], } ), } monkeypatch.setattr("queries.process_mrbts.read_dump_excel", lambda *args, **kwargs: dump_dfs) UtilsVars.all_db_dfs = [ pd.DataFrame( { "ID_BCF": ["1_11", "2_22"], "site_name": ["GSM_A", "GSM_B"], "number_trx_per_bcf": [1, 2], "bcf_config_band": ["G900", "G1800"], "G1800 TRX Per BCF": [0, 1], "G900 TRX Per BCF": [1, 0], } ), pd.DataFrame(), pd.DataFrame(), pd.DataFrame( { "WBTS": [101, 202], "site_name": ["W_A", "W_B"], "wbts_config_band": ["U900", "U2100"], "Number of U2100 cells on WBTS": [0, 1], "Number of U900 cells on WBTS": [1, 0], } ), pd.DataFrame( { "MRBTS": [9201, 9202], "lnbts_name": ["L_A", "L_B"], "lte_config_band": ["L1800", "L800"], "Number of L1800 cells on MRBTS": [1, 0], "Number of L2600 cells on MRBTS": [0, 0], "Number of L800 cells on MRBTS": [0, 1], } ), pd.DataFrame( { "MRBTS": [9201, 9202], "lnbts_name": ["LT_A", "LT_B"], "lte_config_band": ["L2300", "L2300"], "Number of L2300 cells on MRBTS": [1, 1], } ), ] UtilsVars.all_db_dfs_names = [] df_mrbts, _, _ = process_mrbts_data("dummy.xlsb") assert list(df_mrbts["MRBTS"]) == ["9201", "9202"] assert list(df_mrbts["ID_BCF"]) == ["1_11", "2_22"] assert list(df_mrbts["WBTS"]) == [101, 202] assert list(df_mrbts["productCode"]) == ["P1", "P2"]