add new tests and constructors