2023-12-03 17:46:10 +00:00
|
|
|
package privilege
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
|
|
|
"github.com/gofiber/fiber/v2"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
|
|
"testing"
|
|
|
|
"time"
|
|
|
|
)
|
|
|
|
|
|
|
|
func TestPublishPrivileges(t *testing.T) {
|
|
|
|
client := Client{
|
|
|
|
URL: "http://localhost:8001",
|
|
|
|
ServiceName: "key",
|
|
|
|
Privileges: []Privilege{
|
|
|
|
{
|
|
|
|
ID: "1",
|
|
|
|
PrivilegeID: "test1",
|
|
|
|
Name: "Test 1",
|
|
|
|
ServiceKey: "key",
|
|
|
|
Description: "This is a test",
|
|
|
|
Type: "count",
|
|
|
|
Value: "100",
|
|
|
|
Price: 10.0,
|
|
|
|
Amount: 5,
|
|
|
|
IsDeleted: false,
|
|
|
|
CreatedAt: time.Now(),
|
|
|
|
UpdatedAt: time.Now(),
|
|
|
|
DeletedAt: time.Time{},
|
|
|
|
},
|
|
|
|
{
|
|
|
|
ID: "2",
|
|
|
|
PrivilegeID: "test2",
|
|
|
|
Name: "Test 2",
|
|
|
|
ServiceKey: "key2",
|
|
|
|
Description: "This is a test",
|
|
|
|
Type: "count",
|
|
|
|
Value: "100",
|
|
|
|
Price: 15.0,
|
|
|
|
Amount: 3,
|
|
|
|
IsDeleted: false,
|
|
|
|
CreatedAt: time.Now(),
|
|
|
|
UpdatedAt: time.Now(),
|
|
|
|
DeletedAt: time.Time{},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
fiberClient := fiber.Client{}
|
|
|
|
controller := NewPrivilege(client, &fiberClient)
|
|
|
|
|
|
|
|
err := controller.PublishPrivileges()
|
|
|
|
|
|
|
|
assert.Nil(t, err)
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestGetActualPrivileges(t *testing.T) {
|
|
|
|
client := Client{
|
|
|
|
URL: "http://localhost:8001",
|
|
|
|
ServiceName: "key",
|
|
|
|
Privileges: []Privilege{},
|
|
|
|
}
|
|
|
|
|
|
|
|
fiberClient := fiber.Client{}
|
|
|
|
controller := NewPrivilege(client, &fiberClient)
|
|
|
|
|
|
|
|
privileges, err := controller.getActualPrivileges()
|
|
|
|
|
|
|
|
fmt.Println(privileges)
|
|
|
|
|
|
|
|
assert.Nil(t, err)
|
|
|
|
assert.NotNil(t, privileges)
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestUpdatePrivileges(t *testing.T) {
|
|
|
|
client := Client{
|
|
|
|
URL: "http://localhost:8001",
|
|
|
|
ServiceName: "key",
|
|
|
|
Privileges: []Privilege{
|
|
|
|
{
|
|
|
|
ID: "2",
|
|
|
|
PrivilegeID: "64e60d28eac51324f2296753",
|
|
|
|
Name: "100 генераций",
|
|
|
|
ServiceKey: "test",
|
|
|
|
Description: "This is a test 100 генераций",
|
|
|
|
Type: "count",
|
2024-01-22 23:02:32 +00:00
|
|
|
Price: 1000,
|
2023-12-03 17:46:10 +00:00
|
|
|
Value: "100",
|
|
|
|
Amount: 5,
|
|
|
|
IsDeleted: false,
|
|
|
|
CreatedAt: time.Now(),
|
|
|
|
UpdatedAt: time.Now(),
|
|
|
|
DeletedAt: time.Time{},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
fiberClient := fiber.Client{}
|
|
|
|
controller := NewPrivilege(client, &fiberClient)
|
|
|
|
|
2024-01-22 23:02:32 +00:00
|
|
|
privileges, err := controller.getActualPrivileges()
|
|
|
|
|
|
|
|
err = controller.updatePrivileges(privileges)
|
2023-12-03 17:46:10 +00:00
|
|
|
|
|
|
|
assert.Nil(t, err)
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestSetupActualPrivileges(t *testing.T) {
|
|
|
|
client := Client{
|
|
|
|
URL: "http://localhost:8001",
|
|
|
|
ServiceName: "key",
|
|
|
|
Privileges: []Privilege{
|
|
|
|
{
|
|
|
|
Name: "TestSetupActualPrivileges",
|
|
|
|
PrivilegeID: "test1",
|
|
|
|
ServiceKey: "key",
|
|
|
|
Description: "This is a test",
|
|
|
|
Type: "count",
|
|
|
|
Value: "100",
|
|
|
|
Price: 10.0,
|
|
|
|
Amount: 5,
|
|
|
|
IsDeleted: false,
|
|
|
|
CreatedAt: time.Now(),
|
|
|
|
UpdatedAt: time.Now(),
|
|
|
|
DeletedAt: time.Time{},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
fiberClient := fiber.Client{}
|
|
|
|
controller := NewPrivilege(client, &fiberClient)
|
|
|
|
|
|
|
|
err := controller.setupActualPrivileges()
|
|
|
|
|
|
|
|
assert.Nil(t, err, "error")
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestRemovePrivilege(t *testing.T) {
|
|
|
|
client := Client{
|
|
|
|
URL: "http://localhost:8001",
|
|
|
|
ServiceName: "key",
|
|
|
|
Privileges: []Privilege{
|
|
|
|
{
|
2024-01-22 23:02:32 +00:00
|
|
|
ID: "2",
|
|
|
|
PrivilegeID: "64e60d28eac51324f2296753",
|
|
|
|
Name: "100 генераций",
|
|
|
|
ServiceKey: "test",
|
|
|
|
Description: "This is a test 100 генераций",
|
2023-12-03 17:46:10 +00:00
|
|
|
Type: "count",
|
|
|
|
Value: "100",
|
|
|
|
Amount: 5,
|
|
|
|
IsDeleted: false,
|
|
|
|
CreatedAt: time.Now(),
|
|
|
|
UpdatedAt: time.Now(),
|
|
|
|
DeletedAt: time.Time{},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
fiberClient := fiber.Client{}
|
|
|
|
controller := NewPrivilege(client, &fiberClient)
|
|
|
|
|
|
|
|
err := controller.removePrivilege("64e60d28eac51324f2296753")
|
|
|
|
|
|
|
|
assert.Nil(t, err)
|
|
|
|
}
|