@@ -1298,13 +1298,15 @@ mod tests {
1298
1298
1299
1299
fn run_check_links (
1300
1300
env : & TestEnvironment ,
1301
- url : & str ,
1301
+ url_start : & str ,
1302
+ url_end : & str ,
1302
1303
extra : & str ,
1303
1304
should_contain_redirect : bool ,
1304
1305
) {
1305
1306
run_check_links_redir (
1306
1307
env,
1307
- url,
1308
+ url_start,
1309
+ url_end,
1308
1310
extra,
1309
1311
should_contain_redirect,
1310
1312
should_contain_redirect,
@@ -1313,18 +1315,24 @@ mod tests {
1313
1315
1314
1316
fn run_check_links_redir (
1315
1317
env : & TestEnvironment ,
1316
- url : & str ,
1318
+ url_start : & str ,
1319
+ url_end : & str ,
1317
1320
extra : & str ,
1318
1321
should_contain_redirect : bool ,
1319
1322
ajax_should_contain_redirect : bool ,
1320
1323
) {
1321
- let response = env. frontend ( ) . get ( url ) . send ( ) . unwrap ( ) ;
1324
+ let response = env. frontend ( ) . get ( & format ! ( "{url_start}{url_end}" ) ) . send ( ) . unwrap ( ) ;
1322
1325
assert ! ( response. status( ) . is_success( ) ) ;
1323
1326
let list1 = check_links ( response. text ( ) . unwrap ( ) , false , should_contain_redirect) ;
1324
1327
// Same test with AJAX endpoint.
1328
+ let ( start, extra_name) = if url_start. starts_with ( "/crate/" ) {
1329
+ ( "" , "/crate" )
1330
+ } else {
1331
+ ( "/crate" , "" )
1332
+ } ;
1325
1333
let response = env
1326
1334
. frontend ( )
1327
- . get ( & format ! ( "/-/ menus/platforms{url }{extra}" ) )
1335
+ . get ( & format ! ( "{start}{url_start}/ menus/platforms{extra_name}{url_end }{extra}" ) )
1328
1336
. send ( )
1329
1337
. unwrap ( ) ;
1330
1338
assert ! ( response. status( ) . is_success( ) ) ;
@@ -1356,17 +1364,18 @@ mod tests {
1356
1364
1357
1365
// FIXME: For some reason, there are target-redirects on non-AJAX lists on docs.rs
1358
1366
// crate pages other than the "default" one.
1359
- run_check_links_redir ( env, "/crate/dummy/0.4.0/features" , "" , true , false ) ;
1360
- run_check_links_redir ( env, "/crate/dummy/0.4.0/builds" , "" , true , false ) ;
1361
- run_check_links_redir ( env, "/crate/dummy/0.4.0/source/" , "" , true , false ) ;
1362
- run_check_links_redir ( env, "/crate/dummy/0.4.0/source/README.md" , "" , true , false ) ;
1363
-
1364
- run_check_links ( env, "/crate/dummy/0.4.0" , "" , false ) ;
1365
- run_check_links ( env, "/dummy/latest/dummy" , "/" , true ) ;
1366
- run_check_links ( env, "/dummy/0.4.0/x86_64-pc-windows-msvc/dummy" , "/" , true ) ;
1367
+ run_check_links_redir ( env, "/crate/dummy/0.4.0" , " /features", "" , true , false ) ;
1368
+ run_check_links_redir ( env, "/crate/dummy/0.4.0" , " /builds", "" , true , false ) ;
1369
+ run_check_links_redir ( env, "/crate/dummy/0.4.0" , " /source/", "" , true , false ) ;
1370
+ run_check_links_redir ( env, "/crate/dummy/0.4.0" , " /source/README.md", "" , true , false ) ;
1371
+
1372
+ run_check_links ( env, "/crate/dummy/0.4.0" , "" , "/" , false ) ;
1373
+ run_check_links ( env, "/dummy/latest" , " /dummy", "/" , true ) ;
1374
+ run_check_links ( env, "/dummy/0.4.0" , " /x86_64-pc-windows-msvc/dummy", "/" , true ) ;
1367
1375
run_check_links (
1368
1376
env,
1369
- "/dummy/0.4.0/x86_64-pc-windows-msvc/dummy/struct.A.html" ,
1377
+ "/dummy/0.4.0" ,
1378
+ "/x86_64-pc-windows-msvc/dummy/struct.A.html" ,
1370
1379
"/" ,
1371
1380
true ,
1372
1381
) ;
0 commit comments