43 lines
1.5 KiB
Python
43 lines
1.5 KiB
Python
import unittest
|
|
|
|
import build_canonical_layer
|
|
|
|
|
|
class CanonicalLayerTests(unittest.TestCase):
|
|
def test_build_canonical_layer_seeds_one_canonical_per_observed_product(self):
|
|
observed_rows = [
|
|
{
|
|
"observed_product_id": "gobs_1",
|
|
"representative_name_norm": "GALA APPLE",
|
|
"representative_brand": "SB",
|
|
"representative_variant": "",
|
|
"representative_size_value": "5",
|
|
"representative_size_unit": "lb",
|
|
"representative_pack_qty": "",
|
|
"representative_measure_type": "weight",
|
|
},
|
|
{
|
|
"observed_product_id": "gobs_2",
|
|
"representative_name_norm": "ROTINI",
|
|
"representative_brand": "",
|
|
"representative_variant": "",
|
|
"representative_size_value": "16",
|
|
"representative_size_unit": "oz",
|
|
"representative_pack_qty": "",
|
|
"representative_measure_type": "weight",
|
|
},
|
|
]
|
|
|
|
canonicals, links = build_canonical_layer.build_canonical_layer(observed_rows)
|
|
|
|
self.assertEqual(2, len(canonicals))
|
|
self.assertEqual(2, len(links))
|
|
self.assertEqual("GALA APPLE", canonicals[0]["canonical_name"])
|
|
self.assertEqual("5", canonicals[0]["normalized_quantity"])
|
|
self.assertEqual("lb", canonicals[0]["normalized_quantity_unit"])
|
|
self.assertEqual("seed_observed_product", links[0]["link_method"])
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|