added tests galore