Added unit tests for SaleItem

Added unit tests for all the methods in SaleItem. Also fixed a bug in getWeight().