Files
iZo/tests/headless_interaction.cpp

49 lines
1.6 KiB
C++

#include "test_support.hpp"
#include <izo/Clipboard.hpp>
#include <izo/Dialogs.hpp>
#include <izo/Environment.hpp>
#include <izo/MessageBox.hpp>
int main() {
std::string error;
CHECK(izo::SetEnvVar("PATH", "", &error));
auto dialog = izo::OpenFile();
CHECK(dialog.status == izo::DialogStatus::Error);
CHECK(!dialog.errorMessage.empty());
dialog = izo::SaveFile();
CHECK(dialog.status == izo::DialogStatus::Error);
dialog = izo::PickFolder();
CHECK(dialog.status == izo::DialogStatus::Error);
error.clear();
CHECK(!izo::OpenPath("/tmp", &error));
CHECK(!error.empty());
error.clear();
CHECK(!izo::RevealInFileManager("/tmp/file", &error));
CHECK(!error.empty());
error.clear();
CHECK(izo::ShowMessageBox({"title", "message"}, &error) == izo::MessageResponse::Error);
CHECK(!error.empty());
error.clear();
CHECK(izo::ShowErrorBox("title", "message", &error) == izo::MessageResponse::Error);
CHECK(!error.empty());
error.clear();
CHECK(izo::ShowQuestionBox("title", "message", &error) == izo::MessageResponse::Error);
CHECK(!error.empty());
const auto input = izo::ShowInputBox({"title", "message", "initial"});
CHECK(input.response == izo::MessageResponse::Error);
CHECK(!input.errorMessage.empty());
const auto color = izo::PickColor({"title", {1, 2, 3}});
CHECK(color.response == izo::MessageResponse::Error);
CHECK(!color.errorMessage.empty());
error.clear();
CHECK(!izo::SetClipboardText({}, &error));
CHECK(!error.empty());
error.clear();
CHECK(!izo::GetClipboardText(&error));
CHECK(!error.empty());
}