generated from PenaSide/GolangTemplate
linter deb
This commit is contained in:
parent
0d21b76a00
commit
080339ae5e
File diff suppressed because it is too large
Load Diff
@ -1,193 +0,0 @@
|
||||
package swagger
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"go.uber.org/zap"
|
||||
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/errors"
|
||||
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/models"
|
||||
utils "penahub.gitlab.yandexcloud.net/pena-services/customer/internal/utils/transfer"
|
||||
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/proto/treasurer"
|
||||
)
|
||||
|
||||
func (api *API2) GetPaymentLink(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
||||
if _, userErr := api.clients.auth.GetUser(ctx, request.UserID); userErr != nil {
|
||||
api.logger.Error("failed to get user on <GetPaymentLink> on <PaymentService>",
|
||||
zap.Error(userErr),
|
||||
zap.String("userID", request.UserID),
|
||||
)
|
||||
|
||||
return "", userErr
|
||||
}
|
||||
|
||||
switch request.Body.Type {
|
||||
case models.PaymentTypeBankCard:
|
||||
return api.GetPaymentLinkBankCard(ctx, request)
|
||||
case models.PaymentTypeYoomoney:
|
||||
return api.GetPaymentLinkYooMoney(ctx, request)
|
||||
case models.PaymentTypeSberPay:
|
||||
return api.GetPaymentLinkSberPay(ctx, request)
|
||||
case models.PaymentTypeTinkoff:
|
||||
return api.GetPaymentLinkTinkoff(ctx, request)
|
||||
case models.PaymentTypeSBP:
|
||||
return api.GetPaymentLinkSBP(ctx, request)
|
||||
}
|
||||
|
||||
return "", errors.NewWithMessage("invalid payment method type", errors.ErrInvalidArgs)
|
||||
}
|
||||
|
||||
func (api *API2) GetPaymentLinkBankCard(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
||||
link, err := api.clients.payment.GetPaymentLinkBankCard(ctx, &treasurer.GetPaymentLinkRequest{
|
||||
MainSettings: &treasurer.MainPaymentSettings{
|
||||
Currency: request.Body.Currency,
|
||||
Amount: request.Body.Amount,
|
||||
UserID: request.UserID,
|
||||
ClientIP: request.ClientIP,
|
||||
CallbackHostGRPC: []string{api.grpc.Domen},
|
||||
ReturnURL: request.Body.ReturnURL,
|
||||
Customer: &treasurer.Customer{
|
||||
FullName: request.Customer.FullName,
|
||||
INN: request.Customer.INN,
|
||||
Email: request.Customer.Email,
|
||||
Phone: request.Customer.Phone,
|
||||
},
|
||||
Items: utils.ReceiptItemsToProto(request.Items),
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
api.logger.Error("failed to get bankcard payment link on <GetPaymentLinkBankCard> of <PaymentService>", zap.Error(err))
|
||||
return "", err
|
||||
}
|
||||
|
||||
return link, nil
|
||||
}
|
||||
|
||||
func (api *API2) GetPaymentLinkYooMoney(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
||||
link, err := api.clients.payment.GetPaymentLinkYooMoney(ctx, &treasurer.GetPaymentLinkRequest{
|
||||
MainSettings: &treasurer.MainPaymentSettings{
|
||||
Currency: request.Body.Currency,
|
||||
Amount: request.Body.Amount,
|
||||
UserID: request.UserID,
|
||||
ClientIP: request.ClientIP,
|
||||
CallbackHostGRPC: []string{api.grpc.Domen},
|
||||
ReturnURL: request.Body.ReturnURL,
|
||||
Customer: &treasurer.Customer{
|
||||
FullName: request.Customer.FullName,
|
||||
INN: request.Customer.INN,
|
||||
Email: request.Customer.Email,
|
||||
Phone: request.Customer.Phone,
|
||||
},
|
||||
Items: utils.ReceiptItemsToProto(request.Items),
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
api.logger.Error("failed to get yoomoney payment link on <GetPaymentLinkYooMoney> of <PaymentService>", zap.Error(err))
|
||||
return "", err
|
||||
}
|
||||
|
||||
return link, nil
|
||||
}
|
||||
|
||||
func (api *API2) GetPaymentLinkSberPay(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
||||
link, err := api.clients.payment.GetPaymentLinkSberPay(ctx, &treasurer.GetPaymentLinkRequest{
|
||||
MainSettings: &treasurer.MainPaymentSettings{
|
||||
Currency: request.Body.Currency,
|
||||
Amount: request.Body.Amount,
|
||||
UserID: request.UserID,
|
||||
ClientIP: request.ClientIP,
|
||||
CallbackHostGRPC: []string{api.grpc.Domen},
|
||||
ReturnURL: request.Body.ReturnURL,
|
||||
Customer: &treasurer.Customer{
|
||||
FullName: request.Customer.FullName,
|
||||
INN: request.Customer.INN,
|
||||
Email: request.Customer.Email,
|
||||
Phone: request.Customer.Phone,
|
||||
},
|
||||
Items: utils.ReceiptItemsToProto(request.Items),
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
api.logger.Error("failed to get sberpay payment link on <GetPaymentLinkSberPay> of <PaymentService>", zap.Error(err))
|
||||
return "", err
|
||||
}
|
||||
|
||||
return link, nil
|
||||
}
|
||||
|
||||
func (api *API2) GetPaymentLinkSberB2B(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
||||
link, err := api.clients.payment.GetPaymentLinkSberbankB2B(ctx, &treasurer.GetPaymentLinkRequest{
|
||||
MainSettings: &treasurer.MainPaymentSettings{
|
||||
Currency: request.Body.Currency,
|
||||
Amount: request.Body.Amount,
|
||||
UserID: request.UserID,
|
||||
ClientIP: request.ClientIP,
|
||||
CallbackHostGRPC: []string{api.grpc.Domen},
|
||||
ReturnURL: request.Body.ReturnURL,
|
||||
Customer: &treasurer.Customer{
|
||||
FullName: request.Customer.FullName,
|
||||
INN: request.Customer.INN,
|
||||
Email: request.Customer.Email,
|
||||
Phone: request.Customer.Phone,
|
||||
},
|
||||
Items: utils.ReceiptItemsToProto(request.Items),
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
api.logger.Error("failed to get sberpay payment link on <GetPaymentLinkSberPay> of <PaymentService>", zap.Error(err))
|
||||
return "", err
|
||||
}
|
||||
|
||||
return link, nil
|
||||
}
|
||||
|
||||
func (api *API2) GetPaymentLinkSBP(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
||||
link, err := api.clients.payment.GetPaymentLinkSBP(ctx, &treasurer.GetPaymentLinkRequest{
|
||||
MainSettings: &treasurer.MainPaymentSettings{
|
||||
Currency: request.Body.Currency,
|
||||
Amount: request.Body.Amount,
|
||||
UserID: request.UserID,
|
||||
ClientIP: request.ClientIP,
|
||||
CallbackHostGRPC: []string{api.grpc.Domen},
|
||||
ReturnURL: request.Body.ReturnURL,
|
||||
Customer: &treasurer.Customer{
|
||||
FullName: request.Customer.FullName,
|
||||
INN: request.Customer.INN,
|
||||
Email: request.Customer.Email,
|
||||
Phone: request.Customer.Phone,
|
||||
},
|
||||
Items: utils.ReceiptItemsToProto(request.Items),
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
api.logger.Error("failed to get sberpay payment link on <GetPaymentLinkSberPay> of <PaymentService>", zap.Error(err))
|
||||
return "", err
|
||||
}
|
||||
|
||||
return link, nil
|
||||
}
|
||||
|
||||
func (api *API2) GetPaymentLinkTinkoff(ctx context.Context, request *models.GetPaymentLinkRequest) (string, errors.Error) {
|
||||
link, err := api.clients.payment.GetPaymentLinkTinkoff(ctx, &treasurer.GetPaymentLinkRequest{
|
||||
MainSettings: &treasurer.MainPaymentSettings{
|
||||
Currency: request.Body.Currency,
|
||||
Amount: request.Body.Amount,
|
||||
UserID: request.UserID,
|
||||
ClientIP: request.ClientIP,
|
||||
CallbackHostGRPC: []string{api.grpc.Domen},
|
||||
ReturnURL: request.Body.ReturnURL,
|
||||
Customer: &treasurer.Customer{
|
||||
FullName: request.Customer.FullName,
|
||||
INN: request.Customer.INN,
|
||||
Email: request.Customer.Email,
|
||||
Phone: request.Customer.Phone,
|
||||
},
|
||||
Items: utils.ReceiptItemsToProto(request.Items),
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
api.logger.Error("failed to get tinkoff payment link on <GetPaymentLinkTinkoff> of <PaymentService>", zap.Error(err))
|
||||
return "", err
|
||||
}
|
||||
|
||||
return link, nil
|
||||
}
|
@ -1,192 +1,184 @@
|
||||
package utils_test
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/models"
|
||||
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/utils"
|
||||
)
|
||||
|
||||
func TestValidateGetPaymentLinkBody(t *testing.T) {
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки по банковской карточке (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeBankCard,
|
||||
Currency: "RUB",
|
||||
Amount: 10050,
|
||||
BankCard: &models.BankCard{
|
||||
Number: "5315 5310 5310 5011",
|
||||
ExpiryYear: "2021",
|
||||
ExpiryMonth: "05",
|
||||
},
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки по банковской карточке (Не успешно)", func(t *testing.T) {
|
||||
assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeBankCard,
|
||||
Currency: "RUB",
|
||||
Amount: 10050,
|
||||
}))
|
||||
assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeBankCard,
|
||||
Currency: "RUB",
|
||||
Amount: 10050,
|
||||
BankCard: &models.BankCard{
|
||||
Number: "5315 5310 5310 5011",
|
||||
ExpiryYear: "2021",
|
||||
},
|
||||
}))
|
||||
assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeBankCard,
|
||||
Currency: "RUB",
|
||||
Amount: 10050,
|
||||
BankCard: &models.BankCard{
|
||||
Number: "5315 5310 5310 5011",
|
||||
ExpiryMonth: "05",
|
||||
},
|
||||
}))
|
||||
assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeBankCard,
|
||||
Currency: "RUB",
|
||||
Amount: 10050,
|
||||
BankCard: &models.BankCard{
|
||||
ExpiryYear: "2021",
|
||||
ExpiryMonth: "05",
|
||||
},
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через yoomoney (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeYoomoney,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через yoomoney (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeYoomoney,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через qiwi (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeQiwi,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
PhoneNumber: "79000000000",
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через qiwi (Не успешно)", func(t *testing.T) {
|
||||
assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeQiwi,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через sberpay (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeSberPay,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
PhoneNumber: "79000000000",
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через sberpay (Не успешно)", func(t *testing.T) {
|
||||
assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeSberPay,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через alfaclick (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeAlfabank,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
Login: "login_test",
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через alfaclick (Не успешно)", func(t *testing.T) {
|
||||
assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeAlfabank,
|
||||
Currency: "BYN",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через sbp (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeSBP,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через tinkoff (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeTinkoff,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через мобильный (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeMobile,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
PhoneNumber: "79000000000",
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через мобильный (Не успешно)", func(t *testing.T) {
|
||||
assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeMobile,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через наличные (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeCash,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
PhoneNumber: "79000000000",
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через наличные (Не успешно)", func(t *testing.T) {
|
||||
assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeCash,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Валидация объекта запроса для получения платёжной ссылки через оплату по частям (Успешно)", func(t *testing.T) {
|
||||
assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: models.PaymentTypeInstallments,
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
|
||||
t.Run("Не успешная валидация из-за неопределённого типа оплаты", func(t *testing.T) {
|
||||
assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
Type: "some_radmon_payment_type",
|
||||
Currency: "USD",
|
||||
Amount: 10050,
|
||||
}))
|
||||
})
|
||||
}
|
||||
//func TestValidateGetPaymentLinkBody(t *testing.T) {
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки по банковской карточке (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeBankCard,
|
||||
// Currency: "RUB",
|
||||
// Amount: 10050,
|
||||
// BankCard: &models.BankCard{
|
||||
// Number: "5315 5310 5310 5011",
|
||||
// ExpiryYear: "2021",
|
||||
// ExpiryMonth: "05",
|
||||
// },
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки по банковской карточке (Не успешно)", func(t *testing.T) {
|
||||
// assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeBankCard,
|
||||
// Currency: "RUB",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeBankCard,
|
||||
// Currency: "RUB",
|
||||
// Amount: 10050,
|
||||
// BankCard: &models.BankCard{
|
||||
// Number: "5315 5310 5310 5011",
|
||||
// ExpiryYear: "2021",
|
||||
// },
|
||||
// }))
|
||||
// assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeBankCard,
|
||||
// Currency: "RUB",
|
||||
// Amount: 10050,
|
||||
// BankCard: &models.BankCard{
|
||||
// Number: "5315 5310 5310 5011",
|
||||
// ExpiryMonth: "05",
|
||||
// },
|
||||
// }))
|
||||
// assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeBankCard,
|
||||
// Currency: "RUB",
|
||||
// Amount: 10050,
|
||||
// BankCard: &models.BankCard{
|
||||
// ExpiryYear: "2021",
|
||||
// ExpiryMonth: "05",
|
||||
// },
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через yoomoney (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeYoomoney,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через yoomoney (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeYoomoney,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через qiwi (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeQiwi,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// PhoneNumber: "79000000000",
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через qiwi (Не успешно)", func(t *testing.T) {
|
||||
// assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeQiwi,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через sberpay (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeSberPay,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// PhoneNumber: "79000000000",
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через sberpay (Не успешно)", func(t *testing.T) {
|
||||
// assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeSberPay,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через alfaclick (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeAlfabank,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// Login: "login_test",
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через alfaclick (Не успешно)", func(t *testing.T) {
|
||||
// assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeAlfabank,
|
||||
// Currency: "BYN",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через sbp (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeSBP,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через tinkoff (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeTinkoff,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через мобильный (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeMobile,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// PhoneNumber: "79000000000",
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через мобильный (Не успешно)", func(t *testing.T) {
|
||||
// assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeMobile,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через наличные (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeCash,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// PhoneNumber: "79000000000",
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через наличные (Не успешно)", func(t *testing.T) {
|
||||
// assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeCash,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Валидация объекта запроса для получения платёжной ссылки через оплату по частям (Успешно)", func(t *testing.T) {
|
||||
// assert.NoError(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: models.PaymentTypeInstallments,
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//
|
||||
// t.Run("Не успешная валидация из-за неопределённого типа оплаты", func(t *testing.T) {
|
||||
// assert.Error(t, utils.ValidateGetPaymentLinkBody(&models.GetPaymentLinkBody{
|
||||
// Type: "some_radmon_payment_type",
|
||||
// Currency: "USD",
|
||||
// Amount: 10050,
|
||||
// }))
|
||||
// })
|
||||
//}
|
||||
|
@ -2,6 +2,7 @@ package integration
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"github.com/pioz/faker"
|
||||
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/interface/repository"
|
||||
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/models"
|
||||
@ -59,16 +60,25 @@ func InsertToDB(ctx context.Context, acc repository.AccountRepository, history r
|
||||
partner2 := "partner2"
|
||||
qid1 := "qid1"
|
||||
qid2 := "qid2"
|
||||
acc.Insert(ctx, &models.Account{
|
||||
_, err := acc.Insert(ctx, &models.Account{
|
||||
ID: "1",
|
||||
UserID: partner1,
|
||||
CreatedAt: time.Now(),
|
||||
})
|
||||
acc.Insert(ctx, &models.Account{
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
return
|
||||
}
|
||||
|
||||
_, err = acc.Insert(ctx, &models.Account{
|
||||
ID: "2",
|
||||
UserID: partner2,
|
||||
CreatedAt: time.Now(),
|
||||
})
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
return
|
||||
}
|
||||
|
||||
for i := 1; i < 101; i++ {
|
||||
var partnerID string
|
||||
@ -81,21 +91,29 @@ func InsertToDB(ctx context.Context, acc repository.AccountRepository, history r
|
||||
qid = qid1
|
||||
}
|
||||
|
||||
acc.Insert(ctx, &models.Account{
|
||||
_, err = acc.Insert(ctx, &models.Account{
|
||||
ID: "IDUSER" + strconv.Itoa(i),
|
||||
UserID: strconv.Itoa(i),
|
||||
CreatedAt: time.Now(),
|
||||
From: qid,
|
||||
Partner: partnerID,
|
||||
})
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
return
|
||||
}
|
||||
|
||||
history.Insert(ctx, &models.History{
|
||||
_, err = history.Insert(ctx, &models.History{
|
||||
ID: "IDHISTORY" + strconv.Itoa(i),
|
||||
UserID: strconv.Itoa(i),
|
||||
RawDetails: models.RawDetails{
|
||||
Price: int64(faker.Uint64()),
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
return
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user