Added all required constructors and updated testcases