summaryrefslogtreecommitdiffstats
path: root/llvm/unittests/Support
diff options
context:
space:
mode:
authorGeorgii Rymar <grimar@accesssoftek.com>2019-10-29 14:40:30 +0300
committerGeorgii Rymar <grimar@accesssoftek.com>2019-10-30 18:12:48 +0300
commit6e779e953e9d526e215e64bd1c8ebba8db0b44fe (patch)
tree61d1409830c394329680059c39209390252234e0 /llvm/unittests/Support
parent29e8b8ce6697414759f9314255d0165edbb3e454 (diff)
downloadbcm5719-llvm-6e779e953e9d526e215e64bd1c8ebba8db0b44fe.tar.gz
bcm5719-llvm-6e779e953e9d526e215e64bd1c8ebba8db0b44fe.zip
[ObjectYAML] - Redefine LLVM_YAML_IS_SEQUENCE_VECTOR(llvm::yaml::Hex*) as LLVM_YAML_IS_FLOW_SEQUENCE_VECTOR.
I am using it in https://reviews.llvm.org/D69399. This change changes how obj2yaml dumps arrays of `llvm::yaml::Hex8/llvm::yaml::Hex16/llvm::yaml::Hex32` from: ``` PayloadBytes: - 0x01 - 0x02 ... ``` To ``` PayloadBytes: [ 0x01, 0x02, ... ] ``` The latter way is shorter and looks better for arrays. Differential revision: https://reviews.llvm.org/D69558
Diffstat (limited to 'llvm/unittests/Support')
-rw-r--r--llvm/unittests/Support/YAMLIOTest.cpp59
1 files changed, 52 insertions, 7 deletions
diff --git a/llvm/unittests/Support/YAMLIOTest.cpp b/llvm/unittests/Support/YAMLIOTest.cpp
index 0c9df117031..202bfb377e1 100644
--- a/llvm/unittests/Support/YAMLIOTest.cpp
+++ b/llvm/unittests/Support/YAMLIOTest.cpp
@@ -2189,7 +2189,6 @@ TEST(YAMLIO, TestReadBuiltInTypesDoubleError) {
//
// Test error handling reading built-in Hex8 type
//
-LLVM_YAML_IS_SEQUENCE_VECTOR(Hex8)
TEST(YAMLIO, TestReadBuiltInTypesHex8Error) {
std::vector<Hex8> seq;
Input yin("---\n"
@@ -2200,15 +2199,26 @@ TEST(YAMLIO, TestReadBuiltInTypesHex8Error) {
/*Ctxt=*/nullptr,
suppressErrorMessages);
yin >> seq;
-
EXPECT_TRUE(!!yin.error());
+
+ std::vector<Hex8> seq2;
+ Input yin2("---\n"
+ "[ 0x12, 0xFE, 0x123 ]\n"
+ "...\n",
+ /*Ctxt=*/nullptr, suppressErrorMessages);
+ yin2 >> seq2;
+ EXPECT_TRUE(!!yin2.error());
+
+ EXPECT_TRUE(seq.size() == 3);
+ EXPECT_TRUE(seq.size() == seq2.size());
+ for (size_t i = 0; i < seq.size(); ++i)
+ EXPECT_TRUE(seq[i] == seq2[i]);
}
//
// Test error handling reading built-in Hex16 type
//
-LLVM_YAML_IS_SEQUENCE_VECTOR(Hex16)
TEST(YAMLIO, TestReadBuiltInTypesHex16Error) {
std::vector<Hex16> seq;
Input yin("---\n"
@@ -2219,14 +2229,25 @@ TEST(YAMLIO, TestReadBuiltInTypesHex16Error) {
/*Ctxt=*/nullptr,
suppressErrorMessages);
yin >> seq;
-
EXPECT_TRUE(!!yin.error());
+
+ std::vector<Hex16> seq2;
+ Input yin2("---\n"
+ "[ 0x0012, 0xFEFF, 0x12345 ]\n"
+ "...\n",
+ /*Ctxt=*/nullptr, suppressErrorMessages);
+ yin2 >> seq2;
+ EXPECT_TRUE(!!yin2.error());
+
+ EXPECT_TRUE(seq.size() == 3);
+ EXPECT_TRUE(seq.size() == seq2.size());
+ for (size_t i = 0; i < seq.size(); ++i)
+ EXPECT_TRUE(seq[i] == seq2[i]);
}
//
// Test error handling reading built-in Hex32 type
//
-LLVM_YAML_IS_SEQUENCE_VECTOR(Hex32)
TEST(YAMLIO, TestReadBuiltInTypesHex32Error) {
std::vector<Hex32> seq;
Input yin("---\n"
@@ -2239,12 +2260,24 @@ TEST(YAMLIO, TestReadBuiltInTypesHex32Error) {
yin >> seq;
EXPECT_TRUE(!!yin.error());
+
+ std::vector<Hex32> seq2;
+ Input yin2("---\n"
+ "[ 0x0012, 0xFEFF0000, 0x1234556789 ]\n"
+ "...\n",
+ /*Ctxt=*/nullptr, suppressErrorMessages);
+ yin2 >> seq2;
+ EXPECT_TRUE(!!yin2.error());
+
+ EXPECT_TRUE(seq.size() == 3);
+ EXPECT_TRUE(seq.size() == seq2.size());
+ for (size_t i = 0; i < seq.size(); ++i)
+ EXPECT_TRUE(seq[i] == seq2[i]);
}
//
// Test error handling reading built-in Hex64 type
//
-LLVM_YAML_IS_SEQUENCE_VECTOR(Hex64)
TEST(YAMLIO, TestReadBuiltInTypesHex64Error) {
std::vector<Hex64> seq;
Input yin("---\n"
@@ -2255,8 +2288,20 @@ TEST(YAMLIO, TestReadBuiltInTypesHex64Error) {
/*Ctxt=*/nullptr,
suppressErrorMessages);
yin >> seq;
-
EXPECT_TRUE(!!yin.error());
+
+ std::vector<Hex64> seq2;
+ Input yin2("---\n"
+ "[ 0x0012, 0xFFEEDDCCBBAA9988, 0x12345567890ABCDEF0 ]\n"
+ "...\n",
+ /*Ctxt=*/nullptr, suppressErrorMessages);
+ yin2 >> seq2;
+ EXPECT_TRUE(!!yin2.error());
+
+ EXPECT_TRUE(seq.size() == 3);
+ EXPECT_TRUE(seq.size() == seq2.size());
+ for (size_t i = 0; i < seq.size(); ++i)
+ EXPECT_TRUE(seq[i] == seq2[i]);
}
TEST(YAMLIO, TestMalformedMapFailsGracefully) {
OpenPOWER on IntegriCloud