### Question:
LineageHolder implements IRequiresMetaverseBuilder { public String getId() { if ( id == null && executionProfile != null ) { id = executionProfile.getPath(); } return id; } LineageHolder();  LineageHolder( IExecutionProfile profile, IMetaverseBuilder builder ); IExecutionProfile getExecutionProfile(); void setExecutionProfile( IExecutionProfile executionProfile ); @Override IMetaverseBuilder getMetaverseBuilder(); @Override void setMetaverseBuilder( IMetaverseBuilder metaverseBuilder ); Future getLineageTask(); void setLineageTask( Future lineageTask ); String getId(); void setId( String id ); void addSubTransOrJob( final Object executable ); List<Object> getSubTransAndJobs();  }### Answer:
@Test public void testGetIdFromExecutionProfile() throws Exception { lineageHolder = new LineageHolder(); when( executionProfile.getPath() ).thenReturn( "profile/path" ); lineageHolder = new LineageHolder( executionProfile, builder ); assertEquals( "profile/path", lineageHolder.getId() ); }