009-uri.cpp 1.2 KB

1234567891011121314151617181920212223242526272829
  1. // SPDX-License-Identifier: GPL-3.0-or-later
  2. // SPDX-FileCopyrightText: 2019-2023 Ivan Baidakou
  3. #include "test-utils.h"
  4. #include "utils/uri.h"
  5. using namespace syncspirit::utils;
  6. TEST_CASE("parse IGD control url", "[support]") {
  7. auto uri = parse("http://192.168.100.1:49652/upnp/control/WANIPConn1");
  8. REQUIRE((bool)uri);
  9. CHECK(uri->port == 49652);
  10. CHECK(uri->service == "49652");
  11. CHECK(uri->host == "192.168.100.1");
  12. CHECK(uri->proto == "http");
  13. CHECK(uri->path == "/upnp/control/WANIPConn1");
  14. std::string relay = "relay://188.68.32.45:22067/"
  15. "?id=O4LHPKG-O6BQ36W-MUOVKTI-MKAVHSC-Y7EC3U4-DHNLEDE-MZBJWQN-UIX6QAL\u0026pingInterval="
  16. "1m0s\u0026networkTimeout=2m0s\u0026sessionLimitBps=0\u0026globalLimitBps=0\u0026statusAddr=:"
  17. "22070\u0026providedBy=🐾 TilCreator (tils.pw)";
  18. REQUIRE((bool)parse(relay) == false);
  19. std::string relay2 = "relay://188.68.32.45:22067/"
  20. "?id=O4LHPKG-O6BQ36W-MUOVKTI-MKAVHSC-Y7EC3U4-DHNLEDE-MZBJWQN-UIX6QAL&pingInterval=1m0s&"
  21. "networkTimeout=2m0s&sessionLimitBps=0&globalLimitBps=0&statusAddr=22070";
  22. REQUIRE((bool)parse(relay2) == true);
  23. }