1 #include "http_response.hpp"
2 #include "ibm/management_console_rest.hpp"
3
4 #include <string>
5
6 #include <gtest/gtest.h>
7
8 namespace crow
9 {
10 namespace ibm_mc
11 {
12
TEST(IsValidConfigFileName,FileNameValidCharReturnsTrue)13 TEST(IsValidConfigFileName, FileNameValidCharReturnsTrue)
14 {
15 crow::Response res;
16
17 EXPECT_TRUE(isValidConfigFileName("GoodConfigFile", res));
18 }
TEST(IsValidConfigFileName,FileNameInvalidCharReturnsFalse)19 TEST(IsValidConfigFileName, FileNameInvalidCharReturnsFalse)
20 {
21 crow::Response res;
22
23 EXPECT_FALSE(isValidConfigFileName("Bad@file", res));
24 }
TEST(IsValidConfigFileName,FileNameInvalidPathReturnsFalse)25 TEST(IsValidConfigFileName, FileNameInvalidPathReturnsFalse)
26 {
27 crow::Response res;
28
29 EXPECT_FALSE(isValidConfigFileName("/../../../../../etc/badpath", res));
30 EXPECT_FALSE(isValidConfigFileName("/../../etc/badpath", res));
31 EXPECT_FALSE(isValidConfigFileName("/mydir/configFile", res));
32 }
33
TEST(IsValidConfigFileName,EmptyFileNameReturnsFalse)34 TEST(IsValidConfigFileName, EmptyFileNameReturnsFalse)
35 {
36 crow::Response res;
37 EXPECT_FALSE(isValidConfigFileName("", res));
38 }
39
TEST(IsValidConfigFileName,SlashFileNameReturnsFalse)40 TEST(IsValidConfigFileName, SlashFileNameReturnsFalse)
41 {
42 crow::Response res;
43 EXPECT_FALSE(isValidConfigFileName("/", res));
44 }
TEST(IsValidConfigFileName,FileNameMoreThan20CharReturnsFalse)45 TEST(IsValidConfigFileName, FileNameMoreThan20CharReturnsFalse)
46 {
47 crow::Response res;
48 EXPECT_FALSE(isValidConfigFileName("BadfileBadfileBadfile", res));
49 }
50
51 } // namespace ibm_mc
52 } // namespace crow
53