Browse Source

tests: add test cases for -P and -p options.

Yousong Zhou 9 years ago
parent
commit
3b3c554567
2 changed files with 43 additions and 0 deletions
  1. 5 0
      test/references/options.delta.result
  2. 38 0
      test/tests.d/090_cli_options

+ 5 - 0
test/references/options.delta.result

@@ -0,0 +1,5 @@
+
+config sectype 'sec0'
+	list li0 '1'
+	list li0 '0'
+

+ 38 - 0
test/tests.d/090_cli_options

@@ -0,0 +1,38 @@
+test_add_delta() {
+	local new_savedir="$TMP_DIR/new_savedir"
+	local config_delta="$CONFIG_DIR/delta"
+
+	# add normal changes
+	touch "$config_delta"
+	$UCI set delta.sec0=sectype
+	$UCI add_list delta.sec0.li0=0
+
+	# save new changes in "$new_savedir"
+	mkdir -p "$new_savedir"
+	touch "$new_savedir/delta"
+	$UCI -P "$new_savedir" set delta.sec0=sectype
+	$UCI -P "$new_savedir" add_list delta.sec0.li0=1
+
+	assertEquals "delta.sec0='sectype'
+delta.sec0.li0+='0'" "$($UCI changes)"
+
+	# check combined changes.  order matters here.
+	assertEquals "delta.sec0='sectype'
+delta.sec0.li0+='1'
+delta.sec0='sectype'
+delta.sec0.li0+='0'" "$($UCI -P "$new_savedir" changes)"
+
+	# check CLI_FLAG_NOCOMMIT with -P option.
+	$UCI -P "$new_savedir" commit
+	assertTrue "$?"
+	assertEquals "" "$(cat $config_delta)"
+
+	# check normal commit.
+	$UCI -p "$new_savedir" commit
+	assertTrue "$?"
+	assertSameFile "$REF_DIR/options.delta.result" "$config_delta"
+
+	rm -rf "$new_savedir"
+	rm -f "$config_delta"
+}
+