How to run several test cases for one fixture in Google Test?
<p>Suppose that I have a Google Test fixture named <code>ProfileTest</code> inherited from <code>::testing::TestWithParams&lt;T&gt;</code> that creates a parser:</p>

<pre><code>class ProfileTest:

public ::testing::TestWithParam&lt;std::tuple&lt;std::string,std::string&gt;&gt;{

public:
    QString getName(){
        return QFileInfo(*m_file).fileName();
    }

protected:
    void SetUp(){

        m_profile = new Profile();

        m_file = new QFile(std::get&lt;0&gt;(GetParam()).c_str());
        m_file-&gt;open(QIODevice::WriteOnly | QIODevice::Text);
        m_file-&gt;write(std::get&lt;1&gt;(GetParam()).c_str());
        m_file-&gt;close();

    }
    void TearDown(){

        delete m_file;

        delete m_profile;
    }

    Profile* m_profile;
    QFile *m_file;
};
</code></pre>

<p>Parametrized test case:</p>

<pre><code>TEST_P(ProfileTest, TestProfileGoodFormedContent){
    ASSERT_NO_THROW(m_profile-&gt;readProfile(QFileInfo(*m_file)));
    ASSERT_STREQ(m_profile-&gt;name(), getName());
    ASSERT_GE(m_profile-&gt;getProfileConfigurations().size(),1);
}
</code></pre>

<p>I have added <code>TEST_CASE</code> with well-formed content, and anything works great.</p>

<p>Now I want to add <code>TEST_CASE</code> with bad-formed content, but <code>TestProfileGoodFormedContent</code> <code>TEST_P</code> is unsuitable for testing bad content.</p>

<p>I suppose I should add a new <code>TEST_P</code>, but it will have same <code>fixture(ProfileTest)</code> that brings me an error that all test cases will be provided to any <code>TEST_P</code> that have <code>ProfileTest</code> as fixture.</p>

<p>What should I do to test well-formed content and bad-formed content simultaneously?</p>