1package acmeapi
2
3import (
4	"context"
5	"testing"
6)
7
8func TestNonce(t *testing.T) {
9	ns := nonceSource{}
10	ns.AddNonce("my-nonce")
11	nsc := ns.WithContext(context.TODO())
12	n, err := nsc.Nonce()
13	if err != nil {
14		t.Fatal()
15	}
16	if n != "my-nonce" {
17		t.Fatal()
18	}
19
20	n, err = nsc.Nonce()
21	if err == nil {
22		t.Fatal()
23	}
24
25	ns.GetNonceFunc = func(ctx context.Context) error {
26		ns.AddNonce("nonce2")
27		return nil
28	}
29
30	n, err = nsc.Nonce()
31	if err != nil {
32		t.Fatal()
33	}
34	if n != "nonce2" {
35		t.Fatal()
36	}
37}
38