ProjectComponentImpl implements ProjectComponent { @Override public void setProject(Project project) { this.project = requireNonNull(project); }  @ExecuteBefore(INITIALIZED) void loadProjectFromMetadata(@WithState(INITIALIZED) ApplicationMetadata metadata); @ExecuteBefore(STARTED) void checkSpeedmentVersion(Injector injector); @Override Project getProject(); @Override void setProject(Project project);  }
@Test void setProject() { final Project oldProject = instance.getProject(); instance.setProject(newProject("new-project")); assertNotEquals(oldProject.getName(), instance.getProject().getName()); }