AnyPS5/core/libs/tests/GuestWebBrowserDialog.cpp

35 lines
1.2 KiB
C++

#include "prx/libc/include/general/VabiMacros.hpp"
#include <cstdint>
#include <cstdlib>
extern "C" {
int APS5_VABI sceWebBrowserDialogInitialize(void);
int APS5_VABI sceWebBrowserDialogTerminate(void);
int APS5_VABI sceWebBrowserDialogOpen(const void* param);
int APS5_VABI sceWebBrowserDialogGetStatus(void);
int APS5_VABI sceWebBrowserDialogUpdateStatus(void);
}
namespace {
constexpr int COMMON_DIALOG_STATUS_NONE = 0;
constexpr int COMMON_DIALOG_STATUS_INITIALIZED = 1;
constexpr int COMMON_DIALOG_STATUS_FINISHED = 3;
void Require(bool value) { if (!value) std::abort(); }
}
int main() {
Require(sceWebBrowserDialogGetStatus() == COMMON_DIALOG_STATUS_NONE);
Require(sceWebBrowserDialogInitialize() == 0);
Require(sceWebBrowserDialogGetStatus() == COMMON_DIALOG_STATUS_INITIALIZED);
Require(sceWebBrowserDialogTerminate() == 0);
Require(sceWebBrowserDialogGetStatus() == COMMON_DIALOG_STATUS_NONE);
Require(sceWebBrowserDialogInitialize() == 0);
std::uint8_t param[64] = {};
Require(sceWebBrowserDialogOpen(param) == 0);
Require(sceWebBrowserDialogGetStatus() == COMMON_DIALOG_STATUS_FINISHED);
Require(sceWebBrowserDialogUpdateStatus() == COMMON_DIALOG_STATUS_FINISHED);
}