forked from OSchip/llvm-project
Do not quote YAML plain string myself. Let YAMLIO do that.
llvm-svn: 190486
This commit is contained in:
parent
106ededc4e
commit
2ceba7938d
|
@ -29,10 +29,7 @@ namespace yaml {
|
|||
/// \brief ScalarTraits to read/write std::string objects.
|
||||
template <> struct ScalarTraits<std::string> {
|
||||
static void output(const std::string &Val, void *, llvm::raw_ostream &Out) {
|
||||
// We need to put quotes around the string to make sure special characters
|
||||
// in the string is not treated as YAML tokens.
|
||||
std::string NormalizedVal = std::string("\"") + Val + std::string("\"");
|
||||
Out << NormalizedVal;
|
||||
Out << Val;
|
||||
}
|
||||
|
||||
static StringRef input(StringRef Scalar, void *, std::string &Val) {
|
||||
|
|
|
@ -36,34 +36,34 @@ TEST(ReplacementsYamlTest, serializesReplacements) {
|
|||
|
||||
// NOTE: If this test starts to fail for no obvious reason, check whitespace.
|
||||
ASSERT_STREQ("---\n"
|
||||
"MainSourceFile: \"/path/to/source.cpp\"\n"
|
||||
"Context: \"some context\"\n"
|
||||
"MainSourceFile: /path/to/source.cpp\n"
|
||||
"Context: some context\n"
|
||||
"Replacements: \n" // Extra whitespace here!
|
||||
" - FilePath: \"/path/to/file1.h\"\n"
|
||||
" - FilePath: /path/to/file1.h\n"
|
||||
" Offset: 232\n"
|
||||
" Length: 56\n"
|
||||
" ReplacementText: \"replacement #1\"\n"
|
||||
" - FilePath: \"/path/to/file2.h\"\n"
|
||||
" ReplacementText: 'replacement #1'\n"
|
||||
" - FilePath: /path/to/file2.h\n"
|
||||
" Offset: 301\n"
|
||||
" Length: 2\n"
|
||||
" ReplacementText: \"replacement #2\"\n"
|
||||
" ReplacementText: 'replacement #2'\n"
|
||||
"...\n",
|
||||
YamlContentStream.str().c_str());
|
||||
}
|
||||
|
||||
TEST(ReplacementsYamlTest, deserializesReplacements) {
|
||||
std::string YamlContent = "---\n"
|
||||
"MainSourceFile: \"/path/to/source.cpp\"\n"
|
||||
"Context: \"some context\"\n"
|
||||
"MainSourceFile: /path/to/source.cpp\n"
|
||||
"Context: some context\n"
|
||||
"Replacements:\n"
|
||||
" - FilePath: \"/path/to/file1.h\"\n"
|
||||
" - FilePath: /path/to/file1.h\n"
|
||||
" Offset: 232\n"
|
||||
" Length: 56\n"
|
||||
" ReplacementText: \"replacement #1\"\n"
|
||||
" - FilePath: \"/path/to/file2.h\"\n"
|
||||
" ReplacementText: 'replacement #1'\n"
|
||||
" - FilePath: /path/to/file2.h\n"
|
||||
" Offset: 301\n"
|
||||
" Length: 2\n"
|
||||
" ReplacementText: \"replacement #2\"\n"
|
||||
" ReplacementText: 'replacement #2'\n"
|
||||
"...\n";
|
||||
TranslationUnitReplacements DocActual;
|
||||
yaml::Input YAML(YamlContent);
|
||||
|
@ -85,12 +85,12 @@ TEST(ReplacementsYamlTest, deserializesReplacements) {
|
|||
TEST(ReplacementsYamlTest, deserializesWithoutContext) {
|
||||
// Make sure a doc can be read without the context field.
|
||||
std::string YamlContent = "---\n"
|
||||
"MainSourceFile: \"/path/to/source.cpp\"\n"
|
||||
"MainSourceFile: /path/to/source.cpp\n"
|
||||
"Replacements:\n"
|
||||
" - FilePath: \"target_file.h\"\n"
|
||||
" - FilePath: target_file.h\n"
|
||||
" Offset: 1\n"
|
||||
" Length: 10\n"
|
||||
" ReplacementText: \"replacement\"\n"
|
||||
" ReplacementText: replacement\n"
|
||||
"...\n";
|
||||
TranslationUnitReplacements DocActual;
|
||||
yaml::Input YAML(YamlContent);
|
||||
|
|
Loading…
Reference in New Issue