operations tests added and edge cases are tested