currencyConverter.cpp 自体でこの関数 stringToUpper(str2) を呼び出すと、動作して大文字が返されます。
void currencyConverter::stringToUpper(string &s)
{
for(unsigned int l = 0; l < s.length(); l++)
{
s[l] = toupper(s[l]);
}
}
ただし、という名前のファイルがunitTest.cpp
あり、これは次のことを行います。
#include "unitTest.h"
#include "currencyConverter.h"
CPPUNIT_TEST_SUITE_REGISTRATION(unitTest);
unitTest::unitTest() {
}
unitTest::~unitTest() {
}
void unitTest::setUp() {
}
void unitTest::tearDown() {
}
void stringToUpper(string&);
void unitTest::testStringLowerToUpper()
{
string str = "ILOVECPLUSPLUS";
string str2 = "ilovecplusplus";
cout << "\nChecking if string 1 '" << str << "' equals string 2 '" << str2 << "'";
CPPUNIT_ASSERT_EQUAL(str,str2);
//this part i will use my stringToUpperFunction to test.
currencyConverter c;
c.stringToUpper(str2);
cout << str2 << endl;
}
を印刷しようとすると、大文字ではなく のstr2
ままです。ilovecplusplus
コードまたは呼び出しの何が問題になっていますか?