pass template object as argument of constructor
improve test coverage