summaryrefslogtreecommitdiff
path: root/libstdc++
diff options
context:
space:
mode:
authorBob Sidebotham <rns@fore.com>1998-07-12 02:20:22 +0000
committerJason Merrill <jason@gcc.gnu.org>1998-07-11 22:20:22 -0400
commitb0e7d996da41229d59782e2fa0d7d4dfbcee610b (patch)
tree59a62a662630a19387af7a800b8f50cc1a579d8a /libstdc++
parente70b4d8f72c7d4c38084087bb1def88dcc9d05bb (diff)
downloadgcc-b0e7d996da41229d59782e2fa0d7d4dfbcee610b.tar.gz
* tstring.cc (findtest): New fn.
From-SVN: r21071
Diffstat (limited to 'libstdc++')
-rw-r--r--libstdc++/tests/ChangeLog4
-rw-r--r--libstdc++/tests/tstring.cc48
2 files changed, 52 insertions, 0 deletions
diff --git a/libstdc++/tests/ChangeLog b/libstdc++/tests/ChangeLog
index 66f0566b106..337b91aede6 100644
--- a/libstdc++/tests/ChangeLog
+++ b/libstdc++/tests/ChangeLog
@@ -1,3 +1,7 @@
+1998-07-12 Bob Sidebotham <rns@fore.com>
+
+ * tstring.cc (findtest): New fn.
+
1998-06-01 Jason Merrill <jason@yorick.cygnus.com>
* tlist.cc, tvector.cc, tmap.cc: Remove explicit instantiations.
diff --git a/libstdc++/tests/tstring.cc b/libstdc++/tests/tstring.cc
index 14e8706e388..833d3d96460 100644
--- a/libstdc++/tests/tstring.cc
+++ b/libstdc++/tests/tstring.cc
@@ -109,6 +109,53 @@ void cattest()
assert(z == "Hello, world.");
}
+void
+findtest()
+{
+ string x;
+ string::size_type pos;
+ pos = x.find_last_not_of('X');
+ assert(pos == string::npos);
+ pos = x.find_last_not_of("XYZ");
+ assert(pos == string::npos);
+
+ string y("a");
+ pos = y.find_last_not_of('X');
+ assert(pos == 0);
+ pos = y.find_last_not_of('a');
+ assert(pos == string::npos);
+ pos = y.find_last_not_of("XYZ");
+ assert(pos == 0);
+ pos = y.find_last_not_of("a");
+ assert(pos == string::npos);
+
+ string z("ab");
+ pos = z.find_last_not_of('X');
+ assert(pos == 1);
+ pos = z.find_last_not_of("XYZ");
+ assert(pos == 1);
+ pos = z.find_last_not_of('b');
+ assert(pos == 0);
+ pos = z.find_last_not_of("Xb");
+ assert(pos == 0);
+ pos = z.find_last_not_of("Xa");
+ assert(pos == 1);
+ pos = z.find_last_of("ab");
+ assert(pos == 1);
+ pos = z.find_last_of("Xa");
+ assert(pos == 0);
+ pos = z.find_last_of("Xb");
+ assert(pos == 1);
+ pos = z.find_last_of("XYZ");
+ assert(pos == string::npos);
+ pos = z.find_last_of('a');
+ assert(pos == 0);
+ pos = z.find_last_of('b');
+ assert(pos == 1);
+ pos = z.find_last_of('X');
+ assert(pos == string::npos);
+}
+
void comparetest()
{
string x = X;
@@ -191,6 +238,7 @@ int main()
decltest();
cattest();
comparetest();
+ findtest();
substrtest();
identitytest(X, X);
identitytest(X, Y);