Skip to content

Commit 8b43bbe

Browse files
faze-geekanutosh491
authored andcommitted
Add test for file command
1 parent 859a1b9 commit 8b43bbe

File tree

1 file changed

+60
-1
lines changed

1 file changed

+60
-1
lines changed

test/test_interpreter.cpp

Lines changed: 60 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1026,4 +1026,63 @@ TEST_SUITE("xassist"){
10261026
std::remove("ollama_model.txt");
10271027
}
10281028

1029-
}
1029+
}
1030+
1031+
1032+
TEST_SUITE("file") {
1033+
TEST_CASE("Write") {
1034+
xcpp::writefile wf;
1035+
std::string line = "%%file testfile.txt";
1036+
std::string cell = "Hello, World!";
1037+
1038+
wf(line, cell);
1039+
1040+
std::ifstream infile("testfile.txt");
1041+
std::string content;
1042+
std::getline(infile, content);
1043+
1044+
REQUIRE(content == "Hello, World!");
1045+
infile.close();
1046+
}
1047+
TEST_CASE("Overwrite") {
1048+
xcpp::writefile wf;
1049+
std::string line = "%%file testfile.txt";
1050+
std::string cell = "Hello, World!";
1051+
1052+
wf(line, cell);
1053+
1054+
std::string overwrite_cell = "Overwrite test";
1055+
1056+
wf(line, overwrite_cell);
1057+
1058+
std::ifstream infile("testfile.txt");
1059+
std::string content;
1060+
std::getline(infile, content);
1061+
1062+
REQUIRE(content == overwrite_cell);
1063+
infile.close();
1064+
}
1065+
TEST_CASE("Append") {
1066+
xcpp::writefile wf;
1067+
std::string line = "%%file testfile.txt";
1068+
std::string cell = "Hello, World!";
1069+
1070+
wf(line, cell);
1071+
1072+
std::string append_line = "%%file -a testfile.txt";
1073+
std::string append_cell = "Hello, again!";
1074+
1075+
wf(append_line, append_cell);
1076+
1077+
std::ifstream infile("testfile.txt");
1078+
std::vector<std::string> lines;
1079+
std::string content;
1080+
while(std::getline(infile, content)) {
1081+
lines.push_back(content);
1082+
}
1083+
1084+
REQUIRE(lines[0] == "Hello, World!");
1085+
REQUIRE(lines[1] == "Hello, again!");
1086+
infile.close();
1087+
}
1088+
}

0 commit comments

Comments
 (0)