blocks-transformer/test_block.py
Ankur Malik d94d65ed2d
All checks were successful
Build and Push Docker Image / test (push) Successful in 1m50s
Build and Push Docker Image / build_and_push (push) Successful in 3m7s
Add pd v3 pre processing block
2025-12-04 10:50:08 -05:00

38 lines
3.2 KiB
Python

import unittest
from block import __main__
input_json = {"US36SD": "999", "score_results": "603", "US20S": "119", "INST_TRD": "28", "PER201": "1", "G106S": "220", "AT104S": "8", "BALMAG01": "188", "TRV04": "5", "US51A": "12", "PER222": "1", "PER235": "1949", "FI36SD": "999", "IN02S": "1", "TRV03": "3", "G225S": "606", "AEPMAG05": "297", "G205B": "611", "IN12S": "1", "G210S": "-1", "US28S": "1449", "CTM18": "-8", "CV25": "0", "AT36SD": "6", "AT01S": "36", "INAP01": "175", "FI20S": "119", "RET201": "-2", "CV13": "3", "G218A": "0", "OF20S": "-1", "CV26": "3", "FI35S": "1225", "SC20S": "-1", "G234S": "-4", "US24S": "1", "G250CD": "1", "PER225": "1.51", "G205S": "611", "AGG403": "205", "AGG903": "1", "US35S": "1225", "US32S": "1225", "AGG423": "1344", "AGG424": "484", "G300S": "1", "G051S": "3", "RTL_TRD": "8", "US02S": "1", "G250BD": "1", "AGG402": "210", "RT20S": "114", "PER202": "1", "FI02S": "1", "SE20S": "-1", "US36S": "999", "G230S": "-1", "PAYMNT06": "1.31", "US34S": "85", "G020S": "11", "RE32S": "2384", "NOMT_TRD": "36", "CO06S": "-1", "FI34S": "85", "CTA17": "24", "BR33S": "1148", "AEPMAG04": "286", "G406S": "-4", "CT321": "65", "CTM23": "-8", "SE36S": "-1", "BI21S": "-1", "TRV06": "8", "RVDEXQ2": "9", "G213A": "-4", "AU20S": "-1", "CTC20": "-5", "OF35S": "-1", "SCC92": "-1", "PER224": "1.15", "FI101S": "1225", "S204S": "-4", "G404S": "-4", "AGG516": "1193", "US12S": "1", "CTA18": "5", "SE34S": "-1", "RT36S": "6", "FI32S": "1225", "RE36SD": "6", "SE21S": "-1", "RVLR14": "RTRRRRRR", "OF29S": "-1", "OF09S": "-1", "LQR325YR": "-255", "AGG512": "1169", "FI03S": "1", "FI33S": "1225", "G416S": "-4", "FR32S": "-1", "UTLMAG01": "112", "PER223": "1.31", "G990S": "-4", "US30S": "100", "G417S": "-4", "SCBALM01": "-1", "SC21S": "-1", "G301S": "1", "JT20S": "-1", "ST01S": "0", "PER203": "1.31", "RLE902": "-1", "JT33S": "-1", "G102S": "-4", "FR21S": "-1", "PAYMNT07": "1", "G405S": "-4", "SE36SD": "-1", "US03S": "1", "MT21S": "-1", "LQA232YR": "100", "OF21S": "-1", "G407S": "-4", "JT70S": "-1", "AGG902": "2", "US01S": "26", "SE02S": "-1", "AT35B": "1037", "US101S": "1225", "PDMAG01": "310", "PER204": "1.15", "PER205": "1.48", "SE21CD": "-1", "TRV10": "12", "PER253": "54", "FI28S": "1449", "RLE907": "-1", "SE06S": "-1", "AUT201": "-1", "SE09S": "-1"}
class TestBlock(unittest.TestCase):
def test_block_smoke_runs(self):
results = __main__(**input_json)
print(results)
self.assertIsInstance(results, dict)
# sanity on structure
self.assertIn("results", results)
self.assertIsInstance(results["results"], list)
self.assertGreater(len(results["results"]), 0)
first = results["results"][0]
self.assertIsInstance(first, dict)
# check keys exist
self.assertIn("model_a_features", first)
self.assertIn("model_b_features", first)
self.assertIn("model_t_features", first)
# optional: check they're dicts (not None/str/etc.)
self.assertIsInstance(first["model_a_features"], dict)
self.assertIsInstance(first["model_b_features"], dict)
self.assertIsInstance(first["model_t_features"], dict)
if __name__ == "__main__": # pragma: no cover
unittest.main()