Fix UBJSON with boolean value. (#10054)
This commit is contained in:
parent
6e3c899ba7
commit
d37b83e8d9
@ -791,7 +791,7 @@ Json UBJReader::Parse() {
|
|||||||
return Json{JsonBoolean{true}};
|
return Json{JsonBoolean{true}};
|
||||||
}
|
}
|
||||||
case 'F': {
|
case 'F': {
|
||||||
return Json{JsonBoolean{true}};
|
return Json{JsonBoolean{false}};
|
||||||
}
|
}
|
||||||
case 'd': {
|
case 'd': {
|
||||||
auto v = this->ReadPrimitive<float>();
|
auto v = this->ReadPrimitive<float>();
|
||||||
|
|||||||
@ -677,6 +677,21 @@ TEST(UBJson, Basic) {
|
|||||||
ASSERT_FLOAT_EQ(3.14, get<Number>(get<Array>(ret["test"])[1]));
|
ASSERT_FLOAT_EQ(3.14, get<Number>(get<Array>(ret["test"])[1]));
|
||||||
ASSERT_FLOAT_EQ(2.71, get<Number>(get<Array>(ret["test"])[0]));
|
ASSERT_FLOAT_EQ(2.71, get<Number>(get<Array>(ret["test"])[0]));
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
// boolean
|
||||||
|
Json boolean{Object{}};
|
||||||
|
boolean["foo"] = Boolean{false};
|
||||||
|
std::vector<char> out;
|
||||||
|
Json::Dump(boolean, &out, std::ios::binary);
|
||||||
|
auto loaded = Json::Load(StringView{out.data(), out.size()}, std::ios::binary);
|
||||||
|
|
||||||
|
ASSERT_EQ(boolean, loaded);
|
||||||
|
|
||||||
|
boolean["foo"] = Boolean{true};
|
||||||
|
Json::Dump(boolean, &out, std::ios::binary);
|
||||||
|
loaded = Json::Load(StringView{out.data(), out.size()}, std::ios::binary);
|
||||||
|
ASSERT_EQ(boolean, loaded);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST(Json, TypeCheck) {
|
TEST(Json, TypeCheck) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user