update tests
Add cart implementation