@@ -29,7 +29,8 @@ public async void TestLocalFiles()
29
29
. AddResource ( "images/fire umbrella.jpg" , "TestFiles.fire-umbrella-small.jpg" )
30
30
. AddResource ( "images/logo.png" , "TestFiles.imazen_400.png" )
31
31
. AddResource ( "images/wrong.webp" , "TestFiles.imazen_400.png" )
32
- . AddResource ( "images/wrong.jpg" , "TestFiles.imazen_400.png" ) )
32
+ . AddResource ( "images/wrong.jpg" , "TestFiles.imazen_400.png" )
33
+ . AddResource ( "images/extensionless/file" , "TestFiles.imazen_400.png" ) )
33
34
{
34
35
35
36
var hostBuilder = new HostBuilder ( )
@@ -45,6 +46,7 @@ public async void TestLocalFiles()
45
46
. MapPath ( "/" , Path . Combine ( contentRoot . PhysicalPath , "images" ) )
46
47
. MapPath ( "/insensitive" , Path . Combine ( contentRoot . PhysicalPath , "images" ) , true )
47
48
. MapPath ( "/sensitive" , Path . Combine ( contentRoot . PhysicalPath , "images" ) , false )
49
+ . HandleExtensionlessRequestsUnder ( "/extensionless/" )
48
50
. AddWatermark ( new NamedWatermark ( "imazen" , "/logo.png" , new WatermarkOptions ( ) ) )
49
51
. AddWatermark ( new NamedWatermark ( "broken" , "/not_there.png" , new WatermarkOptions ( ) ) )
50
52
. AddWatermarkingHandler ( "/" , args =>
@@ -88,7 +90,10 @@ await Assert.ThrowsAsync<InvalidOperationException>(async () =>
88
90
wrongImageExtension2 . EnsureSuccessStatusCode ( ) ;
89
91
Assert . Equal ( "image/png" , wrongImageExtension2 . Content . Headers . ContentType . MediaType ) ;
90
92
91
-
93
+ using var extensionlessRequest = await client . GetAsync ( "/extensionless/file" ) ;
94
+ extensionlessRequest . EnsureSuccessStatusCode ( ) ;
95
+ Assert . Equal ( "image/png" , extensionlessRequest . Content . Headers . ContentType . MediaType ) ;
96
+
92
97
93
98
using var response2 = await client . GetAsync ( "/fire.jpg?width=1" ) ;
94
99
response2 . EnsureSuccessStatusCode ( ) ;
@@ -128,7 +133,8 @@ public async void TestDiskCache()
128
133
. AddResource ( "images/fire.jpg" , "TestFiles.fire-umbrella-small.jpg" )
129
134
. AddResource ( "images/logo.png" , "TestFiles.imazen_400.png" )
130
135
. AddResource ( "images/wrong.webp" , "TestFiles.imazen_400.png" )
131
- . AddResource ( "images/wrong.jpg" , "TestFiles.imazen_400.png" ) )
136
+ . AddResource ( "images/wrong.jpg" , "TestFiles.imazen_400.png" )
137
+ . AddResource ( "images/extensionless/file" , "TestFiles.imazen_400.png" ) )
132
138
{
133
139
134
140
var diskCacheDir = Path . Combine ( contentRoot . PhysicalPath , "diskcache" ) ;
@@ -147,6 +153,7 @@ public async void TestDiskCache()
147
153
app . UseImageflow ( new ImageflowMiddlewareOptions ( )
148
154
. SetMapWebRoot ( false )
149
155
. SetAllowDiskCaching ( true )
156
+ . HandleExtensionlessRequestsUnder ( "/extensionless/" )
150
157
// Maps / to ContentRootPath/images
151
158
. MapPath ( "/" , Path . Combine ( contentRoot . PhysicalPath , "images" ) ) ) ;
152
159
} ) ;
@@ -179,6 +186,9 @@ public async void TestDiskCache()
179
186
wrongImageExtension2 . EnsureSuccessStatusCode ( ) ;
180
187
Assert . Equal ( "image/png" , wrongImageExtension2 . Content . Headers . ContentType . MediaType ) ;
181
188
189
+ using var extensionlessRequest = await client . GetAsync ( "/extensionless/file" ) ;
190
+ extensionlessRequest . EnsureSuccessStatusCode ( ) ;
191
+ Assert . Equal ( "image/png" , extensionlessRequest . Content . Headers . ContentType . MediaType ) ;
182
192
183
193
184
194
await host . StopAsync ( CancellationToken . None ) ;
@@ -383,8 +393,12 @@ public async void TestRequestSigning()
383
393
var signedEncodedUnmodifiedUrl = Imazen . Common . Helpers . Signatures . SignRequest ( "/fire%20umbrella.jpg" , key ) ;
384
394
using var signedEncodedUnmodifiedResponse = await client . GetAsync ( signedEncodedUnmodifiedUrl ) ;
385
395
signedEncodedUnmodifiedResponse . EnsureSuccessStatusCode ( ) ;
386
-
387
-
396
+
397
+ // var unsignedUnmodifiedUrl = "/fire%20umbrella.jpg";
398
+ // using var unsignedUnmodifiedResponse = await client.GetAsync(unsignedUnmodifiedUrl);
399
+ // unsignedUnmodifiedResponse.EnsureSuccessStatusCode();
400
+ //
401
+ //
388
402
var signedEncodedUrl = Imazen . Common . Helpers . Signatures . SignRequest ( "/fire%20umbrella.jpg?width=1" , key ) ;
389
403
using var signedEncodedResponse = await client . GetAsync ( signedEncodedUrl ) ;
390
404
signedEncodedResponse . EnsureSuccessStatusCode ( ) ;
0 commit comments