Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #include <opc/common/uri_facade.h>
00012
00013 #include <gtest/gtest.h>
00014
00015 TEST(Uri, CanParseFullURI)
00016 {
00017 Common::Uri uri("http://host:8080");
00018 ASSERT_EQ(uri.Scheme(), "http");
00019 ASSERT_EQ(uri.Host(), "host");
00020 ASSERT_EQ(uri.Port(), 8080u);
00021 }
00022
00023 TEST(Uri, CanParseFullWithoutPort)
00024 {
00025 Common::Uri uri("http://host");
00026 ASSERT_EQ(uri.Scheme(), "http");
00027 ASSERT_EQ(uri.Host(), "host");
00028 }
00029
00030 TEST(Uri, ThrowsIfSchemeEmpty)
00031 {
00032 ASSERT_THROW(Common::Uri("://host"), std::exception);
00033 }
00034
00035 TEST(Uri, ThrowsIfHostEmpty)
00036 {
00037 ASSERT_THROW(Common::Uri("htp://"), std::exception);
00038 ASSERT_THROW(Common::Uri("htp://:8080"), std::exception);
00039 }
00040
00041 TEST(Uri, ThrowsIfInvalid)
00042 {
00043 ASSERT_THROW(Common::Uri("httphost8080"), std::exception);
00044 }
00045