testing framework andn a few tests added