Coverage for jstark / features / max_net_price.py: 100%

12 statements  

« prev     ^ index     » next       coverage.py v7.13.4, created at 2026-03-23 22:34 +0000

1"""MaxNetPrice feature""" 

2 

3import pyspark.sql.functions as f 

4from pyspark.sql import Column 

5 

6from jstark.features.max_feature import Max 

7 

8 

9class MaxNetPrice(Max): 

10 def column_expression(self) -> Column: 

11 return f.try_divide(f.col("NetSpend"), f.col("Quantity")) 

12 

13 @property 

14 def description_subject(self) -> str: 

15 return "Maximum of (NetSpend / Quantity)" 

16 

17 @property 

18 def commentary(self) -> str: 

19 return ( 

20 "The net price is calculated as the net " 

21 + "spend divided by how many were bought." 

22 )