2023-08-30 13:15:44 +09:00
|
|
|
// package main ...
|
|
|
|
|
package session
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"context"
|
|
|
|
|
"testing"
|
|
|
|
|
"time"
|
|
|
|
|
|
|
|
|
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
|
|
|
|
"repositories.action2quare.com/ayo/gocommon/logger"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func TestExpTable(t *testing.T) {
|
2023-08-31 20:39:00 +09:00
|
|
|
// pv, err := NewProvider(context.Background(), "redis://192.168.8.94:6380/1", 10*time.Second)
|
2023-08-30 15:43:26 +09:00
|
|
|
// if err != nil {
|
|
|
|
|
// t.Error(err)
|
|
|
|
|
// }
|
|
|
|
|
|
2023-08-31 20:39:00 +09:00
|
|
|
// cs, err := NewConsumer(context.Background(), "redis://192.168.8.94:6380/1", 10*time.Second)
|
2023-08-30 15:43:26 +09:00
|
|
|
// if err != nil {
|
|
|
|
|
// t.Error(err)
|
|
|
|
|
// }
|
|
|
|
|
|
2023-08-31 20:39:00 +09:00
|
|
|
pv, err := NewProvider(context.Background(), "mongodb://192.168.8.94:27017/maingate?replicaSet=repl01&retrywrites=false", 10*time.Second)
|
|
|
|
|
if err != nil {
|
|
|
|
|
t.Error(err)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
cs, err := NewConsumer(context.Background(), "mongodb://192.168.8.94:27017/maingate?replicaSet=repl01&retrywrites=false", 10*time.Second)
|
|
|
|
|
if err != nil {
|
|
|
|
|
t.Error(err)
|
|
|
|
|
}
|
|
|
|
|
|
2023-08-31 14:33:08 +09:00
|
|
|
test := primitive.NewObjectID()
|
|
|
|
|
sk := make_storagekey(test)
|
|
|
|
|
pk := storagekey_to_publickey(sk)
|
|
|
|
|
if publickey_to_storagekey(pk) != sk {
|
|
|
|
|
t.Errorf("pk != sk : %s, %s", pk, sk)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
au1 := &Authorization{
|
|
|
|
|
Account: primitive.NewObjectID(),
|
|
|
|
|
Platform: "editor",
|
|
|
|
|
Uid: "uid-1",
|
|
|
|
|
}
|
|
|
|
|
sk1, err := pv.New(au1)
|
2023-08-30 13:15:44 +09:00
|
|
|
if err != nil {
|
|
|
|
|
t.Error(err)
|
|
|
|
|
}
|
|
|
|
|
|
2023-08-31 14:33:08 +09:00
|
|
|
au2 := &Authorization{
|
|
|
|
|
Account: primitive.NewObjectID(),
|
|
|
|
|
Platform: "editor",
|
|
|
|
|
Uid: "uid-2",
|
|
|
|
|
}
|
|
|
|
|
sk2, err := pv.New(au2)
|
2023-08-30 13:15:44 +09:00
|
|
|
if err != nil {
|
|
|
|
|
t.Error(err)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
go func() {
|
|
|
|
|
for {
|
2025-08-15 23:55:50 +09:00
|
|
|
q1 := cs.Query(sk1)
|
|
|
|
|
logger.Println("query :", q1)
|
2023-08-30 18:23:19 +09:00
|
|
|
|
2025-08-15 23:55:50 +09:00
|
|
|
q2 := cs.Query(sk2)
|
|
|
|
|
logger.Println("query :", q2)
|
2023-08-30 13:15:44 +09:00
|
|
|
time.Sleep(time.Second)
|
|
|
|
|
}
|
|
|
|
|
}()
|
|
|
|
|
|
2023-08-30 15:43:26 +09:00
|
|
|
cs.Touch(sk1)
|
2023-08-30 13:15:44 +09:00
|
|
|
time.Sleep(2 * time.Second)
|
2023-08-30 15:43:26 +09:00
|
|
|
cs.Touch(sk2)
|
2023-08-30 13:15:44 +09:00
|
|
|
time.Sleep(2 * time.Second)
|
|
|
|
|
|
|
|
|
|
time.Sleep(2 * time.Second)
|
2025-09-11 09:38:38 +09:00
|
|
|
pv.RevokeAll(au1.Account, false)
|
2023-08-30 13:15:44 +09:00
|
|
|
|
2023-08-30 15:43:26 +09:00
|
|
|
cs.Touch(sk1)
|
2023-08-30 13:15:44 +09:00
|
|
|
time.Sleep(2 * time.Second)
|
2023-08-30 15:43:26 +09:00
|
|
|
cs.Touch(sk2)
|
2023-08-30 13:15:44 +09:00
|
|
|
time.Sleep(2 * time.Second)
|
|
|
|
|
|
2023-08-31 20:39:00 +09:00
|
|
|
cs2, err := NewConsumer(context.Background(), "redis://192.168.8.94:6380/1", 10*time.Second)
|
2023-08-30 13:15:44 +09:00
|
|
|
if err != nil {
|
|
|
|
|
t.Error(err)
|
|
|
|
|
}
|
|
|
|
|
|
2025-08-15 23:55:50 +09:00
|
|
|
q2 := cs2.Query(sk2)
|
|
|
|
|
logger.Println("queryf :", q2)
|
2023-08-30 13:15:44 +09:00
|
|
|
time.Sleep(20 * time.Second)
|
|
|
|
|
}
|