Cross-platform native clipboard helpers for MoonBit.
///|
test "probe clipboard support and read text" {
match @clipboard.ensure_supported() {
Ok(_) => ()
Err(message) => assert_true(!message.is_empty())
}
match @clipboard.read_text() {
Ok(Some(_text)) => ()
Ok(None) => ()
Err(message) => assert_true(!message.is_empty())
}
}fn ensure_supported() -> Result[Unit, String]test "ensure_supported gives a result-oriented capability check" {
match ensure_supported() {
Ok(_) => ()
Err(message) => assert_true(!message.is_empty())
}
}fn is_supported() -> Booltest "is_supported reports capability without touching clipboard" {
let supported = is_supported()
match supported {
true => ()
false => ()
}
}fn read_text() -> Result[String?, String]test "read_text returns text, emptiness, or an error" {
match read_text() {
Ok(Some(text)) => assert_true(text.length() >= 0)
Ok(None) => ()
Err(message) => assert_true(!message.is_empty())
}
}fn write_text(text : String) -> Result[Unit, String]test "write_text accepts a string and reports success or failure" {
match write_text("") {
Ok(_) => ()
Err(message) => assert_true(!message.is_empty())
}
}Cross-platform native clipboard helpers for MoonBit.