completed ajax cart with tests