Skip to content

Commit 0ab4217

Browse files
authored
Fix "/" path for controllers (#259)
1 parent eaf7093 commit 0ab4217

File tree

5 files changed

+20
-11
lines changed

5 files changed

+20
-11
lines changed

nanoFramework.WebServer/WebServer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -659,7 +659,7 @@ public static bool IsRouteMatch(CallbackRoutes route, string method, string rawU
659659
// Matching the route name
660660
// Matching the method type
661661
if (!isFound ||
662-
(rawUrlToCompare.IndexOf(routeToCompare) != incForSlash))
662+
(!string.IsNullOrEmpty(routeToCompare) && rawUrlToCompare.IndexOf(routeToCompare) != incForSlash))
663663
{
664664
return false;
665665
}

tests/nanoFramework.WebServer.Tests/WebServerTests.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ public void IsRouteMatch_Should_ReturnFalseForNotMatchingMethod()
5252
[DataRow("GET", "/api/test/resource/name", "GET", "/api/test/resource/name?test=")]
5353
[DataRow("GET", "/api/test/resource/name", "GET", "/api/test/resource/name?")]
5454
[DataRow("GET", "/api/test/resource/name", "GET", "/api/test/resource/name?test=&id=123&app=something")]
55+
[DataRow("", "", "GET", "/")]
5556
public void IsRouteMatch_Should_ReturnTrueForMatchingMethodAndRoute(string routeMethod, string routeUrl, string invokedMethod, string invokedUrl)
5657
{
5758
Console.WriteLine($"Params: routeMethod: {routeMethod} routeUrl: {routeUrl} invokedMethod: {invokedMethod} invokedUrl: {invokedUrl}");

tests/nanoFramework.WebServer.Tests/nanoFramework.WebServer.Tests.nfproj

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,16 +41,17 @@
4141
<Reference Include="nanoFramework.System.Collections">
4242
<HintPath>..\..\packages\nanoFramework.System.Collections.1.5.31\lib\nanoFramework.System.Collections.dll</HintPath>
4343
</Reference>
44+
<Reference Include="nanoFramework.System.Runtime">
45+
<HintPath>..\..\packages\nanoFramework.System.Runtime.1.0.27\lib\nanoFramework.System.Runtime.dll</HintPath>
46+
</Reference>
4447
<Reference Include="nanoFramework.System.Text">
4548
<HintPath>..\..\packages\nanoFramework.System.Text.1.2.54\lib\nanoFramework.System.Text.dll</HintPath>
4649
</Reference>
47-
<Reference Include="nanoFramework.TestFramework, Version=2.1.102.0, Culture=neutral, PublicKeyToken=c07d481e9758c731">
48-
<HintPath>..\..\packages\nanoFramework.TestFramework.2.1.102\lib\nanoFramework.TestFramework.dll</HintPath>
49-
<Private>True</Private>
50+
<Reference Include="nanoFramework.TestFramework">
51+
<HintPath>..\..\packages\nanoFramework.TestFramework.2.1.104\lib\nanoFramework.TestFramework.dll</HintPath>
5052
</Reference>
51-
<Reference Include="nanoFramework.UnitTestLauncher, Version=0.0.0.0, Culture=neutral, PublicKeyToken=c07d481e9758c731">
52-
<HintPath>..\..\packages\nanoFramework.TestFramework.2.1.102\lib\nanoFramework.UnitTestLauncher.exe</HintPath>
53-
<Private>True</Private>
53+
<Reference Include="nanoFramework.UnitTestLauncher">
54+
<HintPath>..\..\packages\nanoFramework.TestFramework.2.1.104\lib\nanoFramework.UnitTestLauncher.exe</HintPath>
5455
</Reference>
5556
<Reference Include="System.IO.Streams, Version=1.1.59.0, Culture=neutral, PublicKeyToken=c07d481e9758c731">
5657
<HintPath>..\..\packages\nanoFramework.System.IO.Streams.1.1.59\lib\System.IO.Streams.dll</HintPath>

tests/nanoFramework.WebServer.Tests/packages.config

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
<package id="nanoFramework.System.IO.Streams" version="1.1.59" targetFramework="netnano1.0" />
77
<package id="nanoFramework.System.Net" version="1.10.79" targetFramework="netnano1.0" />
88
<package id="nanoFramework.System.Net.Http.Server" version="1.5.138" targetFramework="netnano1.0" />
9+
<package id="nanoFramework.System.Runtime" version="1.0.27" targetFramework="netnano1.0" />
910
<package id="nanoFramework.System.Text" version="1.2.54" targetFramework="netnano1.0" />
1011
<package id="nanoFramework.System.Threading" version="1.1.32" targetFramework="netnano1.0" />
11-
<package id="nanoFramework.TestFramework" version="2.1.102" targetFramework="netnano1.0" developmentDependency="true" />
12+
<package id="nanoFramework.TestFramework" version="2.1.104" targetFramework="netnano1.0" developmentDependency="true" />
1213
</packages>

tests/nanoFramework.WebServer.Tests/packages.lock.json

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,12 @@
3838
"resolved": "1.5.138",
3939
"contentHash": "9luYHhwY3iJJq7XpFuYktiUsFnpe+WbYGzCP83FmqkfcwmiOeVutfGW8Nt3VvIABhqLwnkPyK1zGebmR8xFwEA=="
4040
},
41+
"nanoFramework.System.Runtime": {
42+
"type": "Direct",
43+
"requested": "[1.0.27, 1.0.27]",
44+
"resolved": "1.0.27",
45+
"contentHash": "aMwvQV6AR+XlDc+dHR/fWWnTe5dc7LDaqZS0ccfmd31Y39dZnmX3iQB2wXWtZGvXLCC+obc3IF3Vc70FiG0raw=="
46+
},
4147
"nanoFramework.System.Text": {
4248
"type": "Direct",
4349
"requested": "[1.2.54, 1.2.54]",
@@ -52,9 +58,9 @@
5258
},
5359
"nanoFramework.TestFramework": {
5460
"type": "Direct",
55-
"requested": "[2.1.102, 2.1.102]",
56-
"resolved": "2.1.102",
57-
"contentHash": "miXwPCSlVmUR2JhV8YLGmTVXmykXC4EULGaTvXndnmXzCHZlyE92Y+1mo3QlC7EA74WDBnl3FJY4FGoGJEoEsQ=="
61+
"requested": "[2.1.104, 2.1.104]",
62+
"resolved": "2.1.104",
63+
"contentHash": "48Ahh7O86SAjdUO5h0osrqBQj6nL1o7Mr27J7bRvZtgwOQ2sTdCeGBEMuzjv6k0f1GL2xB9koxQo9EuZj0kB3w=="
5864
}
5965
}
6066
}

0 commit comments

Comments
 (0)