X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;ds=sidebyside;f=unittests%2FADT%2FTwineTest.cpp;h=e9cc41d13fc0321bad9616d8f5305cd149aaa042;hb=b21d9aebba7e45ddcbce61dd501000049cefb335;hp=2f874769507e24bb0ea22ea8278b754261036904;hpb=4baffeb6be3a224f7adadbee17512ded22610fd0;p=oota-llvm.git diff --git a/unittests/ADT/TwineTest.cpp b/unittests/ADT/TwineTest.cpp index 2f874769507..e9cc41d13fc 100644 --- a/unittests/ADT/TwineTest.cpp +++ b/unittests/ADT/TwineTest.cpp @@ -9,6 +9,7 @@ #include "gtest/gtest.h" #include "llvm/ADT/Twine.h" +#include "llvm/ADT/SmallString.h" #include "llvm/Support/raw_ostream.h" using namespace llvm; @@ -31,15 +32,19 @@ TEST(TwineTest, Construction) { } TEST(TwineTest, Numbers) { - EXPECT_EQ("123", Twine::utostr(123).str()); - EXPECT_EQ("-123", Twine::itostr(-123).str()); - EXPECT_EQ("123", Twine::utostr(123).str()); - EXPECT_EQ("-123", Twine::itostr(-123).str()); - EXPECT_EQ("123", Twine::utostr((char) 123).str()); - EXPECT_EQ("-123", Twine::itostr((signed char) -123).str()); + EXPECT_EQ("123", Twine(123U).str()); + EXPECT_EQ("123", Twine(123).str()); + EXPECT_EQ("-123", Twine(-123).str()); + EXPECT_EQ("123", Twine(123).str()); + EXPECT_EQ("-123", Twine(-123).str()); - EXPECT_EQ("7B", Twine::utohexstr(123).str()); - EXPECT_EQ("FFFFFFFFFFFFFF85", Twine::itohexstr(-123).str()); + EXPECT_EQ("7b", Twine::utohexstr(123).str()); +} + +TEST(TwineTest, Characters) { + EXPECT_EQ("x", Twine('x').str()); + EXPECT_EQ("x", Twine(static_cast('x')).str()); + EXPECT_EQ("x", Twine(static_cast('x')).str()); } TEST(TwineTest, Concat) { @@ -69,6 +74,13 @@ TEST(TwineTest, Concat) { repr(Twine("a").concat(Twine("b").concat(Twine("c"))))); } +TEST(TwineTest, toNullTerminatedStringRef) { + SmallString<8> storage; + EXPECT_EQ(0, *Twine("hello").toNullTerminatedStringRef(storage).end()); + EXPECT_EQ(0, + *Twine(StringRef("hello")).toNullTerminatedStringRef(storage).end()); +} + // I suppose linking in the entire code generator to add a unit test to check // the code size of the concat operation is overkill... :)