summaryrefslogtreecommitdiffstats
path: root/tests/unit/commands_test.cpp
diff options
context:
space:
mode:
authorTao Bao <tbao@google.com>2018-06-25 21:11:53 +0200
committerTao Bao <tbao@google.com>2018-06-25 22:39:33 +0200
commit92f339372c236d3b84188489417df2d65550b1c4 (patch)
treee8d0fffbf6a5dddcfcae035517fb5fb8ec6580a9 /tests/unit/commands_test.cpp
parentupdater: Add Command parsing codes. (diff)
downloadandroid_bootable_recovery-92f339372c236d3b84188489417df2d65550b1c4.tar
android_bootable_recovery-92f339372c236d3b84188489417df2d65550b1c4.tar.gz
android_bootable_recovery-92f339372c236d3b84188489417df2d65550b1c4.tar.bz2
android_bootable_recovery-92f339372c236d3b84188489417df2d65550b1c4.tar.lz
android_bootable_recovery-92f339372c236d3b84188489417df2d65550b1c4.tar.xz
android_bootable_recovery-92f339372c236d3b84188489417df2d65550b1c4.tar.zst
android_bootable_recovery-92f339372c236d3b84188489417df2d65550b1c4.zip
Diffstat (limited to 'tests/unit/commands_test.cpp')
-rw-r--r--tests/unit/commands_test.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/unit/commands_test.cpp b/tests/unit/commands_test.cpp
index bbc83b9a8..cb2be9176 100644
--- a/tests/unit/commands_test.cpp
+++ b/tests/unit/commands_test.cpp
@@ -310,3 +310,28 @@ TEST(CommandsTest, Parse_ZERO) {
ASSERT_EQ(StashInfo(), command.stash());
ASSERT_EQ(PatchInfo(), command.patch());
}
+
+TEST(CommandsTest, Parse_InvalidNumberOfArgs) {
+ // Note that the case of having excess args in BSDIFF, IMGDIFF and MOVE is covered by
+ // ParseTargetInfoAndSourceInfo_InvalidInput.
+ std::vector<std::string> inputs{
+ "bsdiff",
+ "erase",
+ "erase 4,3,5,10,12 hash1",
+ "free",
+ "free id1 id2",
+ "imgdiff",
+ "move",
+ "new",
+ "new 4,3,5,10,12 hash1",
+ "stash",
+ "stash id1",
+ "stash id1 4,3,5,10,12 id2",
+ "zero",
+ "zero 4,3,5,10,12 hash2",
+ };
+ for (const auto& input : inputs) {
+ std::string err;
+ ASSERT_FALSE(Command::Parse(input, 0, &err));
+ }
+}