CoreUtils/testing/mstring_test.cpp
2023-10-06 18:32:17 +00:00

51 lines
1.7 KiB
C++

#include <iostream>
#include "../MString.h"
int main(int argc, char **argv) {
// Literal string assignment tests.
coreutils::MString test1 = "this is an assignment test.";
std::cout << "char * operator=: [" << test1 << "]." << std::endl;
test1 = "new value.";
std::cout << "char * operator=: [" << test1 << "]." << std::endl;
coreutils::MString test2("this is another test.");
std::cout << "assign on constructor: [" << test2 << "]." << std::endl;
coreutils::MString xtest;
coreutils::MString ytest("this is a test");
xtest = ytest;
std::cout << "assign mstring to mstring: " << xtest << std::endl;
// Character assignment tests.
coreutils::MString test3;
test3 = 'a';
std::cout << "char operator=: [" << test3 << "]." << std::endl;
coreutils::ZString test7("zstring data");
coreutils::MString test4;
test4 << "this is a test." << test7;
std::cout << "char* operator<<: [" << test4 << "]." << std::endl;
test4 << "another test " << 75;
std::cout << "char* operator<<: [" << test4 << "]." << std::endl;
// Stream assignment capabilities.
coreutils::MString test6;
int number = 75;
test6 << "Will this work? " << number << test4 << " See how this works.";
std::cout << "streaming: [" << test6 << "]." << std::endl;
coreutils::MString test9("XXXXXXXXXYYYYYYYYYY");
std::cout << "test insert: " << test9 << std::endl;
coreutils::MString test8("zzz");
test9.insert(test8, 9);
std::cout << "inserting: " << test9 << std::endl;
test9.insert("aaaaa", 9);
std::cout << "inserting: " << test9 << std::endl;
test9.remove(10, 7);
std::cout << "removing: " << test9 << std::endl;
return 0;
}