Added testing and basic tests