Auto-indexing service and GraphQL API for AT Protocol Records quickslice.slices.network/
atproto gleam graphql
at main 33 lines 742 B view raw
1import gleeunit/should 2import graphql/admin/cursor 3 4pub fn encode_cursor_test() { 5 cursor.encode("Label", 42) 6 |> should.equal("TGFiZWw6NDI=") 7} 8 9pub fn encode_cursor_with_large_id_test() { 10 cursor.encode("Report", 12_345) 11 |> should.equal("UmVwb3J0OjEyMzQ1") 12} 13 14pub fn decode_cursor_test() { 15 cursor.decode("TGFiZWw6NDI=") 16 |> should.equal(Ok(#("Label", 42))) 17} 18 19pub fn decode_cursor_with_large_id_test() { 20 cursor.decode("UmVwb3J0OjEyMzQ1") 21 |> should.equal(Ok(#("Report", 12_345))) 22} 23 24pub fn decode_invalid_cursor_test() { 25 cursor.decode("not-valid-base64!!!") 26 |> should.be_error() 27} 28 29pub fn decode_malformed_cursor_test() { 30 // Valid base64 but wrong format (no colon) 31 cursor.decode("bm9jb2xvbg==") 32 |> should.be_error() 33}