@@ -221,14 +221,7 @@ func TestGenerate(t *testing.T) {
221
221
},
222
222
},
223
223
},
224
- Filters : []v1beta1.HTTPRouteFilter {
225
- {
226
- Type : v1beta1 .HTTPRouteFilterRequestRedirect ,
227
- RequestRedirect : & v1beta1.HTTPRequestRedirectFilter {
228
- Hostname : (* v1beta1 .PreciseHostname )(helpers .GetStringPointer ("foo.example.com" )),
229
- },
230
- },
231
- },
224
+ // redirect is set in the corresponding state.MatchRule
232
225
},
233
226
{
234
227
// A match with a redirect with explicit port
@@ -239,15 +232,7 @@ func TestGenerate(t *testing.T) {
239
232
},
240
233
},
241
234
},
242
- Filters : []v1beta1.HTTPRouteFilter {
243
- {
244
- Type : v1beta1 .HTTPRouteFilterRequestRedirect ,
245
- RequestRedirect : & v1beta1.HTTPRequestRedirectFilter {
246
- Hostname : (* v1beta1 .PreciseHostname )(helpers .GetStringPointer ("bar.example.com" )),
247
- Port : (* v1beta1 .PortNumber )(helpers .GetInt32Pointer (8080 )),
248
- },
249
- },
250
- },
235
+ // redirect is set in the corresponding state.MatchRule
251
236
},
252
237
},
253
238
},
@@ -342,6 +327,11 @@ func TestGenerate(t *testing.T) {
342
327
MatchIdx : 0 ,
343
328
RuleIdx : 3 ,
344
329
Source : hr ,
330
+ Filters : state.Filters {
331
+ RequestRedirect : & v1beta1.HTTPRequestRedirectFilter {
332
+ Hostname : (* v1beta1 .PreciseHostname )(helpers .GetStringPointer ("foo.example.com" )),
333
+ },
334
+ },
345
335
},
346
336
},
347
337
},
@@ -352,6 +342,12 @@ func TestGenerate(t *testing.T) {
352
342
MatchIdx : 0 ,
353
343
RuleIdx : 4 ,
354
344
Source : hr ,
345
+ Filters : state.Filters {
346
+ RequestRedirect : & v1beta1.HTTPRequestRedirectFilter {
347
+ Hostname : (* v1beta1 .PreciseHostname )(helpers .GetStringPointer ("bar.example.com" )),
348
+ Port : (* v1beta1 .PortNumber )(helpers .GetInt32Pointer (8080 )),
349
+ },
350
+ },
355
351
},
356
352
},
357
353
},
@@ -476,95 +472,6 @@ func TestGenerateProxyPass(t *testing.T) {
476
472
}
477
473
}
478
474
479
- func TestFindFirstFilters (t * testing.T ) {
480
- oneType := map [v1beta1.HTTPRouteFilterType ]struct {}{
481
- v1beta1 .HTTPRouteFilterRequestRedirect : {},
482
- }
483
-
484
- twoTypes := map [v1beta1.HTTPRouteFilterType ]struct {}{
485
- v1beta1 .HTTPRouteFilterRequestRedirect : {},
486
- v1beta1 .HTTPRouteFilterURLRewrite : {},
487
- }
488
-
489
- redirect1 := v1beta1.HTTPRouteFilter {
490
- Type : v1beta1 .HTTPRouteFilterRequestRedirect ,
491
- RequestRedirect : & v1beta1.HTTPRequestRedirectFilter {
492
- Hostname : (* v1beta1 .PreciseHostname )(helpers .GetStringPointer ("foo.example.com" )),
493
- },
494
- }
495
- redirect2 := v1beta1.HTTPRouteFilter {
496
- Type : v1beta1 .HTTPRouteFilterRequestRedirect ,
497
- RequestRedirect : & v1beta1.HTTPRequestRedirectFilter {
498
- Hostname : (* v1beta1 .PreciseHostname )(helpers .GetStringPointer ("bar.example.com" )),
499
- },
500
- }
501
- rewrite1 := v1beta1.HTTPRouteFilter {
502
- Type : v1beta1 .HTTPRouteFilterURLRewrite ,
503
- URLRewrite : & v1beta1.HTTPURLRewriteFilter {
504
- Hostname : (* v1beta1 .PreciseHostname )(helpers .GetStringPointer ("foo.example.com" )),
505
- },
506
- }
507
- rewrite2 := v1beta1.HTTPRouteFilter {
508
- Type : v1beta1 .HTTPRouteFilterURLRewrite ,
509
- URLRewrite : & v1beta1.HTTPURLRewriteFilter {
510
- Hostname : (* v1beta1 .PreciseHostname )(helpers .GetStringPointer ("bar.example.com" )),
511
- },
512
- }
513
-
514
- oneTypeFilters := []v1beta1.HTTPRouteFilter {redirect1 , redirect2 }
515
-
516
- twoTypesFilters := []v1beta1.HTTPRouteFilter {
517
- redirect1 ,
518
- rewrite1 ,
519
- rewrite2 ,
520
- redirect2 ,
521
- }
522
-
523
- tests := []struct {
524
- filters []v1beta1.HTTPRouteFilter
525
- filterTypes map [v1beta1.HTTPRouteFilterType ]struct {}
526
- expected map [v1beta1.HTTPRouteFilterType ]v1beta1.HTTPRouteFilter
527
- msg string
528
- }{
529
- {
530
- filters : []v1beta1.HTTPRouteFilter {},
531
- filterTypes : twoTypes ,
532
- expected : map [v1beta1.HTTPRouteFilterType ]v1beta1.HTTPRouteFilter {},
533
- msg : "no filters" ,
534
- },
535
- {
536
- filters : oneTypeFilters ,
537
- filterTypes : oneType ,
538
- expected : map [v1beta1.HTTPRouteFilterType ]v1beta1.HTTPRouteFilter {
539
- v1beta1 .HTTPRouteFilterRequestRedirect : redirect1 ,
540
- },
541
- msg : "only one type" ,
542
- },
543
- {
544
- filters : twoTypesFilters ,
545
- filterTypes : map [v1beta1.HTTPRouteFilterType ]struct {}{},
546
- expected : map [v1beta1.HTTPRouteFilterType ]v1beta1.HTTPRouteFilter {},
547
- msg : "no supported type" ,
548
- },
549
- {
550
- filters : twoTypesFilters ,
551
- filterTypes : twoTypes ,
552
- expected : map [v1beta1.HTTPRouteFilterType ]v1beta1.HTTPRouteFilter {
553
- v1beta1 .HTTPRouteFilterRequestRedirect : redirect1 ,
554
- v1beta1 .HTTPRouteFilterURLRewrite : rewrite1 ,
555
- },
556
- msg : "two types two filters" ,
557
- },
558
- }
559
-
560
- for _ , test := range tests {
561
- result := findFirstFilters (test .filters , test .filterTypes )
562
- if diff := cmp .Diff (test .expected , result ); diff != "" {
563
- t .Errorf ("findFirstFilters() mismatch '%s' (-want +got):\n %s" , test .msg , diff )
564
- }
565
- }
566
- }
567
-
568
475
func TestGenerateReturnValForRedirectFilter (t * testing.T ) {
569
476
const listenerPort = 123
570
477
0 commit comments