Option, Either semigroup tests