forked from qt-creator/qt-creator
Nim: Add Nimble test run configuration
Change-Id: Ifafe1032e4f3d81f62ba5ac0d5fb007dac473f58 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
@@ -74,6 +74,7 @@ public:
|
|||||||
NimbleBuildConfigurationFactory nimbleBuildConfigFactory;
|
NimbleBuildConfigurationFactory nimbleBuildConfigFactory;
|
||||||
NimRunConfigurationFactory nimRunConfigFactory;
|
NimRunConfigurationFactory nimRunConfigFactory;
|
||||||
NimbleRunConfigurationFactory nimbleRunConfigFactory;
|
NimbleRunConfigurationFactory nimbleRunConfigFactory;
|
||||||
|
NimbleTestConfigurationFactory nimbleTestConfigFactory;
|
||||||
RunWorkerFactory nimRunWorkerFactory {
|
RunWorkerFactory nimRunWorkerFactory {
|
||||||
RunWorkerFactory::make<SimpleTargetRunner>(),
|
RunWorkerFactory::make<SimpleTargetRunner>(),
|
||||||
{ProjectExplorer::Constants::NORMAL_RUN_MODE},
|
{ProjectExplorer::Constants::NORMAL_RUN_MODE},
|
||||||
@@ -84,6 +85,11 @@ public:
|
|||||||
{ProjectExplorer::Constants::NORMAL_RUN_MODE},
|
{ProjectExplorer::Constants::NORMAL_RUN_MODE},
|
||||||
{nimbleRunConfigFactory.id()}
|
{nimbleRunConfigFactory.id()}
|
||||||
};
|
};
|
||||||
|
RunWorkerFactory nimbleTestWorkerFactory {
|
||||||
|
RunWorkerFactory::make<SimpleTargetRunner>(),
|
||||||
|
{ProjectExplorer::Constants::NORMAL_RUN_MODE},
|
||||||
|
{nimbleTestConfigFactory.id()}
|
||||||
|
};
|
||||||
NimbleBuildStepFactory nimbleBuildStepFactory;
|
NimbleBuildStepFactory nimbleBuildStepFactory;
|
||||||
NimbleTaskStepFactory nimbleTaskStepFactory;
|
NimbleTaskStepFactory nimbleTaskStepFactory;
|
||||||
NimCompilerBuildStepFactory buildStepFactory;
|
NimCompilerBuildStepFactory buildStepFactory;
|
||||||
|
|||||||
@@ -35,6 +35,8 @@
|
|||||||
#include <utils/algorithm.h>
|
#include <utils/algorithm.h>
|
||||||
#include <utils/environment.h>
|
#include <utils/environment.h>
|
||||||
|
|
||||||
|
#include <QStandardPaths>
|
||||||
|
|
||||||
using namespace Nim;
|
using namespace Nim;
|
||||||
using namespace ProjectExplorer;
|
using namespace ProjectExplorer;
|
||||||
|
|
||||||
@@ -60,11 +62,6 @@ NimbleRunConfiguration::NimbleRunConfiguration(ProjectExplorer::Target *target,
|
|||||||
updateTargetInformation();
|
updateTargetInformation();
|
||||||
}
|
}
|
||||||
|
|
||||||
NimbleRunConfiguration::~NimbleRunConfiguration()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void NimbleRunConfiguration::updateTargetInformation()
|
void NimbleRunConfiguration::updateTargetInformation()
|
||||||
{
|
{
|
||||||
BuildTargetInfo bti = buildTargetInfo();
|
BuildTargetInfo bti = buildTargetInfo();
|
||||||
@@ -108,3 +105,22 @@ QList<RunConfigurationCreationInfo> NimbleRunConfigurationFactory::availableCrea
|
|||||||
{
|
{
|
||||||
return RunConfigurationFactory::availableCreators(parent);
|
return RunConfigurationFactory::availableCreators(parent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NimbleTestConfiguration::NimbleTestConfiguration(Target *target, Core::Id id)
|
||||||
|
: RunConfiguration(target, id)
|
||||||
|
{
|
||||||
|
addAspect<ExecutableAspect>()->setExecutable(Utils::FilePath::fromString(QStandardPaths::findExecutable("nimble")));
|
||||||
|
addAspect<ArgumentsAspect>()->setArguments("test");
|
||||||
|
addAspect<WorkingDirectoryAspect>()->setDefaultWorkingDirectory(project()->projectDirectory());
|
||||||
|
addAspect<TerminalAspect>();
|
||||||
|
|
||||||
|
setDisplayName(tr("Nimble Test"));
|
||||||
|
setDefaultDisplayName(tr("Nimble Test"));
|
||||||
|
}
|
||||||
|
|
||||||
|
NimbleTestConfigurationFactory::NimbleTestConfigurationFactory()
|
||||||
|
: FixedRunConfigurationFactory(QString())
|
||||||
|
{
|
||||||
|
registerRunConfiguration<NimbleTestConfiguration>("Nim.NimbleTestConfiguration");
|
||||||
|
addSupportedProjectType(Constants::C_NIMBLEPROJECT_ID);
|
||||||
|
}
|
||||||
|
|||||||
@@ -36,8 +36,6 @@ class NimbleRunConfiguration : public ProjectExplorer::RunConfiguration
|
|||||||
public:
|
public:
|
||||||
NimbleRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
|
NimbleRunConfiguration(ProjectExplorer::Target *target, Core::Id id);
|
||||||
|
|
||||||
~NimbleRunConfiguration();
|
|
||||||
|
|
||||||
QString disabledReason() const override;
|
QString disabledReason() const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
@@ -58,4 +56,18 @@ protected:
|
|||||||
QList<ProjectExplorer::RunConfigurationCreationInfo> availableCreators(ProjectExplorer::Target *parent) const override;
|
QList<ProjectExplorer::RunConfigurationCreationInfo> availableCreators(ProjectExplorer::Target *parent) const override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class NimbleTestConfiguration : public ProjectExplorer::RunConfiguration
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
NimbleTestConfiguration(ProjectExplorer::Target *target, Core::Id id);
|
||||||
|
};
|
||||||
|
|
||||||
|
class NimbleTestConfigurationFactory : public ProjectExplorer::FixedRunConfigurationFactory
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
NimbleTestConfigurationFactory();
|
||||||
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user