package tests

//import (
//	_ "embed"
//	"gitea.pena/SQuiz/common/clients"
//	"gitea.pena/SQuiz/common/model"
//	"github.com/gofiber/fiber/v2"
//	"github.com/pioz/faker"
//	"github.com/stretchr/testify/assert"
//	"testing"
//	"time"
//)
//
////go:embed mail/to_client.tmpl
//var toClientTemplate string
//
////go:embed mail/reminder.tmpl
//var reminderTemplate string
//
//func TestProcessMessageToSMTP(t *testing.T) {
//	clientDeps := clients.Deps{
//		SmtpHost:    "connect.mailclient.bz",
//		SmtpPort:    "587",
//		SmtpSender:  "skeris@mailing.pena.digital",
//		ApiKey:      "P0YsjUB137upXrr1NiJefHmXVKW1hmBWlpev",
//		FiberClient: &fiber.Client{},
//		SmtpApiUrl:  "",
//	}
//
//	client := clients.NewSmtpClient(clientDeps)
//
//	recipient := "mullinp@internet.ru"
//	subject := "Test"
//
//	data := mailclient.EmailTemplateData{
//		QuizConfig: model.ResultInfo{
//			Theme: "Taemplste Quiz",
//		},
//		AnswerContent: model.ResultContent{
//			Name:  "Pasha",
//			Phone: "+723456789",
//			Email: "test@example.com",
//			//Adress:    "chtoto tam",
//			Telegram:  "@test",
//			Wechat:    "test_wechat",
//			Viber:     "+723456789",
//			Vk:        "test_vk",
//			Skype:     "test_skype",
//			Whatsup:   "test_whatsup",
//			Messenger: "test_messenger",
//		},
//		AllAnswers: []model.ResultAnswer{
//			{QuestionID: 1, Content: "Pasha"},
//			{QuestionID: 2, Content: "From a friend"},
//		},
//		QuestionsMap: map[uint64]string{
//			2: "How did you hear about us?",
//		},
//		AnswerTime: time.Now().Format("Monday, 2 January 2006 г., 15:04 UTC-07:00"),
//	}
//
//	err := client.SendMailWithAttachment(recipient, subject, toClientTemplate, data, nil)
//	if err != nil {
//		t.Errorf("Error sending email: %v", err)
//	}
//
//}
//
//func TestProcessReminderToClient(t *testing.T) {
//	clientDeps := mailclient.ClientDeps{
//		Host:        "connect.mailclient.bz",
//		Port:        "587",
//		Sender:      "skeris@mailing.pena.digital",
//		Auth:        &mailclient.PlainAuth{Username: "kotilion.95@gmail.com", Password: "vWwbCSg4bf0p"},
//		ApiKey:      "P0YsjUB137upXrr1NiJefHmXVKW1hmBWlpev",
//		FiberClient: &fiber.Client{},
//	}
//
//	client := mailclient.NewClient(clientDeps)
//
//	recipient := "mullinp@internet.ru"
//	subject := "Test Reminder"
//
//	quizConfig := model.ResultInfo{
//		ReplName: "Test Quiz",
//		Reply:    "mullinp@internet.ru",
//		Theme:    "Reminder Theme",
//	}
//
//	err := client.SendMailWithAttachment(recipient, subject, reminderTemplate, mailclient.EmailTemplateData{
//		QuizConfig:    quizConfig,
//		AnswerContent: model.ResultContent{},
//		AllAnswers:    []model.ResultAnswer{},
//		QuestionsMap:  nil,
//	}, nil)
//
//	if err != nil {
//		t.Errorf("Error sending email: %v", err)
//	}
//}
//
//func TestProcessMessageToClient(t *testing.T) {
//
//	smtpData := mailclient.ClientDeps{
//		Host:        "connect.mailclient.bz",
//		Port:        "587",
//		Sender:      "skeris@mailing.pena.digital",
//		Auth:        &mailclient.PlainAuth{Username: "kotilion.95@gmail.com", Password: "vWwbCSg4bf0p"},
//		ApiKey:      "P0YsjUB137upXrr1NiJefHmXVKW1hmBWlpev",
//		FiberClient: &fiber.Client{},
//	}
//
//	mailClient := mailclient.NewClient(smtpData)
//
//	deps := answerwc.DepsSendToClient{
//		Redis:      nil,
//		Dal:        nil,
//		MailClient: mailClient,
//	}
//
//	errChan := make(chan<- error)
//
//	w := answerwc.NewSendToClient(deps, nil, errChan)
//
//	quizConfig := model.QuizConfig{
//		Mailing: model.ResultInfo{
//			Theme: faker.String(),
//		},
//	}
//
//	questionsMap := map[uint64]string{
//		1: faker.String(),
//		2: faker.String(),
//	}
//
//	account := model.Account{
//		Email: "mullinp@internet.ru",
//	}
//
//	allAnswers := []model.ResultAnswer{
//		{
//			AnswerID:   1,
//			QuestionID: 1,
//		},
//		{
//			AnswerID:   2,
//			QuestionID: 2,
//		},
//	}
//
//	answerContent := model.ResultContent{}
//
//	answerTime := time.Now()
//
//	err := w.ProcessMessageToClient(quizConfig, questionsMap, account, allAnswers, answerContent, answerTime)
//
//	assert.NoError(t, err)
//}
