-
Notifications
You must be signed in to change notification settings - Fork 2
/
sign_test.go
30 lines (24 loc) · 701 Bytes
/
sign_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package main
import "testing"
func TestSignAndVerify(t *testing.T) {
params := SignParams{
AppBundleID :"com.example.yourapp",
ProductIdentifier :"com.example.yoursubscription",
OfferID :"your_offer_id",
ApplicationUsername :"8E3DC5F16E13537ADB45FB0F980ACDB6B55839870DBCE7E346E1826F5B0296CA",
}
result, err := Sign(¶ms)
if err != nil {
t.Fatalf("sign failed: %v", err)
}
t.Logf("sign ok, params[%+v], result[%+v]", params, result)
if !Verify(¶ms, &result) {
t.Fatalf("verify failed: %v", err)
}
sig := []byte(result.Signature)
sig[0] ^= 0x01
result.Signature = string(sig)
if Verify(¶ms, &result) {
t.Fatalf("verify should fail, but succedded")
}
}