Adding nearly all of the remaining tests