generated from PenaSide/GolangTemplate
117 lines
3.1 KiB
Go
117 lines
3.1 KiB
Go
package transfer_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
"gitea.pena/PenaSide/customer/internal/models"
|
|
"gitea.pena/PenaSide/customer/internal/proto/broker"
|
|
"gitea.pena/PenaSide/customer/internal/utils/transfer"
|
|
)
|
|
|
|
func TestPrivilegeModelToProto(t *testing.T) {
|
|
t.Run("Успешный перевод модели привелегии в прото", func(t *testing.T) {
|
|
assert.Equal(t,
|
|
&broker.PrivilegeMessage{
|
|
PrivilegeID: "12",
|
|
ServiceKey: "key-1",
|
|
Amount: 10,
|
|
Type: broker.PrivilegeType_Count,
|
|
Value: "12",
|
|
},
|
|
transfer.PrivilegeModelToProto(&models.Privilege{
|
|
ID: "1",
|
|
Name: "name",
|
|
PrivilegeID: "12",
|
|
ServiceKey: "key-1",
|
|
Description: "description",
|
|
Type: models.PrivilegeTypeCount,
|
|
Value: "12",
|
|
Price: 20,
|
|
Amount: 10,
|
|
}),
|
|
)
|
|
})
|
|
|
|
t.Run("Успешный перевод nil модели привелегии в прото", func(t *testing.T) {
|
|
assert.Equal(t, &broker.PrivilegeMessage{}, transfer.PrivilegeModelToProto(nil))
|
|
})
|
|
}
|
|
|
|
func TestPrivilegeArrayModelToProto(t *testing.T) {
|
|
t.Run("Успешный перевод массива модели привелегий в массив прото", func(t *testing.T) {
|
|
assert.Equal(t,
|
|
[]*broker.PrivilegeMessage{
|
|
{
|
|
PrivilegeID: "12",
|
|
ServiceKey: "key-1",
|
|
Type: broker.PrivilegeType_Full,
|
|
Value: "12",
|
|
},
|
|
},
|
|
transfer.PrivilegeArrayModelToProto([]models.Privilege{
|
|
{
|
|
ID: "1",
|
|
Name: "name",
|
|
PrivilegeID: "12",
|
|
ServiceKey: "key-1",
|
|
Description: "description",
|
|
Type: models.PrivilegeTypeFull,
|
|
Value: "12",
|
|
Price: 20,
|
|
},
|
|
}),
|
|
)
|
|
})
|
|
}
|
|
|
|
func TestPrivilegeProtoToModel(t *testing.T) {
|
|
t.Run("Успешный перевод прото привелегии в модель", func(t *testing.T) {
|
|
assert.Equal(t,
|
|
&models.Privilege{
|
|
PrivilegeID: "12",
|
|
ServiceKey: "key-1",
|
|
Type: models.PrivilegeTypeDay,
|
|
Value: "12",
|
|
Amount: 12,
|
|
},
|
|
transfer.PrivilegeProtoToModel(&broker.PrivilegeMessage{
|
|
PrivilegeID: "12",
|
|
ServiceKey: "key-1",
|
|
Type: broker.PrivilegeType_Day,
|
|
Value: "12",
|
|
Amount: 12,
|
|
}),
|
|
)
|
|
})
|
|
|
|
t.Run("Успешный перевод nil прото привелегии в модель", func(t *testing.T) {
|
|
assert.Equal(t, &models.Privilege{}, transfer.PrivilegeProtoToModel(nil))
|
|
})
|
|
}
|
|
|
|
func TestPrivilegeArrayProtoToModel(t *testing.T) {
|
|
t.Run("Успешный перевод массива прото привелегий в массив моделей", func(t *testing.T) {
|
|
assert.Equal(t,
|
|
[]models.Privilege{
|
|
{
|
|
PrivilegeID: "12",
|
|
ServiceKey: "key-1",
|
|
Type: models.PrivilegeTypeCount,
|
|
Value: "12",
|
|
},
|
|
{},
|
|
},
|
|
transfer.PrivilegeArrayProtoToModel([]*broker.PrivilegeMessage{
|
|
{
|
|
PrivilegeID: "12",
|
|
ServiceKey: "key-1",
|
|
Type: broker.PrivilegeType_Count,
|
|
Value: "12",
|
|
},
|
|
nil,
|
|
}),
|
|
)
|
|
})
|
|
}
|