/** \file testhelper.h Copyright Notice\n Copyright (C) 2017 Jan Rogall - developer\n Copyright (C) 2017 Moritz Wirger - developer\n This file is part of hueplusplus. hueplusplus is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. hueplusplus is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with hueplusplus. If not, see . **/ #ifndef _TEST_HELPER_H #define _TEST_HELPER_H inline std::string getBridgeIp() { return "192.168.2.116"; //!< IP-Address of the fake hue bridge in dotted //!< decimal notation like "192.168.2.1" } inline int getBridgePort() { return 80; } inline std::string getBridgeUsername() { return "83b7780291a6ceffbe0bd049104df"; //!< Username that is used to access //!< the fake hue bridge } inline std::string getBridgeId() { return "111111FFFE11E111"; } inline std::string getBridgeUuid() { return "1f111f11-da11-11e1-1b11-11111111e111"; } inline std::string getBridgeMac() { return "11111111e111"; } inline std::string getBridgeXml() { return R"xml( 1 0 http://192.168.2.116:80/ urn:schemas-upnp-org:device:Basic:1 Philips hue (192.168.2.116) Royal Philips Electronics http://www.philips.com Philips hue Personal Wireless Lighting Philips hue bridge 2015 BSB002 http://www.meethue.com 11111111e111 uuid:1f111f11-da11-11e1-1b11-11111111e111 index.html image/png 48 48 24 hue_logo_0.png )xml"; } inline std::vector getMulticastReply() { return {"HTTP/1.1 200 OK\r\n" "CACHE-CONTROL: max-age=300\r\n" "DATE: Wed, 21 Jan 1970 05:42:21 GMT\r\n" "EXT:\r\n" "LOCATION: http://192.168.2.1:1900/gatedesc.xml\r\n" "OPT: \"http://schemas.upnp.org/upnp/1/0/\"; ns=01\r\n" "01-NLS: 000c0000-0dd0-00b0-0da0-00a000e000c0\r\n" "SERVER: Linux/2.6.36, UPnP/1.0, Portable SDK for UPnP devices/1.6.19\r\n" "X-User-Agent: redsonic\r\n" "ST: upnp:rootdevice\r\n" "USN: uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00::upnp:rootdevice", "HTTP/1.1 200 OK\r\n" "CACHE-CONTROL: max-age=300\r\n" "DATE: Wed, 21 Jan 1970 05:42:21 GMT\r\n" "EXT:\r\n" "LOCATION: http://192.168.2.1:1900/gatedesc.xml\r\n" "OPT: \"http://schemas.upnp.org/upnp/1/0/\"; ns=01\r\n" "01-NLS: 000c0000-0dd0-00b0-0da0-00a000e000c0\r\n" "SERVER: Linux/2.6.36, UPnP/1.0, Portable SDK for UPnP devices/1.6.19\r\n" "X-User-Agent: redsonic\r\n" "ST: uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00\r\n" "USN: uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00", "HTTP/1.1 200 OK\r\n" "CACHE-CONTROL: max-age=300\r\n" "DATE: Wed, 21 Jan 1970 05:42:21 GMT\r\n" "EXT:\r\n" "LOCATION: http://192.168.2.1:1900/gatedesc.xml\r\n" "OPT: \"http://schemas.upnp.org/upnp/1/0/\"; ns=01\r\n" "01-NLS: 000c0000-0dd0-00b0-0da0-00a000e000c0\r\n" "SERVER: Linux/2.6.36, UPnP/1.0, Portable SDK for UPnP devices/1.6.19\r\n" "X-User-Agent: redsonic\r\n" "ST: urn:schemas-upnp-org:device:InternetGatewayDevice:1\r\n" "USN: " "uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00::urn:schemas-upnp-org:device:" "InternetGatewayDevice:1", "HTTP/1.1 200 OK\r\n" "CACHE-CONTROL: max-age=300\r\n" "DATE: Wed, 21 Jan 1970 05:42:21 GMT\r\n" "EXT:\r\n" "LOCATION: http://192.168.2.1:1900/gatedesc.xml\r\n" "OPT: \"http://schemas.upnp.org/upnp/1/0/\"; ns=01\r\n" "01-NLS: 000c0000-0dd0-00b0-0da0-00a000e000c0\r\n" "SERVER: Linux/2.6.36, UPnP/1.0, Portable SDK for UPnP devices/1.6.19\r\n" "X-User-Agent: redsonic\r\n" "ST: urn:schemas-upnp-org:service:Layer3Forwarding:1\r\n" "USN: " "uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00::urn:schemas-upnp-org:service:" "Layer3Forwarding:1", "HTTP/1.1 200 OK\r\n" "CACHE-CONTROL: max-age=300\r\n" "DATE: Wed, 21 Jan 1970 05:42:21 GMT\r\n" "EXT:\r\n" "LOCATION: http://192.168.2.1:1900/gatedesc.xml\r\n" "OPT: \"http://schemas.upnp.org/upnp/1/0/\"; ns=01\r\n" "01-NLS: 000c0000-0dd0-00b0-0da0-00a000e000c0\r\n" "SERVER: Linux/2.6.36, UPnP/1.0, Portable SDK for UPnP devices/1.6.19\r\n" "X-User-Agent: redsonic\r\n" "ST: uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00\r\n" "USN: uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00", "HTTP/1.1 200 OK\r\n" "CACHE-CONTROL: max-age=300\r\n" "DATE: Wed, 21 Jan 1970 05:42:21 GMT\r\n" "EXT:\r\n" "LOCATION: http://192.168.2.1:1900/gatedesc.xml\r\n" "OPT: \"http://schemas.upnp.org/upnp/1/0/\"; ns=01\r\n" "01-NLS: 000c0000-0dd0-00b0-0da0-00a000e000c0\r\n" "SERVER: Linux/2.6.36, UPnP/1.0, Portable SDK for UPnP devices/1.6.19\r\n" "X-User-Agent: redsonic\r\n" "ST: urn:schemas-upnp-org:device:WANDevice:1\r\n" "USN: " "uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00::urn:schemas-upnp-org:device:" "WANDevice:1", "HTTP/1.1 200 OK\r\n" "CACHE-CONTROL: max-age=300\r\n" "DATE: Wed, 21 Jan 1970 05:42:21 GMT\r\n" "EXT:\r\n" "LOCATION: http://192.168.2.1:1900/gatedesc.xml\r\n" "OPT: \"http://schemas.upnp.org/upnp/1/0/\"; ns=01\r\n" "01-NLS: 000c0000-0dd0-00b0-0da0-00a000e000c0\r\n" "SERVER: Linux/2.6.36, UPnP/1.0, Portable SDK for UPnP devices/1.6.19\r\n" "X-User-Agent: redsonic\r\n" "ST: urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1\r\n" "USN: " "uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00::urn:schemas-upnp-org:service:" "WANCommonInterfaceConfig:1", "HTTP/1.1 200 OK\r\n" "CACHE-CONTROL: max-age=300\r\n" "DATE: Wed, 21 Jan 1970 05:42:21 GMT\r\n" "EXT:\r\n" "LOCATION: http://192.168.2.1:1900/gatedesc.xml\r\n" "OPT: \"http://schemas.upnp.org/upnp/1/0/\"; ns=01\r\n" "01-NLS: 000c0000-0dd0-00b0-0da0-00a000e000c0\r\n" "SERVER: Linux/2.6.36, UPnP/1.0, Portable SDK for UPnP devices/1.6.19\r\n" "X-User-Agent: redsonic\r\n" "ST: uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00\r\n" "USN: uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00", "HTTP/1.1 200 OK\r\n" "CACHE-CONTROL: max-age=300\r\n" "DATE: Wed, 21 Jan 1970 05:42:21 GMT\r\n" "EXT:\r\n" "LOCATION: http://192.168.2.1:1900/gatedesc.xml\r\n" "OPT: \"http://schemas.upnp.org/upnp/1/0/\"; ns=01\r\n" "01-NLS: 000c0000-0dd0-00b0-0da0-00a000e000c0\r\n" "SERVER: Linux/2.6.36, UPnP/1.0, Portable SDK for UPnP devices/1.6.19\r\n" "X-User-Agent: redsonic\r\n" "ST: urn:schemas-upnp-org:device:WANConnectionDevice:1\r\n" "USN: " "uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00::urn:schemas-upnp-org:device:" "WANConnectionDevice:1", "HTTP/1.1 200 OK\r\n" "CACHE-CONTROL: max-age=300\r\n" "DATE: Wed, 21 Jan 1970 05:42:21 GMT\r\n" "EXT:\r\n" "LOCATION: http://192.168.2.1:1900/gatedesc.xml\r\n" "OPT: \"http://schemas.upnp.org/upnp/1/0/\"; ns=01\r\n" "01-NLS: 000c0000-0dd0-00b0-0da0-00a000e000c0\r\n" "SERVER: Linux/2.6.36, UPnP/1.0, Portable SDK for UPnP devices/1.6.19\r\n" "X-User-Agent: redsonic\r\n" "ST: urn:schemas-upnp-org:service:WANIPConnection:1\r\n" "USN: " "uuid:0f0000b0-f0da-0ad0-00b0-0000000fdf00::urn:schemas-upnp-org:service:" "WANIPConnection:1", "HTTP/1.1 200 OK\r\n" "HOST: 239.255.255.250:1900\r\n" "EXT:\r\n" "CACHE-CONTROL: max-age=100\r\n" "LOCATION: http://192.168.2.116:80/description.xml\r\n" "SERVER: Linux/3.14.0 UPnP/1.0 IpBridge/1.21.0\r\n" "hue-bridgeid: 111111FFFE11E111\r\n" "ST: upnp:rootdevice\r\n" "USN: uuid:1f111f11-da11-11e1-1b11-11111111e111::upnp:rootdevice", "HTTP/1.1 200 OK\r\n" "HOST: 239.255.255.250:1900\r\n" "EXT:\r\n" "CACHE-CONTROL: max-age=100\r\n" "LOCATION: http://192.168.2.116:80/description.xml\r\n" "SERVER: Linux/3.14.0 UPnP/1.0 IpBridge/1.21.0\r\n" "hue-bridgeid: 111111FFFE11E111\r\n" "ST: uuid:1f111f11-da11-11e1-1b11-11111111e111\r\n" "USN: uuid:1f111f11-da11-11e1-1b11-11111111e111", "HTTP/1.1 200 OK\r\n" "HOST: 239.255.255.250:1900\r\n" "EXT:\r\n" "CACHE-CONTROL: max-age=100\r\n" "LOCATION: http://192.168.2.116:80/description.xml\r\n" "SERVER: Linux/3.14.0 UPnP/1.0 IpBridge/1.21.0\r\n" "hue-bridgeid: 111111FFFE11E111\r\n" "ST: urn:schemas-upnp-org:device:basic:1\r\n" "USN: uuid:1f111f11-da11-11e1-1b11-11111111e111", "HTTP/1.1 200 OK\r\n" "HOST: 239.255.255.250:1900\r\n" "EXT:\r\n" "CACHE-CONTROL: max-age=100\r\n" "LOCATION: http://192.168.2.116:80/description.xml\r\n" "SERVER: Linux/3.14.0 UPnP/1.0 IpBridge/1.21.0\r\n" "hue-bridgeid: 111111FFFE11E111\r\n" "ST: upnp:rootdevice\r\n" "USN: uuid:1f111f11-da11-11e1-1b11-11111111e111::upnp:rootdevice", "HTTP/1.1 200 OK\r\n" "HOST: 239.255.255.250:1900\r\n" "EXT:\r\n" "CACHE-CONTROL: max-age=100\r\n" "LOCATION: http://192.168.2.116:80/description.xml\r\n" "SERVER: Linux/3.14.0 UPnP/1.0 IpBridge/1.21.0\r\n" "hue-bridgeid: 111111FFFE11E111\r\n" "ST: uuid:1f111f11-da11-11e1-1b11-11111111e111\r\n" "USN: uuid:1f111f11-da11-11e1-1b11-11111111e111", "HTTP/1.1 200 OK\r\n" "HOST: 239.255.255.250:1900\r\n" "EXT:\r\n" "CACHE-CONTROL: max-age=100\r\n" "LOCATION: http://192.168.2.116:80/description.xml\r\n" "SERVER: Linux/3.14.0 UPnP/1.0 IpBridge/1.21.0\r\n" "hue-bridgeid: 111111FFFE11E111\r\n" "ST: urn:schemas-upnp-org:device:basic:1\r\n" "USN: uuid:1f111f11-da11-11e1-1b11-11111111e111"}; } #endif