]> git.proxmox.com Git - rustc.git/blob - src/llvm/unittests/MC/YAMLTest.cpp
Imported Upstream version 1.0.0+dfsg1
[rustc.git] / src / llvm / unittests / MC / YAMLTest.cpp
1 //===- llvm/unittest/Object/YAMLTest.cpp - Tests for Object YAML ----------===//
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 #include "llvm/MC/YAML.h"
11 #include "llvm/Support/YAMLTraits.h"
12 #include "gtest/gtest.h"
13
14 using namespace llvm;
15
16 struct BinaryHolder {
17 yaml::BinaryRef Binary;
18 };
19
20 namespace llvm {
21 namespace yaml {
22 template <>
23 struct MappingTraits<BinaryHolder> {
24 static void mapping(IO &IO, BinaryHolder &BH) {
25 IO.mapRequired("Binary", BH.Binary);
26 }
27 };
28 } // end namespace yaml
29 } // end namespace llvm
30
31 TEST(ObjectYAML, BinaryRef) {
32 BinaryHolder BH;
33 SmallVector<char, 32> Buf;
34 llvm::raw_svector_ostream OS(Buf);
35 yaml::Output YOut(OS);
36 YOut << BH;
37 EXPECT_NE(OS.str().find("''"), StringRef::npos);
38 }