INSTANTIATE a uvm test class into another uvm test

Hi,

Instantiating a uvm test into another uvm test (not inheriting), is it legal?
I know that it is not legal, as we will have the multiple instances of top level environments.

The reason why I am asking this question is, the reaction I am getting from people whenever I said that uvm test is not vertically re-usable (we can’t OR are not allowed to re-use the sub IP’s test in higher level system level test) is some kind of unacceptable surprise for them.
I recommend them to wrap the sequences that they run in IP level test into one big virtual sequence, so we can re-use that as it is in higher level.

It will be helpful if the experts in this forum give some good example and good explanation on why instantiating a uvm test into another is illegal.
Actually this is not clearly mentioned about anywhere. Perhaps, it is because the reason is too obvious :)

Thanks,
Baser

A “test” is not reusable in that sense. A test is a thin, top-level, master of all masters component.Only one component can fulfill that role. The environments and sequences do the bulk of the work and can be configured to be nested.