launch_daemon: Fixed empty on/if parsing.
* An extra empty message was mistakenly created.
This commit is contained in:
@@ -15,7 +15,7 @@ public:
|
|||||||
const driver_parameter& parameter, const char* name, uint32 type,
|
const driver_parameter& parameter, const char* name, uint32 type,
|
||||||
BMessage& target)
|
BMessage& target)
|
||||||
{
|
{
|
||||||
if (parameter.parameter_count != 0)
|
if (parameter.parameter_count != 0 || strcmp(name, Name()) == 0)
|
||||||
return B_OK;
|
return B_OK;
|
||||||
|
|
||||||
BMessage message;
|
BMessage message;
|
||||||
@@ -36,6 +36,8 @@ protected:
|
|||||||
}
|
}
|
||||||
return target.AddMessage(condition, &args);
|
return target.AddMessage(condition, &args);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
virtual const char* Name() = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -75,6 +77,11 @@ public:
|
|||||||
message.AddString("args", parameter.values[index]);
|
message.AddString("args", parameter.values[index]);
|
||||||
return target.AddMessage(parameter.name, &message);
|
return target.AddMessage(parameter.name, &message);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char* Name()
|
||||||
|
{
|
||||||
|
return "if";
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -95,6 +102,11 @@ public:
|
|||||||
message.AddString("args", parameter.values[index]);
|
message.AddString("args", parameter.values[index]);
|
||||||
return target.AddMessage(parameter.name, &message);
|
return target.AddMessage(parameter.name, &message);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char* Name()
|
||||||
|
{
|
||||||
|
return "on";
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,16 @@ SettingsParserTest::~SettingsParserTest()
|
|||||||
// #pragma mark - conditions
|
// #pragma mark - conditions
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
SettingsParserTest::TestConditionsEmpty()
|
||||||
|
{
|
||||||
|
BMessage message;
|
||||||
|
CPPUNIT_ASSERT_EQUAL(B_OK, _ParseCondition("if {\n"
|
||||||
|
"}\n", message));
|
||||||
|
CPPUNIT_ASSERT(message.IsEmpty());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
SettingsParserTest::TestConditionsMultiLine()
|
SettingsParserTest::TestConditionsMultiLine()
|
||||||
{
|
{
|
||||||
@@ -177,13 +187,22 @@ SettingsParserTest::TestConditionsMultiLineNot()
|
|||||||
BMessage args;
|
BMessage args;
|
||||||
CPPUNIT_ASSERT_EQUAL(B_OK, subMessage.FindMessage("safemode", &args));
|
CPPUNIT_ASSERT_EQUAL(B_OK, subMessage.FindMessage("safemode", &args));
|
||||||
CPPUNIT_ASSERT(args.IsEmpty());
|
CPPUNIT_ASSERT(args.IsEmpty());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// #pragma mark - events
|
// #pragma mark - events
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
SettingsParserTest::TestEventsEmpty()
|
||||||
|
{
|
||||||
|
BMessage message;
|
||||||
|
CPPUNIT_ASSERT_EQUAL(B_OK, _ParseEvent("on {\n"
|
||||||
|
"}\n", message));
|
||||||
|
CPPUNIT_ASSERT(message.IsEmpty());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
SettingsParserTest::TestEventsMultiLine()
|
SettingsParserTest::TestEventsMultiLine()
|
||||||
{
|
{
|
||||||
@@ -395,6 +414,9 @@ SettingsParserTest::AddTests(BTestSuite& parent)
|
|||||||
CppUnit::TestSuite& suite = *new CppUnit::TestSuite("SettingsParserTest");
|
CppUnit::TestSuite& suite = *new CppUnit::TestSuite("SettingsParserTest");
|
||||||
|
|
||||||
// Conditions
|
// Conditions
|
||||||
|
suite.addTest(new CppUnit::TestCaller<SettingsParserTest>(
|
||||||
|
"SettingsParserTest::TestConditionsEmpty",
|
||||||
|
&SettingsParserTest::TestConditionsEmpty));
|
||||||
suite.addTest(new CppUnit::TestCaller<SettingsParserTest>(
|
suite.addTest(new CppUnit::TestCaller<SettingsParserTest>(
|
||||||
"SettingsParserTest::TestConditionsMultiLine",
|
"SettingsParserTest::TestConditionsMultiLine",
|
||||||
&SettingsParserTest::TestConditionsMultiLine));
|
&SettingsParserTest::TestConditionsMultiLine));
|
||||||
@@ -421,6 +443,9 @@ SettingsParserTest::AddTests(BTestSuite& parent)
|
|||||||
&SettingsParserTest::TestConditionsMultiLineNot));
|
&SettingsParserTest::TestConditionsMultiLineNot));
|
||||||
|
|
||||||
// Events
|
// Events
|
||||||
|
suite.addTest(new CppUnit::TestCaller<SettingsParserTest>(
|
||||||
|
"SettingsParserTest::TestEventsEmpty",
|
||||||
|
&SettingsParserTest::TestEventsEmpty));
|
||||||
suite.addTest(new CppUnit::TestCaller<SettingsParserTest>(
|
suite.addTest(new CppUnit::TestCaller<SettingsParserTest>(
|
||||||
"SettingsParserTest::TestEventsMultiLine",
|
"SettingsParserTest::TestEventsMultiLine",
|
||||||
&SettingsParserTest::TestEventsMultiLine));
|
&SettingsParserTest::TestEventsMultiLine));
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ public:
|
|||||||
SettingsParserTest();
|
SettingsParserTest();
|
||||||
virtual ~SettingsParserTest();
|
virtual ~SettingsParserTest();
|
||||||
|
|
||||||
|
void TestConditionsEmpty();
|
||||||
void TestConditionsMultiLine();
|
void TestConditionsMultiLine();
|
||||||
void TestConditionsFlat();
|
void TestConditionsFlat();
|
||||||
void TestConditionsFlatWithNot();
|
void TestConditionsFlatWithNot();
|
||||||
@@ -26,6 +27,7 @@ public:
|
|||||||
void TestConditionsMultiLineFlatNotWithArgs();
|
void TestConditionsMultiLineFlatNotWithArgs();
|
||||||
void TestConditionsMultiLineNot();
|
void TestConditionsMultiLineNot();
|
||||||
|
|
||||||
|
void TestEventsEmpty();
|
||||||
void TestEventsMultiLine();
|
void TestEventsMultiLine();
|
||||||
void TestEventsFlat();
|
void TestEventsFlat();
|
||||||
void TestEventsFlatWithArgs();
|
void TestEventsFlatWithArgs();
|
||||||
|
|||||||
Reference in New Issue
Block a user