package main

import "testing"

func Example() {
	demo()
	// Output:
	// rabbit order.# / order: true
	// nats order.> / order: false
	// rabbit order.* / order.paid: true
	// nats order.* / order.paid.eu: false
	// claim too soon: false
	// claim after idle: true
	// new owner: worker-b
	// pending, stored: 0 1
}
func TestRabbitHashInMiddle(t *testing.T) {
	for _, key := range []string{"a.b", "a.x.b", "a.x.y.b"} {
		if !rabbitMatch("a.#.b", key) {
			t.Fatal(key)
		}
	}
	if rabbitMatch("a.*.b", "a.b") {
		t.Fatal("star matched zero tokens")
	}
}
func TestNatsTailRequiresToken(t *testing.T) {
	if natsMatch("a.>", "a") || !natsMatch("a.>", "a.b.c") || natsMatch("a.>.b", "a.x.b") {
		t.Fatal("bad tail wildcard")
	}
}
