///|
fn main raise {
let ledger = @amqp.ConfirmLedger::new("connection-A/channel-1/lifetime-1")
let first = ledger.issue()
let second = ledger.issue()
let third = ledger.issue()
ignore(ledger.confirm(third.epoch, third.sequence, multiple=false, ack=true))
let update = ledger.confirm(
first.epoch,
third.sequence,
multiple=true,
ack=false,
)
for decision in update.ordered {
let outcome = match decision.outcome {
Confirmed => "confirmed"
Nacked => "nacked"
Unknown => "unknown"
}
println("\{decision.token.sequence}:\{outcome}")
}
ignore(second)
let uncertain = ledger.issue()
let lost = ledger.close()
assert_eq(lost[0].token, uncertain)
assert_eq(lost[0].outcome, @amqp.Unknown)
println("\{uncertain.sequence}:unknown")
}