Skip to content

Commit 9518e78

Browse files
committed
Merge branch 'development' of https://git01.codeplex.com/casablanca into use_crt_leak
2 parents b40c5a8 + 9c14471 commit 9518e78

File tree

4 files changed

+30
-35
lines changed

4 files changed

+30
-35
lines changed

Release/src/uri/uri.cpp

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,14 @@ utility::string_t uri_components::join()
6262

6363
if (!m_host.empty())
6464
{
65-
os << _XPLATSTR("//") << m_host;
65+
os << _XPLATSTR("//");
66+
67+
if (!m_user_info.empty())
68+
{
69+
os << m_user_info << _XPLATSTR('@');
70+
}
71+
72+
os << m_host;
6673

6774
if (m_port > 0)
6875
{
@@ -314,12 +321,12 @@ bool uri::validate(const utility::string_t &uri_string)
314321

315322
uri uri::authority() const
316323
{
317-
return uri_builder().set_scheme(this->scheme()).set_host(this->host()).set_port(this->port()).set_user_info(this->user_info()).to_uri();
324+
return uri_builder().set_scheme(this->scheme()).set_host(this->host()).set_port(this->port()).set_user_info(this->user_info()).to_uri();
318325
}
319326

320327
uri uri::resource() const
321328
{
322-
return uri_builder().set_path(this->path()).set_query(this->query()).set_fragment(this->fragment()).to_uri();
329+
return uri_builder().set_path(this->path()).set_query(this->query()).set_fragment(this->fragment()).to_uri();
323330
}
324331

325332
bool uri::operator == (const uri &other) const

Release/tests/functional/uri/constructor_tests.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,10 @@ SUITE(constructor_tests)
3535

3636
TEST(parsing_constructor_char)
3737
{
38-
uri u(uri::encode_uri(U("net.tcp://testname.com:81/bleh%?qstring#goo")));
38+
uri u(uri::encode_uri(U("net.tcp://steve:@testname.com:81/bleh%?qstring#goo")));
3939

4040
VERIFY_ARE_EQUAL(U("net.tcp"), u.scheme());
41+
VERIFY_ARE_EQUAL(U("steve:"), u.user_info());
4142
VERIFY_ARE_EQUAL(U("testname.com"), u.host());
4243
VERIFY_ARE_EQUAL(81, u.port());
4344
VERIFY_ARE_EQUAL(U("/bleh%25"), u.path());
@@ -107,7 +108,7 @@ TEST(absolute_ref_string)
107108

108109
TEST(copy_constructor)
109110
{
110-
uri original(U("http://localhost:456/path1?qstring#goo"));
111+
uri original(U("http://st:pass@localhost:456/path1?qstring#goo"));
111112
uri new_uri(original);
112113

113114
VERIFY_ARE_EQUAL(original, new_uri);
@@ -205,7 +206,7 @@ TEST(user_info_string)
205206
VERIFY_ARE_EQUAL(U(""), ftp.fragment());
206207
}
207208

208-
// Test query component can be seperated with '&' or ';'.
209+
// Test query component can be separated with '&' or ';'.
209210
TEST(query_seperated_with_semi_colon)
210211
{
211212
uri u(U("http://localhost/path1?key1=val1;key2=val2"));

Release/tests/functional/uri/uri_builder_tests.cpp

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
/***
22
* ==++==
33
*
4-
* Copyright (c) Microsoft Corporation. All rights reserved.
4+
* Copyright (c) Microsoft Corporation. All rights reserved.
55
* Licensed under the Apache License, Version 2.0 (the "License");
66
* you may not use this file except in compliance with the License.
77
* You may obtain a copy of the License at
88
* http://www.apache.org/licenses/LICENSE-2.0
9-
*
9+
*
1010
* Unless required by applicable law or agreed to in writing, software
1111
* distributed under the License is distributed on an "AS IS" BASIS,
1212
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -16,8 +16,6 @@
1616
* ==--==
1717
* =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
1818
*
19-
* uri_builder_tests.cpp
20-
*
2119
* Tests for the URI builder class.
2220
*
2321
* =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
@@ -49,16 +47,6 @@ static void VERIFY_URI_BUILDER(
4947
VERIFY_ARE_EQUAL(query, builder.query());
5048
VERIFY_ARE_EQUAL(fragment, builder.fragment());
5149
}
52-
53-
static void VERIFY_URI_BUILDER(
54-
uri_builder &builder,
55-
const utility::string_t &scheme,
56-
const utility::string_t &host,
57-
const int port,
58-
const utility::string_t &path)
59-
{
60-
VERIFY_URI_BUILDER(builder, scheme, utility::string_t(), host, port, path, utility::string_t(), utility::string_t());
61-
}
6250
static void VERIFY_URI_BUILDER(
6351
uri_builder &builder,
6452
const utility::string_t &scheme,
@@ -80,27 +68,28 @@ TEST(constructor_tests)
8068
// Default constructor
8169
uri_builder builder;
8270
VERIFY_URI_BUILDER_IS_EMPTY(builder);
83-
// scheme, host, port
71+
// scheme, user_info, host, port
8472
utility::string_t scheme(U("ftp"));
73+
utility::string_t user_info(U("steve:pass"));
8574
utility::string_t host(U("localhost"));
8675
int port = 44;
8776
utility::string_t path(U("/Yeshere888"));
88-
utility::string_t uri_str(U("ftp://localhost:44/Yeshere888"));
77+
utility::string_t uri_str(U("ftp://steve:pass@localhost:44/Yeshere888"));
8978

9079
// utility::string_t
91-
utility::string_t uri_wstr(U("ftp://localhost:44/Yeshere888?abc:123&abc2:456#nose"));
80+
utility::string_t uri_wstr(U("ftp://steve:pass@localhost:44/Yeshere888?abc:123&abc2:456#nose"));
9281
builder = uri_builder(uri_wstr);
93-
VERIFY_URI_BUILDER(builder, scheme, utility::string_t(), host, port, path, utility::string_t(U("abc:123&abc2:456")), utility::string_t(U("nose")));
82+
VERIFY_URI_BUILDER(builder, scheme, user_info, host, port, path, utility::string_t(U("abc:123&abc2:456")), utility::string_t(U("nose")));
9483

9584
// copy constructor
9685
uri_builder other(builder);
9786
builder = uri_builder(uri_str);
98-
VERIFY_URI_BUILDER(other, scheme, utility::string_t(), host, port, path, utility::string_t(U("abc:123&abc2:456")), utility::string_t(U("nose")));
99-
VERIFY_URI_BUILDER(builder, scheme, host, port, path);
87+
VERIFY_URI_BUILDER(other, scheme, user_info, host, port, path, utility::string_t(U("abc:123&abc2:456")), utility::string_t(U("nose")));
88+
VERIFY_URI_BUILDER(builder, scheme, user_info, host, port, path, U(""), U(""));
10089

10190
// move constructor
10291
uri_builder move_other = std::move(builder);
103-
VERIFY_URI_BUILDER(move_other, scheme, host, port, path);
92+
VERIFY_URI_BUILDER(move_other, scheme, user_info, host, port, path, U(""), U(""));
10493
}
10594

10695
TEST(assignment_operators)
@@ -248,7 +237,7 @@ TEST(validation)
248237

249238
TEST(uri_creation_string)
250239
{
251-
utility::string_t uri_str(U("http://localhost:4556/"));
240+
utility::string_t uri_str(U("http://steve:temp@localhost:4556/"));
252241

253242
// to_string
254243
uri_builder builder(uri_str);
@@ -263,7 +252,7 @@ TEST(uri_creation_string)
263252
// to encoded string
264253
uri_builder with_space(builder);
265254
with_space.set_path(utility::string_t(U("path%20with%20space")));
266-
VERIFY_ARE_EQUAL(U("http://localhost:4556/path%20with%20space"), with_space.to_string());
255+
VERIFY_ARE_EQUAL(U("http://steve:temp@localhost:4556/path%20with%20space"), with_space.to_string());
267256
}
268257

269258
TEST(append_path_string)

Release/tests/functional/websockets/client/vs14.android/websocketsclient140_test.android.vcxproj

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@
9191
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x86'">
9292
<ClCompile>
9393
<WarningLevel>EnableAllWarnings</WarningLevel>
94-
<AdditionalIncludeDirectories>$(NDKRoot)\platforms\$(AndroidAPILevel)\arch-x86\usr\include;$(StlIncludeDirectories);$(CasablancaIncludeDir);$(TestRoot)\functional\http\utilities\include;$(CommonTestIncludeDir);$(CasablancaSrcDir)\pch;$(WebsocketppIncludeDir);..\..\utilities;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
94+
<AdditionalIncludeDirectories>$(NDKRoot)\platforms\$(AndroidAPILevel)\arch-x86\usr\include;$(StlIncludeDirectories);$(CasablancaIncludeDir);$(TestRoot)\functional\http\utilities\include;$(CommonTestIncludeDir);$(CasablancaSrcDir)\pch;$(WebsocketppIncludeDir);$(TestRoot)\functional\websockets\utilities;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
9595
<ExceptionHandling>Enabled</ExceptionHandling>
9696
<CppLanguageStandard>c++11</CppLanguageStandard>
9797
<RuntimeTypeInfo>true</RuntimeTypeInfo>
@@ -101,7 +101,7 @@
101101
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
102102
<ClCompile>
103103
<WarningLevel>EnableAllWarnings</WarningLevel>
104-
<AdditionalIncludeDirectories>$(NDKRoot)\platforms\$(AndroidAPILevel)\arch-arm\usr\include;$(CasablancaIncludeDir);$(TestRoot)\functional\http\utilities\include;$(CommonTestIncludeDir);$(CasablancaSrcDir)\pch;$(WebsocketppIncludeDir);$(StlIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
104+
<AdditionalIncludeDirectories>$(NDKRoot)\platforms\$(AndroidAPILevel)\arch-arm\usr\include;$(CasablancaIncludeDir);$(TestRoot)\functional\http\utilities\include;$(CommonTestIncludeDir);$(CasablancaSrcDir)\pch;$(WebsocketppIncludeDir);$(StlIncludeDirectories);$(TestRoot)\functional\websockets\utilities;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
105105
<CppLanguageStandard>c++11</CppLanguageStandard>
106106
<ExceptionHandling>Enabled</ExceptionHandling>
107107
<RuntimeTypeInfo>true</RuntimeTypeInfo>
@@ -111,7 +111,7 @@
111111
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
112112
<ClCompile>
113113
<WarningLevel>EnableAllWarnings</WarningLevel>
114-
<AdditionalIncludeDirectories>$(NDKRoot)\platforms\$(AndroidAPILevel)\arch-arm\usr\include;$(StlIncludeDirectories);$(CasablancaIncludeDir);$(TestRoot)\functional\http\utilities\include;$(CommonTestIncludeDir);$(CasablancaSrcDir)\pch;$(WebsocketppIncludeDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
114+
<AdditionalIncludeDirectories>$(NDKRoot)\platforms\$(AndroidAPILevel)\arch-arm\usr\include;$(StlIncludeDirectories);$(CasablancaIncludeDir);$(TestRoot)\functional\http\utilities\include;$(CommonTestIncludeDir);$(CasablancaSrcDir)\pch;$(WebsocketppIncludeDir);$(TestRoot)\functional\websockets\utilities;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
115115
<CppLanguageStandard>c++11</CppLanguageStandard>
116116
<ExceptionHandling>Enabled</ExceptionHandling>
117117
<RuntimeTypeInfo>true</RuntimeTypeInfo>
@@ -121,7 +121,7 @@
121121
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x86'">
122122
<ClCompile>
123123
<WarningLevel>EnableAllWarnings</WarningLevel>
124-
<AdditionalIncludeDirectories>$(NDKRoot)\platforms\$(AndroidAPILevel)\arch-x86\usr\include;$(StlIncludeDirectories);$(CasablancaIncludeDir);$(TestRoot)\functional\http\utilities\include;$(CommonTestIncludeDir);$(CasablancaSrcDir)\pch;$(WebsocketppIncludeDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
124+
<AdditionalIncludeDirectories>$(NDKRoot)\platforms\$(AndroidAPILevel)\arch-x86\usr\include;$(StlIncludeDirectories);$(CasablancaIncludeDir);$(TestRoot)\functional\http\utilities\include;$(CommonTestIncludeDir);$(CasablancaSrcDir)\pch;$(WebsocketppIncludeDir);$(TestRoot)\functional\websockets\utilities;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
125125
<CppLanguageStandard>c++11</CppLanguageStandard>
126126
<ExceptionHandling>Enabled</ExceptionHandling>
127127
<RuntimeTypeInfo>true</RuntimeTypeInfo>
@@ -134,8 +134,6 @@
134134
<PropertyGroup>
135135
<TargetName>websocketsclient140_test.android</TargetName>
136136
</PropertyGroup>
137-
138-
139137
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
140138
<ImportGroup Label="ExtensionTargets">
141139
<Import Project="$(PackagesRoot)\boost.1.55.0.16\build\native\boost.targets" Condition="Exists('$(PackagesRoot)\boost.1.55.0.16\build\native\boost.targets')" />

0 commit comments

Comments
 (0)