IProject project = this.getProject("testDotSubProjectAdapter");
NullProgressMonitor monitor = new NullProgressMonitor();
this.initIncrementalApplicationProject(project, monitor);
ProjectAdapter projectAdapter = (ProjectAdapter) project.getAdapter(ProjectAdapter.class);
assertNotNull(projectAdapter);
IPBDotProjectAdapter pbDotProjectAdapter = projectAdapter.getPBDotProjectAdapter();
assertNotNull(pbDotProjectAdapter);
IFolder folder = project.getFolder("foo.subproj");
assertNotNull(folder);
try {
folder.create(true, true, null);
} catch (CoreException e) {
assertNull(e);
}
IFolder fooDotWoFolder = folder.getFolder("foo.wo");
assertNotNull(fooDotWoFolder);
IResource pbDotProjectFile = folder.getFile("PB.project");
assertNotNull(pbDotProjectFile);
IDotWoAdapter dotWoAdapter = (IDotWoAdapter) fooDotWoFolder.getAdapter(IDotWoAdapter.class);
assertNotNull(dotWoAdapter);
IPBDotProjectOwner pbDotProjectOwner = dotWoAdapter.getPBDotProjectOwner();
assertNotNull(pbDotProjectOwner);
IPBDotProjectAdapter pbDotProjectAdapterFromPbDotProjectFile = (IPBDotProjectAdapter) pbDotProjectFile.getAdapter(IPBDotProjectAdapter.class);
assertNotNull(pbDotProjectAdapterFromPbDotProjectFile);
IDotSubprojAdapter dotSubprojAdapter = (IDotSubprojAdapter) folder.getAdapter(IDotSubprojAdapter.class);
assertNotNull(dotSubprojAdapter);
assertTrue(pbDotProjectAdapter != pbDotProjectAdapterFromPbDotProjectFile);
assertTrue(pbDotProjectOwner != projectAdapter);
IPBDotProjectAdapter pbDotProjectAdapterFromSubprojFolder = dotSubprojAdapter.getPBDotProjectAdapter();
assertNotNull(pbDotProjectAdapterFromSubprojFolder);
}