Use value ranges to fold ext(trunc) in SCEV when possible.
[llvm.git] / unittests / ADT / SmallStringTest.cpp
blob099d8159c91728b57abfd21a95d0cb106e446b1a
1 //===- llvm/unittest/ADT/SmallStringTest.cpp ------------------------------===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // SmallString unit tests.
12 //===----------------------------------------------------------------------===//
14 #include "gtest/gtest.h"
15 #include "llvm/ADT/SmallString.h"
16 #include <stdarg.h>
17 #include <climits>
18 #include <cstring>
20 using namespace llvm;
22 namespace {
24 // Test fixture class
25 class SmallStringTest : public testing::Test {
26 protected:
27 typedef SmallString<40> StringType;
29 StringType theString;
31 void assertEmpty(StringType & v) {
32 // Size tests
33 EXPECT_EQ(0u, v.size());
34 EXPECT_TRUE(v.empty());
35 // Iterator tests
36 EXPECT_TRUE(v.begin() == v.end());
40 // New string test.
41 TEST_F(SmallStringTest, EmptyStringTest) {
42 SCOPED_TRACE("EmptyStringTest");
43 assertEmpty(theString);
44 EXPECT_TRUE(theString.rbegin() == theString.rend());