UnitTest для выходного оператора перегрузки - PullRequest
0 голосов
/ 06 декабря 2018
Pawn::Color Pawn::GetColor() const
{
    return m_color;
}

Pawn& Pawn::operator=(const Pawn& other)
{
    m_color = other.m_color;
    return *this;
}

std::ostream& operator<<(std::ostream& os, const Pawn& pawn)
{
    return os << pawn.m_color;
}   

И я хочу сделать модульный тест для оператора <<, чтобы проверить, не изменился ли цвет после вывода.

Я пробовал что-то подобное, но не получилось:

TEST_METHOD(outputOperator)
{
    Pawn pawn(Pawn::Color::Blue);
    std::stringstream out;
    out << pawn.GetColor();
    //Assert::IsTrue(out.str() == pawn.GetColor());

    /*if (out.str() != "Blue") {
        Assert::Fail();
    }*/
}
...