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