+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <mode name="asyncFail1" type="normal">
- <action rule="test.sleep" type="async">5</action>
- <action rule="test.sleep" type="async">5</action>
- <action rule="test.sleep" type="async">5</action>
- <action rule="test.sleep" type="async">5</action>
- <action rule="test.sleepErrorReturn" stopOnErr="true" type="sync">1</action>
- </mode>
-</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <mode name="asyncFail2" type="oneshot">
- <action rule="test.sleep" type="async">5</action>
- <action rule="test.sleep" type="async">5</action>
- <action rule="test.sleep" type="async">5</action>
- <action rule="test.sleep" type="async">5</action>
- <action rule="test.sleepErrorReturn" stopOnErr="true" type="sync">5</action>
- </mode>
-</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <mode name="asyncFail1" type="normal">
+ <action rule="test.sleep" type="async">5</action>
+ <action rule="test.sleep" type="async">5</action>
+ <action rule="test.sleep" type="async">5</action>
+ <action rule="test.sleep" type="async">5</action>
+ <action rule="test.sleepErrorReturn" stopOnErr="true" type="sync">1</action>
+ </mode>
+</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <mode name="asyncFail2" type="oneshot">
+ <action rule="test.sleep" type="async">5</action>
+ <action rule="test.sleep" type="async">5</action>
+ <action rule="test.sleep" type="async">5</action>
+ <action rule="test.sleep" type="async">5</action>
+ <action rule="test.sleepErrorReturn" stopOnErr="true" type="sync">5</action>
+ </mode>
+</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <mode name="async_valied" type="exclusive" hidden="true">
+ <action rule="test.sleepErrorReturn" stopOnErr="true" type="async">5</action>
+ </mode>
+</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <mode name="async_valied" type="exclusive" hidden="true">
- <action rule="test.sleepErrorReturn" stopOnErr="true" type="async">5</action>
- </mode>
-</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <mode name="conflict1" type="normal">
- <action ID="test" rule="test.printInt" restrict="lock">1</action>
- </mode>
-</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <mode name="conflict1" type="normal">
- <action ID="test" rule="test.printInt" restrict="lock" stopOnErr="true">2</action>
- </mode>
-</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <mode name="conflict3" type="exclusive">
- <action ID="test" rule="test.printBool" restrict="lock">true</action>
- </mode>
-</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <mode name="conflict1" type="normal">
+ <action ID="test" rule="test.printInt" restrict="lock">1</action>
+ </mode>
+</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <mode name="conflict3" type="exclusive">
+ <action ID="test" rule="test.printBool" restrict="lock">true</action>
+ </mode>
+</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <mode name="conflict1" type="normal">
+ <action ID="test" rule="test.printInt" restrict="lock" stopOnErr="true">2</action>
+ </mode>
+</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <mode name="ex1" type="normal">
- <action ID="wifiOn" rule="test.printBool" priority="-100">on</action>
- <action rule="test.launch" before="GoPbsKids">com.vpn.usa123</action>
- <action ID="GoPbsKids" rule="test.url" after="wifiOn">https://pbskids.org/</action>
- <action ID="BMJ" rule="test.connect">Modes-JBL</action>
- <action rule="test.player" after="BMJ">beatles-yesterday.mp3</action>
- <action ID="1" rule="test.printInt" priority="-100"
- >PRINT_TWO</action>
- <undo ID="undo1" rule="test.printBool">true</undo>
- </mode>
-</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <mode name="ex2" type="exclusive" hidden="true">
- <action ID="1" rule="test.printInt" stopOnErr="true" restrict="lock" priority="-100">PRINT_FOUR</action>
- <action ID="wifiOff" rule="test.printBool" restrict="lock" priority="-100">off</action>
- </mode>
-</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <mode name="invalid1" type="exclusive">
- <action rule="test.printBool">123</action>
- </mode>
-</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <mode name="invalid2" type="exclusive">
- <action rule="test.printInt">PRINT_TREE</action>
- </mode>
-</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <mode name="invalid1" type="exclusive">
+ <action rule="test.printBool">123</action>
+ </mode>
+</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <mode name="invalid2" type="exclusive">
+ <action rule="test.printInt">PRINT_TREE</action>
+ </mode>
+</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <mode name="ex1" type="normal">
+ <action ID="wifiOn" rule="test.printBool" priority="-100">on</action>
+ <action rule="test.launch" before="GoPbsKids">com.vpn.usa123</action>
+ <action ID="GoPbsKids" rule="test.url" after="wifiOn">https://pbskids.org/</action>
+ <action ID="BMJ" rule="test.connect">Modes-JBL</action>
+ <action rule="test.player" after="BMJ">beatles-yesterday.mp3</action>
+ <action ID="1" rule="test.printInt" priority="-100"
+ >PRINT_TWO</action>
+ <undo ID="undo1" rule="test.printBool">true</undo>
+ </mode>
+</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <mode name="ex2" type="exclusive" hidden="true">
+ <action ID="1" rule="test.printInt" stopOnErr="true" restrict="lock" priority="-100">PRINT_FOUR</action>
+ <action ID="wifiOff" rule="test.printBool" restrict="lock" priority="-100">off</action>
+ </mode>
+</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <actionRule>
+ <rule name="test.changeAccuracy" type="int" since="6.0" plugin="test">
+ <conflict>test.exactness</conflict>
+ <desc>Sensor Accuracy</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.exactness" type="int" since="6.0" plugin="test">
+ <conflict>test.changeAccuracy</conflict>
+ <desc>Sensor Exactness</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.url" type="string" since="6.0" plugin="test">
+ <desc>browser</desc>
+ <domain>Web Framework</domain>
+ </rule>
+ <rule name="test.nightLight" type="int" since="6.0" plugin="test">
+ <conflict>display.autoLight</conflict>
+ <desc>It makes the screen color warmer.</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.printInt" type="int" since="6.0" plugin="test">
+ <alias name="PRINT_ZERO">0</alias>
+ <alias name="PRINT_ONE">1</alias>
+ <alias name="PRINT_TWO">2</alias>
+ <alias name="PRINT_THREE">3</alias>
+ <alias name="PRINT_FOUR">4th</alias>
+ <desc>It prints integer value</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.printBool" type="bool" since="6.0" plugin="test">
+ <alias name="on">1</alias>
+ <alias name="off">0</alias>
+ <desc>It prints boolean value</desc>
+ <domain>System</domain>
+ </rule>
+ </actionRule>
+</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <actionRule>
- <rule name="test.changeAccuracy" type="int" since="6.0" plugin="test">
- <conflict>test.exactness</conflict>
- <desc>Sensor Accuracy</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.exactness" type="int" since="6.0" plugin="test">
- <conflict>test.changeAccuracy</conflict>
- <desc>Sensor Exactness</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.url" type="string" since="6.0" plugin="test">
- <desc>browser</desc>
- <domain>Web Framework</domain>
- </rule>
- <rule name="test.nightLight" type="int" since="6.0" plugin="test">
- <conflict>display.autoLight</conflict>
- <desc>It makes the screen color warmer.</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.launch" type="string" since="6.0" plugin="test">
- <desc>Launch App</desc>
- <domain>App Framework</domain>
- </rule>
- <rule name="test.connect" type="string" since="6.0" plugin="test">
- <desc>bluetooth Audio Connect</desc>
- <domain>Network & Connectivity</domain>
- </rule>
- <rule name="test.player" type="string" since="6.0" plugin="test">
- <desc>Audio/Video player</desc>
- <domain>Multimedia</domain>
- </rule>
- <rule name="test.printInt" type="int" since="6.0" plugin="test">
- <alias name="PRINT_ZERO">0</alias>
- <alias name="PRINT_ONE">1</alias>
- <alias name="PRINT_TWO">2</alias>
- <alias name="PRINT_THREE">3</alias>
- <alias name="PRINT_FOUR">4</alias>
- <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
- <desc>It prints integer value</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.printBool" type="bool" since="6.0" plugin="test">
- <alias name="on">1</alias>
- <alias name="off">0</alias>
- <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
- <desc>It prints boolean value</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.printDouble" type="float" since="6.0" plugin="test">
- <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
- <desc>It prints double value</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.printString" type="string" since="6.0" plugin="test">
- <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
- <desc>It prints string value</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.sleep" type="int" since="6.0" plugin="test">
- <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
- <desc>Sleep</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.sleepErrorReturn" type="int" since="6.0" plugin="test">
- <desc>Sleep and return valuse is error</desc>
- <domain>System</domain>
- </rule>
- </actionRule>
-</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <actionRule>
- <rule name="test.changeAccuracy" type="int" since="6.0" plugin="test">
- <conflict>test.exactness</conflict>
- <desc>Sensor Accuracy</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.exactness" type="int" since="6.0" plugin="test">
- <conflict>test.changeAccuracy</conflict>
- <desc>Sensor Exactness</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.url" type="string" since="6.0" plugin="test">
- <desc>browser</desc>
- <domain>Web Framework</domain>
- </rule>
- <rule name="test.nightLight" type="int" since="6.0" plugin="test">
- <conflict>display.autoLight</conflict>
- <desc>It makes the screen color warmer.</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.printInt" type="int" since="6.0" plugin="test">
- <alias name="PRINT_ZERO">0</alias>
- <alias name="PRINT_ONE">1</alias>
- <alias name="PRINT_TWO">2</alias>
- <alias name="PRINT_THREE">3</alias>
- <alias name="PRINT_FOUR">4</alias>
- <desc>It prints integer value</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.printBool" type="bool" since="6.0" plugin="test">
- <alias name="on">1</alias>
- <alias name="off">0</alias>
- <desc>It prints boolean value</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.printBool" type="int" since="6.0" plugin="test1">
- <desc>It is a duplicated Rule, It Must be unique</desc>
- <domain>System</domain>
- </rule>
- </actionRule>
-</tizenModes>
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<tizenModes xmlns="http://www.tizen.org" version="6.0">
- <actionRule>
- <rule name="test.changeAccuracy" type="int" since="6.0" plugin="test">
- <conflict>test.exactness</conflict>
- <desc>Sensor Accuracy</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.exactness" type="int" since="6.0" plugin="test">
- <conflict>test.changeAccuracy</conflict>
- <desc>Sensor Exactness</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.url" type="string" since="6.0" plugin="test">
- <desc>browser</desc>
- <domain>Web Framework</domain>
- </rule>
- <rule name="test.nightLight" type="int" since="6.0" plugin="test">
- <conflict>display.autoLight</conflict>
- <desc>It makes the screen color warmer.</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.printInt" type="int" since="6.0" plugin="test">
- <alias name="PRINT_ZERO">0</alias>
- <alias name="PRINT_ONE">1</alias>
- <alias name="PRINT_TWO">2</alias>
- <alias name="PRINT_THREE">3</alias>
- <alias name="PRINT_FOUR">4th</alias>
- <desc>It prints integer value</desc>
- <domain>System</domain>
- </rule>
- <rule name="test.printBool" type="bool" since="6.0" plugin="test">
- <alias name="on">1</alias>
- <alias name="off">0</alias>
- <desc>It prints boolean value</desc>
- <domain>System</domain>
- </rule>
- </actionRule>
-</tizenModes>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <actionRule>
+ <rule name="test.changeAccuracy" type="int" since="6.0" plugin="test">
+ <conflict>test.exactness</conflict>
+ <desc>Sensor Accuracy</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.exactness" type="int" since="6.0" plugin="test">
+ <conflict>test.changeAccuracy</conflict>
+ <desc>Sensor Exactness</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.url" type="string" since="6.0" plugin="test">
+ <desc>browser</desc>
+ <domain>Web Framework</domain>
+ </rule>
+ <rule name="test.nightLight" type="int" since="6.0" plugin="test">
+ <conflict>display.autoLight</conflict>
+ <desc>It makes the screen color warmer.</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.printInt" type="int" since="6.0" plugin="test">
+ <alias name="PRINT_ZERO">0</alias>
+ <alias name="PRINT_ONE">1</alias>
+ <alias name="PRINT_TWO">2</alias>
+ <alias name="PRINT_THREE">3</alias>
+ <alias name="PRINT_FOUR">4</alias>
+ <desc>It prints integer value</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.printBool" type="bool" since="6.0" plugin="test">
+ <alias name="on">1</alias>
+ <alias name="off">0</alias>
+ <desc>It prints boolean value</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.printBool" type="int" since="6.0" plugin="test1">
+ <desc>It is a duplicated Rule, It Must be unique</desc>
+ <domain>System</domain>
+ </rule>
+ </actionRule>
+</tizenModes>
install -d -m 755 %{buildroot}%{modes_ro_dir}/rule
install -d -m 755 %{buildroot}%{modes_rw_dir}/custom-mode
install -d -m 755 %{buildroot}%{modes_rw_dir}/undo-info
-install -m 0644 example/mode/*ex*_mode.xml %{buildroot}%{modes_ro_dir}/mode/
-install -m 0644 example/mode/*sync*_mode.xml %{buildroot}%{modes_ro_dir}/mode/
-install -m 0644 example/rule/*ex*_rule.xml %{buildroot}%{modes_ro_dir}/rule/
-install -m 0644 example/mode/*conflict*_mode.xml %{buildroot}%{modes_test_dir}/
-install -m 0644 example/mode/*invalid*_mode.xml %{buildroot}%{modes_test_dir}/
-install -m 0644 example/rule/*fail*_rule.xml %{buildroot}%{modes_test_dir}/
+install -m 0644 example/mode/*Ex*_mode.xml %{buildroot}%{modes_ro_dir}/mode/
+install -m 0644 example/mode/*Err*_mode.xml %{buildroot}%{modes_test_dir}/
+install -m 0644 example/rule/*Err*_rule.xml %{buildroot}%{modes_test_dir}/
install -m 0755 unittest/modes-gtest-run.sh %{buildroot}%{modes_test_dir}/
%install_service multi-user.target.wants %{name}.path
%check
xmllint --noout --schema schema/tizen_mode.xsd example/mode/tizen_*_mode.xml
+xmllint --noout --schema schema/tizen_action_rule.xsd plugin/tizen_test_rule.xml
xmllint --noout --schema schema/tizen_action_rule.xsd example/rule/tizen_*_rule.xml
-bash ./unittest/modes-gtest-run.sh ./example ./unittest
+bash ./unittest/modes-gtest-run.sh %{buildroot}%{modes_ro_dir} %{buildroot}%{modes_test_dir} Building
%post
/sbin/ldconfig
TARGET_LINK_LIBRARIES(${LIB_NAME} ${plugin_pkgs_LIBRARIES})
SET_TARGET_PROPERTIES(${LIB_NAME} PROPERTIES NO_SONAME 1 )
INSTALL(TARGETS ${LIB_NAME} DESTINATION ${MODES_PLUGIN_DEFAULT_DIR})
+INSTALL(FILES tizen_test_rule.xml DESTINATION ${MODES_ACTIONRULE_DEFAULT_DIR})
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<tizenModes xmlns="http://www.tizen.org" version="6.0">
+ <actionRule>
+ <rule name="test.changeAccuracy" type="int" since="6.0" plugin="test">
+ <conflict>test.exactness</conflict>
+ <desc>Sensor Accuracy</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.exactness" type="int" since="6.0" plugin="test">
+ <conflict>test.changeAccuracy</conflict>
+ <desc>Sensor Exactness</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.url" type="string" since="6.0" plugin="test">
+ <desc>browser</desc>
+ <domain>Web Framework</domain>
+ </rule>
+ <rule name="test.nightLight" type="int" since="6.0" plugin="test">
+ <conflict>display.autoLight</conflict>
+ <desc>It makes the screen color warmer.</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.launch" type="string" since="6.0" plugin="test">
+ <desc>Launch App</desc>
+ <domain>App Framework</domain>
+ </rule>
+ <rule name="test.connect" type="string" since="6.0" plugin="test">
+ <desc>bluetooth Audio Connect</desc>
+ <domain>Network & Connectivity</domain>
+ </rule>
+ <rule name="test.player" type="string" since="6.0" plugin="test">
+ <desc>Audio/Video player</desc>
+ <domain>Multimedia</domain>
+ </rule>
+ <rule name="test.printInt" type="int" since="6.0" plugin="test">
+ <alias name="PRINT_ZERO">0</alias>
+ <alias name="PRINT_ONE">1</alias>
+ <alias name="PRINT_TWO">2</alias>
+ <alias name="PRINT_THREE">3</alias>
+ <alias name="PRINT_FOUR">4</alias>
+ <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+ <desc>It prints integer value</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.printBool" type="bool" since="6.0" plugin="test">
+ <alias name="on">1</alias>
+ <alias name="off">0</alias>
+ <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+ <desc>It prints boolean value</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.printDouble" type="float" since="6.0" plugin="test">
+ <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+ <desc>It prints double value</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.printString" type="string" since="6.0" plugin="test">
+ <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+ <desc>It prints string value</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.sleep" type="int" since="6.0" plugin="test">
+ <privilege>http://tizen.org/privilege/systemsettings.admin</privilege>
+ <desc>Sleep</desc>
+ <domain>System</domain>
+ </rule>
+ <rule name="test.sleepErrorReturn" type="int" since="6.0" plugin="test">
+ <desc>Sleep and return error after value seconds</desc>
+ <domain>System</domain>
+ </rule>
+ </actionRule>
+</tizenModes>
if [ $# -lt 2 ]
then
- echo "Usage) $0 DATA_DIR WORKING_DIR"
+ echo "Usage) $0 DATA_DIR WORKING_DIR [Building]"
exit 1
fi
+IsBUILDING="no"
+if [ $# -gt 2 ]
+then
+ IsBUILDING=$3
+fi
+
DATA_DIR=$1
WORKING_DIR=$2
-CUR_DIR=$PWD
-
-cp $DATA_DIR/mode/*_mode.xml $WORKING_DIR
-cp $DATA_DIR/rule/*_rule.xml $WORKING_DIR
-mkdir -p $WORKING_DIR/extra
-sed s/ex1/ex3/g $WORKING_DIR/tizen_ex1_mode.xml > $WORKING_DIR/extra/tizen_ex3_mode.xml
-sed s/ex1/ex4/g $WORKING_DIR/tizen_ex1_mode.xml > $WORKING_DIR/extra/tizen_ex4_mode.xml
+#CUR_DIR=$PWD
pushd $WORKING_DIR
-if [ ${DATA_DIR:0:1} == "." ]
-then # on building
- cp $CUR_DIR/schema/*.xsd ./
-else # on Target
- cp $DATA_DIR/schema/*.xsd ./
+cp $DATA_DIR/mode/*_mode.xml ./
+cp $DATA_DIR/rule/*_rule.xml ./
+mkdir -p ./extra
+sed s/ex1/ex3/g ./tizen_normalEx1_mode.xml > ./extra/tizen_normalEx3_mode.xml
+sed s/ex1/ex4/g ./tizen_normalEx1_mode.xml > ./extra/tizen_normalEx4_mode.xml
+cp $DATA_DIR/schema/*.xsd ./
+
+if [ "$IsBUILDING" == "no" ]
+then # on Target
./modes-gtest-client
./modes-gtest-noti
./modes-gtest-async
./modes-gtest-generator
./modes-gtest-conflict
./modes-gtest-plugin
+
+rm -rf *.xsd extra
+
popd
protected:
void SetUp() override
{
- ModeXMLParser modeparser("tizen_conflict1_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_conflictErrBase_mode.xml", ruleMgr);
careTaker.pushMode(modeparser.getMode());
}
TEST_F(ConflictTest, isSavedMode)
{
- ModeXMLParser modeparser("tizen_conflict1_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_conflictErrBase_mode.xml", ruleMgr);
EXPECT_TRUE(careTaker.isSavedMode(modeparser.getModeName()));
}
-TEST_F(ConflictTest, isExcluded)
+TEST_F(ConflictTest, isExclusive)
{
- ModeXMLParser modeparser("tizen_conflict3_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_conflictErrExclusive_mode.xml", ruleMgr);
careTaker.pushMode(modeparser.getMode());
EXPECT_TRUE(careTaker.isExclusive());
TEST_F(ConflictTest, checkConflictAction)
{
- ModeXMLParser modeparser("tizen_conflict2_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_conflictErr_mode.xml", ruleMgr);
Mode mode = modeparser.getMode();
EXPECT_TRUE(careTaker.checkConflictAction(mode));
{
ConflictManager conflMgr(careTaker);
- ModeXMLParser modeparser("tizen_conflict2_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_conflictErr_mode.xml", ruleMgr);
EXPECT_TRUE(conflMgr.isConflict(modeparser.getMode()));
}
{
GeneratorTest broker;
- ModeXMLParser modeparser("tizen_ex1_mode.xml", broker.ruleMgr);
- Mode mode = modeparser.getMode();
+ ModeXMLParser modeParser("tizen_normalEx1_mode.xml", broker.ruleMgr);
+ Mode mode = modeParser.getMode();
try {
XMLGenerator xmlGenerator;
- xmlGenerator.makeModeXML("tizen_gen_ex1_mode.xml", mode);
+ xmlGenerator.makeModeXML("tizen_generatedEx1_mode.xml", mode);
} catch (ModesEx &e) {
- ERR("XMLGenerator(tizen_gen_ex1_mode.xml) Fail(%s)", e.what());
+ ERR("XMLGenerator(tizen_generatedEx1_mode.xml) Fail(%s)", e.what());
FAIL();
}
- ModeXMLParser genmodeparser("tizen_gen_ex1_mode.xml", broker.ruleMgr);
- Mode genMode = genmodeparser.getMode();
+ ModeXMLParser genModeParser("tizen_generatedEx1_mode.xml", broker.ruleMgr);
+ Mode genMode = genModeParser.getMode();
- EXPECT_EQ("ex1", genmodeparser.getModeName());
+ EXPECT_EQ("ex1", genModeParser.getModeName());
std::list<std::shared_ptr<Action>> actionList = mode.getActionList();
EXPECT_FALSE(actionList.empty());
{
GeneratorTest broker;
- ModeXMLParser modeparser("tizen_ex1_mode.xml", broker.ruleMgr);
- Mode mode = modeparser.getMode();
+ ModeXMLParser modeParser("tizen_normalEx1_mode.xml", broker.ruleMgr);
+ Mode mode = modeParser.getMode();
EXPECT_THROW({
XMLGenerator xmlGenerator;
config.pluginDir = ".";
ruleMgr.setOptions(std::string(), config.actionRuleXsdFile, config.pluginDir);
- ruleMgr.parseActionRule("./tizen_ex_rule.xml");
+ ruleMgr.parseActionRule("./tizen_test_rule.xml");
}
list<shared_ptr<Action>> ParserTest::getActionList(Mode& m)
TEST_F(ParserTest, getModeName)
{
- ModeXMLParser modeparser("tizen_ex1_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_normalEx1_mode.xml", ruleMgr);
EXPECT_EQ("ex1", modeparser.getModeName());
}
TEST_F(ParserTest, modeGetName)
{
- ModeXMLParser modeparser("tizen_ex2_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_normalEx2_mode.xml", ruleMgr);
Mode mode = modeparser.getMode();
EXPECT_EQ("ex2", mode.getName());
}
TEST_F(ParserTest, isHiddenTrue)
{
- ModeXMLParser modeparser("tizen_ex2_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_normalEx2_mode.xml", ruleMgr);
EXPECT_EQ(true, modeparser.isHidden());
}
TEST_F(ParserTest, isHiddenFalse)
{
- ModeXMLParser modeparser("tizen_ex1_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_normalEx1_mode.xml", ruleMgr);
EXPECT_EQ(false, modeparser.isHidden());
}
TEST_F(ParserTest, getModeType)
{
- ModeXMLParser modeparser("tizen_ex1_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_normalEx1_mode.xml", ruleMgr);
Mode mode = modeparser.getMode();
EXPECT_EQ(Mode::MODE_NORMAL, mode.getModeType());
}
TEST_F(ParserTest, printAction)
{
- ModeXMLParser modeparser("tizen_ex1_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_normalEx1_mode.xml", ruleMgr);
Mode mode = modeparser.getMode();
list<std::shared_ptr<Action>> actionList = getActionList(mode);
TEST_F(ParserTest, invalidActionValue)
{
- ModeXMLParser modeparser1("tizen_invalid1_mode.xml", ruleMgr);
+ ModeXMLParser modeparser1("tizen_invalidValErr1_mode.xml", ruleMgr);
EXPECT_THROW(modeparser1.getMode(), ModesEx);
- ModeXMLParser modeparser2("tizen_invalid2_mode.xml", ruleMgr);
+ ModeXMLParser modeparser2("tizen_invalidValErr2_mode.xml", ruleMgr);
EXPECT_THROW(modeparser2.getMode(), ModesEx);
}
TEST_F(ParserTest, validateAsyncStopOnErr)
{
- ModeXMLParser modeparser("tizen_asyncValidFail_mode.xml", ruleMgr);
+ ModeXMLParser modeparser("tizen_asyncValidErr_mode.xml", ruleMgr);
EXPECT_THROW(modeparser.validateMode(MODES_MODE_DEFAULT_XSD_FILE), ModesEx);
}
broker.piMapper.loadPlugins();
}
catch (ModesEx &e) {
- broker.piMapper.setPluginDir("../plugin");
+ broker.piMapper.setPluginDir("../../lib/modes-plugins");
EXPECT_NO_THROW(broker.piMapper.loadPlugins());
}
broker.piMapper.loadPlugins();
}
catch (ModesEx &e) {
- broker.piMapper.setPluginDir("../plugin");
+ broker.piMapper.setPluginDir("../../lib/modes-plugins");
EXPECT_NO_THROW(broker.piMapper.loadPlugins());
}
TEST(RuleManagerTest, parseActionRuleP)
{
RuleManagerTest testBroker;
- EXPECT_NO_THROW(testBroker.parseActionRule("./tizen_ex_rule.xml"));
+ EXPECT_NO_THROW(testBroker.parseActionRule("./tizen_test_rule.xml"));
}
TEST(RuleManagerTest, DuplicatedRule)
{
RuleManagerTest testBroker;
- EXPECT_THROW(testBroker.parseActionRule("./tizen_fail1_rule.xml"), ModesEx);
+ EXPECT_THROW(testBroker.parseActionRule("./tizen_uniqueRuleErr_rule.xml"), ModesEx);
}
TEST(RuleManagerTest, InvalidValue)
{
RuleManagerTest testBroker;
- EXPECT_THROW(testBroker.parseActionRule("./tizen_fail2_rule.xml"), ModesEx);
+ EXPECT_THROW(testBroker.parseActionRule("./tizen_uniqueRuleErr_rule.xml"), ModesEx);
}
+// If there are any errors in a file, the file will be ignored.
TEST(RuleManagerTest, CheckAtomicity)
{
RuleManagerTest testBroker;
- EXPECT_THROW(testBroker.parseActionRule("./tizen_fail2_rule.xml"), ModesEx);
+ EXPECT_THROW(testBroker.parseActionRule("./tizen_aliasValueErr.xml"), ModesEx);
EXPECT_TRUE(testBroker.emptyRuleMap());
}