Ejemplo n.º 1
0
TEST(RepoBSONTest, GetEmbeddedDoubleTest)
{
	RepoBSON empty;

	//Shouldn't fail.
	EXPECT_EQ(empty.getEmbeddedDouble("something", "somethingElse"), 0);
	EXPECT_EQ(empty.getEmbeddedDouble("something", "somethingElse", 10), 10);
	
	RepoBSON hasFieldWrongTypeBson(BSON("field" << 1));
	EXPECT_EQ(hasFieldWrongTypeBson.getEmbeddedDouble("field", "somethingElse"), 0);

	RepoBSON hasFieldNoEmbeddedField(BSON("field" << testBson));
	EXPECT_EQ(hasFieldNoEmbeddedField.getEmbeddedDouble("field", "somethingElse"), 0);

	RepoBSON hasEmbeddedFieldWrongType(BSON("field" << testBson));
	EXPECT_EQ(hasEmbeddedFieldWrongType.getEmbeddedDouble("field", "ice"), 0);

	RepoBSON expectNumber(BSON("field" << testBson));
	EXPECT_EQ(expectNumber.getEmbeddedDouble("field", "amount"), 100);

	auto innerBson = BSON("amount" << 1.10101);
	RepoBSON expectNumber2(BSON("field" << innerBson ));
	EXPECT_EQ(expectNumber2.getEmbeddedDouble("field", "amount"), 1.10101);
}