Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Client application #5

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open

Client application #5

wants to merge 4 commits into from

Conversation

rissenberg
Copy link
Collaborator

No description provided.

Copy link

@a-badin a-badin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Засчитываю, к сожалению, на 5 баллов.
Такие тесты проверяют только то, что возвращают true при вызове методов. Они не тестируют логику программы.

int _id;
std::string _name;
std::string _avatar_url;
std::shared_ptr<Player> _active_player = nullptr;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

классы не нужно инициализировать

};

TEST_F(MessageTest, TestAuthorSetGet) {
std::shared_ptr<User> author(new User);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

make_shared

}

TEST_F(MessageTest, TestAuthorSetNull) {
bool flag = message.SetAuthor(nullptr);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Не уверен, что такие кейсы вообще нужно тестироватть, это же просто геттеры/сеттеры

TEST_F(SerializerTest, TestSerMess) {
Message mes;
json json = serializer.SerializeMessage(mes);
EXPECT_EQ(json, "json");
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Вы должны тестировать логику - а не только возврат true. Хорошим тестом была бы проверка что сериализация работает, например,

mes.SetId(10);
json json = serializer.SerializeMessage(mes);
EXPECT_EQ(json, R"({"type": "Message", "Data": {"id": 10}})");

};

TEST_F(PlayerTest, TestPlayVideo) {
bool flag = player.PlayVideo();
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

У вас же плеер не каким-то магическим образом вещает в пустоту, если вы включаете какой-то компонент у GUi, например, значит хотя бы примерно посмотрите, какие скорее всего данные ему будут нужны, и тестируйте что класс Player дергает такие методы у Mock объекта. Если Player у вас некий интерфейс для управления вещанием на сервере, значит вам, наверное, нужно что то серверу посылать. Значит проверять нужно опять через Mock объект, что ваш класс что-то отправляет или вызывает кого-то кто умеет отправлять

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants