import gleeunit import sim/device import sim/memory pub fn main() -> Nil { gleeunit.main() } // gleeunit test functions end in `_test` pub fn hello_world_test() { let name = "Joe" let greeting = "Hello, " <> name <> "!" assert greeting == "Hello, Joe!" } pub fn pad_test() { assert <<1, 2, 3, 0>> == memory.pad_to_length(<<1, 2, 3>>, 32) } pub fn insert_test() { assert <<1, 2, 3, 4>> == memory.insert_at(<<1, 2, 3>>, 3, <<4>>) assert <<1, 2, 3, 0, 5>> == memory.insert_at(<<1, 2, 3>>, 4, <<5>>) assert <<1, 67, 3>> == memory.insert_at(<<1, 2, 3>>, 1, <<67>>) } pub fn open_test() { let d0 = device.open("0") device.close(d0) } pub fn test_device_test() { let d1 = device.open("1") assert <<>> == device.read(d1).0 let d1 = device.test_device(d1) assert d1.has_data == True let #(char, d1) = device.read(d1) assert <<"a">> == char assert d1.has_data == False assert <<>> == device.read(d1).0 device.close(d1) let d0 = device.open("0") let d0 = device.test_device(d0) assert d0.has_data == False device.close(d0) }