Commit de24ef18eec446cb077b6512a35ca080e5307ab1

Authored by M. Wirger
Committed by Jan
1 parent 6d20b650

Add test for Hue::getPictureOfLight function

Showing 1 changed file with 40 additions and 0 deletions
hueplusplus/test/test_Hue.cpp
... ... @@ -450,6 +450,46 @@ TEST(Hue, lightExists)
450 450 EXPECT_EQ(true, const_test_bridge2.lightExists(1));
451 451 }
452 452  
  453 +TEST(Hue, getPictureOfLight)
  454 +{
  455 + using namespace ::testing;
  456 + std::shared_ptr<MockHttpHandler> handler = std::make_shared<MockHttpHandler>();
  457 + Json::Value hue_bridge_state;
  458 + hue_bridge_state["lights"] = Json::Value(Json::objectValue);
  459 + hue_bridge_state["lights"]["1"] = Json::Value(Json::objectValue);
  460 + hue_bridge_state["lights"]["1"]["state"] = Json::Value(Json::objectValue);
  461 + hue_bridge_state["lights"]["1"]["state"]["on"] = true;
  462 + hue_bridge_state["lights"]["1"]["state"]["bri"] = 254;
  463 + hue_bridge_state["lights"]["1"]["state"]["ct"] = 366;
  464 + hue_bridge_state["lights"]["1"]["state"]["alert"] = "none";
  465 + hue_bridge_state["lights"]["1"]["state"]["colormode"] = "ct";
  466 + hue_bridge_state["lights"]["1"]["state"]["reachable"] = true;
  467 + hue_bridge_state["lights"]["1"]["swupdate"] = Json::Value(Json::objectValue);
  468 + hue_bridge_state["lights"]["1"]["swupdate"]["state"] = "noupdates";
  469 + hue_bridge_state["lights"]["1"]["swupdate"]["lastinstall"] = Json::nullValue;
  470 + hue_bridge_state["lights"]["1"]["type"] = "Color temperature light";
  471 + hue_bridge_state["lights"]["1"]["name"] = "Hue ambiance lamp 1";
  472 + hue_bridge_state["lights"]["1"]["modelid"] = "LTW001";
  473 + hue_bridge_state["lights"]["1"]["manufacturername"] = "Philips";
  474 + hue_bridge_state["lights"]["1"]["uniqueid"] = "00:00:00:00:00:00:00:00-00";
  475 + hue_bridge_state["lights"]["1"]["swversion"] = "5.50.1.19085";
  476 +
  477 + EXPECT_CALL(*handler, GETJson("/api/" + getBridgeUsername(), Json::Value(Json::objectValue), getBridgeIp(), 80))
  478 + .Times(AtLeast(1))
  479 + .WillRepeatedly(Return(hue_bridge_state));
  480 + EXPECT_CALL(*handler, GETJson("/api/" + getBridgeUsername() + "/lights/1", Json::Value(Json::objectValue), getBridgeIp(), 80))
  481 + .Times(AtLeast(1))
  482 + .WillRepeatedly(Return(hue_bridge_state["lights"]["1"]));
  483 +
  484 + Hue test_bridge(getBridgeIp(), getBridgeUsername(), handler);
  485 +
  486 + test_bridge.getLight(1);
  487 +
  488 + EXPECT_EQ("", test_bridge.getPictureOfLight(2));
  489 +
  490 + EXPECT_EQ("e27_waca", test_bridge.getPictureOfLight(1));
  491 +}
  492 +
453 493 TEST(Hue, refreshState)
454 494 {
455 495 std::shared_ptr<MockHttpHandler> handler = std::make_shared<MockHttpHandler>();
... ...