Skip to content

Commit

Permalink
Fixup for test case
Browse files Browse the repository at this point in the history
  • Loading branch information
pbroadbery committed Aug 26, 2023
1 parent 4a22740 commit 405d6b3
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import com.intellij.openapi.roots.ContentEntry;
import com.intellij.openapi.roots.ModifiableRootModel;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.vfs.LocalFileSystem;
import com.intellij.openapi.vfs.VirtualFile;
import org.jetbrains.annotations.NotNull;

Expand Down Expand Up @@ -158,8 +159,9 @@ public void update(@NotNull Module module, @NotNull ModifiableRootModel rootMode
mgr.commit();
LOG.info("Created facet " + facet.getName());

ContentEntry entry = rootModel.getContentEntries()[0];
VirtualFile srcDir = Optional.ofNullable(entry.getFile()).map( f -> f.findChild("src")).orElse(null);
var rootVirtualDir = LocalFileSystem.getInstance().findFileByIoFile(root.getDirectory());
ContentEntry entry = (rootModel.getContentEntries().length == 0) ? null : rootModel.getContentEntries()[0];
VirtualFile srcDir = Optional.ofNullable(rootVirtualDir).map( f -> f.findChild("src")).orElse(null);
if ((srcDir != null) && srcDir.isDirectory()) {
LOG.info("setupProjectStructure::LibUpdate:srcDir: " + srcDir);
entry.addSourceFolder(srcDir, AldorSourceRootType.INSTANCE);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.module.ModifiableModuleModel;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleType;
import com.intellij.openapi.module.ModuleWithNameAlreadyExists;
import com.intellij.openapi.options.ConfigurationException;
import com.intellij.openapi.project.Project;
Expand Down Expand Up @@ -151,8 +152,10 @@ public void setupRootModel(@NotNull final ModifiableRootModel modifiableRootMode
Consumer<ModifiableModuleModel> commitThing = null;

@Override
public @NotNull Module createModule(@NotNull ModifiableModuleModel moduleModel) throws InvalidDataException, IOException, ModuleWithNameAlreadyExists, ConfigurationException, JDOMException {
Module module = super.createModule(moduleModel);
public @NotNull Module createModule(@NotNull ModifiableModuleModel moduleModel) throws InvalidDataException, ConfigurationException {
final ModuleType moduleType = getModuleType();
final Module module = moduleModel.newModule(this.getModuleFilePath(), moduleType.getId());
setupModule(module);
if (commitThing != null) {
commitThing.accept(moduleModel);
}
Expand Down Expand Up @@ -297,10 +300,12 @@ private class GitProjectFinaliseStep extends ModuleWizardStep {
private final AldorRepoProjectDetector detector;
private final WizardContext wizardContext;
private final ProjectFromSourcesBuilderImpl fromSourcesBuilder;
private final ModulesProvider modulesProvider;

GitProjectFinaliseStep(@NotNull WizardContext wizardContext, @NotNull ModulesProvider modulesProvider) {
detector = ProjectStructureDetector.EP_NAME.findExtension(AldorRepoProjectDetector.class);
this.wizardContext = wizardContext;
this.modulesProvider = modulesProvider;
fromSourcesBuilder = new ProjectFromSourcesBuilderImpl(wizardContext, modulesProvider);
}

Expand Down Expand Up @@ -331,7 +336,7 @@ public void updateDataModel() {
detector.configure(fromSourcesBuilder.getProjectDescriptor(detector), projectRoots, settings);
LOG.info("Updating datamodel complete");
setCommitThing(rootModel -> {
fromSourcesBuilder.commit(rootModel.getProject(), rootModel, fromSourcesBuilder.getContext().getModulesProvider());
fromSourcesBuilder.commit(rootModel.getProject(), rootModel, modulesProvider);
});
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,11 @@
import aldor.test_util.JUnits;
import com.intellij.ide.util.projectWizard.ModuleWizardStep;
import com.intellij.ide.util.projectWizard.WizardContext;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.module.ModifiableModuleModel;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleManager;
import com.intellij.openapi.roots.ProjectRootManager;
import com.intellij.openapi.roots.ui.configuration.DefaultModulesProvider;
import com.intellij.openapi.util.ThrowableComputable;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.testFramework.fixtures.IdeaProjectTestFixture;
import com.intellij.testFramework.fixtures.IdeaTestFixtureFactory;
Expand All @@ -37,7 +34,6 @@ public class AldorGitModuleBuilderTest extends AssumptionAware.UsefulTestCase {

@Rule
public TestRule testRule = RuleChain.emptyRuleChain()
//.around(JUnits.swingThreadTestRule())
.around(JUnits.fixtureRule(fixture))
.around(JUnits.setLogToDebugTestRule)
;
Expand All @@ -53,8 +49,6 @@ public void testBuilder() throws Exception {
builder.setContentEntryPath(tmp.toString());
builder.setName("Git_Aldor");
builder.setModuleFilePath(tmp.toString());
Module module = ApplicationManager.getApplication().runWriteAction((ThrowableComputable<Module, Exception>) () -> builder.createModule(model));
assertNotNull(module);
ModuleWizardStep[] steps = builder.createFinishingSteps(new WizardContext(fixture.getProject(), fixture.getTestRootDisposable()), modulesProvider);
for (var step: steps) {
step.getComponent();
Expand All @@ -75,6 +69,7 @@ public void testBuilder() throws Exception {
step.onWizardFinished();
}

builder.commitModule(model.getProject(), null);
List<VirtualFile> roots = ProjectRootManager.getInstance(fixture.getProject()).getModuleSourceRoots(Set.of(AldorSourceRootType.INSTANCE));
assertFalse(roots.isEmpty());
LOG.debug("Roots " + roots);
Expand Down

0 comments on commit 405d6b3

Please sign in to comment.