Explorar el Código

more status tests

Denys hace 4 años
padre
commit
ba2f4f3fa3
Se han modificado 1 ficheros con 71 adiciones y 2 borrados
  1. 71 2
      cli/test/cmdman_test.cpp

+ 71 - 2
cli/test/cmdman_test.cpp

@@ -2553,10 +2553,9 @@ TEST(testDeletefile, Negative) {
 /* =====================================
  * test for status
  */
-TEST(testStatus, Test) {
+TEST(testStatus, LoggedIn) {
 	FileManMock fm;
 	CmdManForTest cm(fm, dummyDebugPrint);
-	cm.initLoggedIn();
 
 	std::string cmd;
 	std::vector<std::string> args;
@@ -2564,6 +2563,12 @@ TEST(testStatus, Test) {
 	CmdMan::CmdRet retvalCmd;
 	CmdMan::CmdRet retvalHdl;
 
+	// set ip, port and user name fields of the cmdman
+	cm.execute("connect", {"1.2.3.4", "1337"});
+	cm.initVersionChecked();
+	cm.execute("login", {"usernem", "paswod"});
+	cm.initLoggedIn();
+
 	// prepare cmd/args/root
 	cmd = "status";
 	args = {};
@@ -2581,10 +2586,74 @@ TEST(testStatus, Test) {
 	EXPECT_EQ(retvalHdl.type, CmdMan::print);
 	EXPECT_EQ(retvalHdl.msg["command"].asString(), "status");
 	EXPECT_THAT(retvalHdl.msg["response"].asString(), testing::HasSubstr("fancy response"));
+	EXPECT_THAT(retvalHdl.msg["response"].asString(), testing::HasSubstr("1.2.3.4"));
+	EXPECT_THAT(retvalHdl.msg["response"].asString(), testing::HasSubstr("1337"));
+	EXPECT_THAT(retvalHdl.msg["response"].asString(), testing::HasSubstr("usernem"));
 
 	EXPECT_TRUE(cm.isLoggedIn());
 }
 
+TEST(testStatus, NotConnected) {
+	FileManMock fm;
+	CmdManForTest cm(fm, dummyDebugPrint);
+
+	std::string cmd;
+	std::vector<std::string> args;
+	CmdMan::CmdRet retvalCmd;
+
+	// set ip and port fields of the cmdman
+	cm.execute("connect", {"1.2.3.4"});
+	cm.initNotConnected();
+
+	// prepare cmd/args
+	cmd = "status";
+	args = {};
+
+	// stick into cmdman
+	retvalCmd = cm.execute(cmd, args);
+
+	// check things
+	EXPECT_EQ(retvalCmd.type, CmdMan::print);
+	EXPECT_EQ(retvalCmd.msg["command"].asString(), "status");
+	EXPECT_NE(retvalCmd.msg["response"].asString(), "");
+	EXPECT_THAT(retvalCmd.msg["response"].asString(), testing::Not(testing::HasSubstr("1.2.3.4")));
+
+	EXPECT_TRUE(cm.isNotConnected());
+}
+
+TEST(testStatus, NotLoggedIn) {
+	FileManMock fm;
+	CmdManForTest cm(fm, dummyDebugPrint);
+
+	std::string cmd;
+	std::vector<std::string> args;
+	CmdMan::CmdRet retvalCmd;
+	CmdMan::CmdRet retvalHdl;
+
+	// set ip, port and user name fields of the cmdman
+	cm.initConnected();
+	cm.execute("login", {"usernem", "paswod"});
+	cm.initNotConnected();
+	cm.execute("connect", {"1.2.3.4", "1337"});
+	cm.initVersionChecked(); // not logged in
+
+	// prepare cmd/args
+	cmd = "status";
+	args = {};
+
+	// stick into cmdman
+	retvalCmd = cm.execute(cmd, args);
+
+	// check things
+	EXPECT_EQ(retvalCmd.type, CmdMan::print);
+	EXPECT_EQ(retvalCmd.msg["command"].asString(), "status");
+	EXPECT_THAT(retvalCmd.msg["response"].asString(), testing::HasSubstr("1.2.3.4"));
+	EXPECT_THAT(retvalCmd.msg["response"].asString(), testing::HasSubstr("1337"));
+	EXPECT_THAT(retvalCmd.msg["response"].asString(), testing::Not(testing::HasSubstr("usernem")));
+
+	EXPECT_TRUE(cm.isVersionChecked());
+}
+
 /* =====================================
  * test for extendedstatus
  */