mirror of
https://github.com/unittest-cpp/unittest-cpp
synced 2026-09-27 00:28:49 +03:00
small refactor
This commit is contained in:
parent
1e5d6ecfbb
commit
449a77cb2e
5 changed files with 45 additions and 58 deletions
23
UnitTest++/PredicateCmdBuilder.cpp
Normal file
23
UnitTest++/PredicateCmdBuilder.cpp
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
#include "PredicateCmdBuilder.h"
|
||||
|
||||
using namespace UnitTest;
|
||||
|
||||
|
||||
void PredicateCmdBuilder::fillSuitePredicate(const ArgumentsReader & arguments, SuitePredicate & outPredicate, bool allowImplicitArgs)
|
||||
{
|
||||
outPredicate.addSuites(arguments.extractValues("--suite"));
|
||||
outPredicate.addTests(arguments.extractValues("--test"));
|
||||
|
||||
if (allowImplicitArgs)
|
||||
{
|
||||
vector<string> implicitArguments = arguments.extractValues("");
|
||||
outPredicate.addSuites(implicitArguments);
|
||||
outPredicate.addTests(implicitArguments);
|
||||
}
|
||||
|
||||
if (outPredicate.empty())
|
||||
{
|
||||
outPredicate.addAll();
|
||||
}
|
||||
}
|
||||
|
||||
16
UnitTest++/PredicateCmdBuilder.h
Normal file
16
UnitTest++/PredicateCmdBuilder.h
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
#ifndef UNITTEST_PredicateCmdBuilder_H
|
||||
#define UNITTEST_TESTRUNNERCMD_H
|
||||
|
||||
#include "ArgumentsReader.h"
|
||||
#include "SuitePredicate.h"
|
||||
|
||||
namespace UnitTest {
|
||||
|
||||
class PredicateCmdBuilder
|
||||
{
|
||||
public:
|
||||
static void fillSuitePredicate(const ArgumentsReader & arguments, SuitePredicate & outPredicate, bool allowImplicitArgs = true);
|
||||
};
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
#include "SuitePredicateCmdBuilder.h"
|
||||
|
||||
using namespace UnitTest;
|
||||
|
||||
|
||||
SuitePredicateCmdBuilder::SuitePredicateCmdBuilder(int argc, char**argv)
|
||||
: _arguments(argc, argv)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
SuitePredicate SuitePredicateCmdBuilder::buildPredicate(bool allowImplicitArgs)
|
||||
{
|
||||
SuitePredicate predicate;
|
||||
|
||||
predicate.addSuites(_arguments.extractValues("--suite"));
|
||||
predicate.addTests(_arguments.extractValues("--test"));
|
||||
|
||||
if (allowImplicitArgs)
|
||||
{
|
||||
vector<string> implicitArguments = _arguments.extractValues("");
|
||||
predicate.addSuites(implicitArguments);
|
||||
predicate.addTests(implicitArguments);
|
||||
}
|
||||
|
||||
if (predicate.empty())
|
||||
{
|
||||
predicate.addAll();
|
||||
}
|
||||
|
||||
return predicate;
|
||||
}
|
||||
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
#ifndef UNITTEST_TESTRUNNERCMD_H
|
||||
#define UNITTEST_TESTRUNNERCMD_H
|
||||
|
||||
#include "ArgumentsReader.h"
|
||||
#include "SuitePredicate.h"
|
||||
|
||||
namespace UnitTest {
|
||||
|
||||
class SuitePredicateCmdBuilder
|
||||
{
|
||||
public:
|
||||
SuitePredicateCmdBuilder(int argc, char**argv);
|
||||
SuitePredicate buildPredicate(bool allowImplicitArgs = true);
|
||||
|
||||
private:
|
||||
ArgumentsReader _arguments;
|
||||
};
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
@ -5,7 +5,7 @@
|
|||
#include "TimeHelpers.h"
|
||||
#include "MemoryOutStream.h"
|
||||
#include "SuitePredicate.h"
|
||||
#include "SuitePredicateCmdBuilder.h"
|
||||
#include "PredicateCmdBuilder.h"
|
||||
|
||||
#include <cstring>
|
||||
|
||||
|
|
@ -19,14 +19,15 @@ namespace UnitTest {
|
|||
return runner.RunTestsIf(Test::GetTestList(), NULL, True(), 0);
|
||||
}
|
||||
|
||||
|
||||
int RunTestsCmd(int argc, char**argv)
|
||||
{
|
||||
SuitePredicateCmdBuilder suiteCmd(argc, argv);
|
||||
SuitePredicate predicate;
|
||||
ArgumentsReader arguments(argc, argv);
|
||||
PredicateCmdBuilder::fillSuitePredicate(arguments, predicate);
|
||||
|
||||
TestReporterStdout reporter;
|
||||
TestRunner runner(reporter);
|
||||
|
||||
return runner.RunTestsIf(Test::GetTestList(), 0, suiteCmd.buildPredicate(), 0);
|
||||
return runner.RunTestsIf(Test::GetTestList(), 0, predicate, 0);
|
||||
}
|
||||
|
||||
TestRunner::TestRunner(TestReporter& reporter)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue