@@ -435,3 +435,90 @@ def test_valid(self, finder, path_2, operation_2, server):
435
435
assert result == (
436
436
path_2 , operation_2 , server , path_result , server_result ,
437
437
)
438
+
439
+
440
+ class TestConcretePaths (
441
+ BaseTestSpecServer , BaseTestSimpleServer ):
442
+
443
+ path_name = '/keys/{id}/tokens'
444
+
445
+ @pytest .fixture
446
+ def operation_2 (self ):
447
+ return Operation ('get' , '/keys/master/tokens' , {}, {})
448
+
449
+ @pytest .fixture
450
+ def operations_2 (self , operation_2 ):
451
+ return {
452
+ 'get' : operation_2 ,
453
+ }
454
+
455
+ @pytest .fixture
456
+ def path (self , operations ):
457
+ return Path ('/keys/{id}/tokens' , operations )
458
+
459
+ @pytest .fixture
460
+ def path_2 (self , operations_2 ):
461
+ return Path ('/keys/master/tokens' , operations_2 )
462
+
463
+ @pytest .fixture
464
+ def paths (self , path , path_2 ):
465
+ return {
466
+ path .name : path ,
467
+ path_2 .name : path_2 ,
468
+ }
469
+
470
+ def test_valid (self , finder , path_2 , operation_2 , server ):
471
+ request_uri = '/keys/master/tokens'
472
+ request = MockRequest (
473
+ 'http://petstore.swagger.io' , 'get' , request_uri )
474
+ result = finder .find (request )
475
+
476
+ path_result = TemplateResult (path_2 .name , {})
477
+ server_result = TemplateResult (self .server_url , {})
478
+ assert result == (
479
+ path_2 , operation_2 , server , path_result , server_result ,
480
+ )
481
+
482
+
483
+ class TestTemplateConcretePaths (
484
+ BaseTestSpecServer , BaseTestSimpleServer ):
485
+
486
+ path_name = '/keys/{id}/tokens/{id2}'
487
+
488
+ @pytest .fixture
489
+ def operation_2 (self ):
490
+ return Operation ('get' , '/keys/{id}/tokens/master' , {}, {})
491
+
492
+ @pytest .fixture
493
+ def operations_2 (self , operation_2 ):
494
+ return {
495
+ 'get' : operation_2 ,
496
+ }
497
+
498
+ @pytest .fixture
499
+ def path (self , operations ):
500
+ return Path ('/keys/{id}/tokens/{id2}' , operations )
501
+
502
+ @pytest .fixture
503
+ def path_2 (self , operations_2 ):
504
+ return Path ('/keys/{id}/tokens/master' , operations_2 )
505
+
506
+ @pytest .fixture
507
+ def paths (self , path , path_2 ):
508
+ return {
509
+ path .name : path ,
510
+ path_2 .name : path_2 ,
511
+ }
512
+
513
+ def test_valid (self , finder , path_2 , operation_2 , server ):
514
+ token_id = '123'
515
+ request_uri = '/keys/{0}/tokens/master' .format (token_id )
516
+ request = MockRequest (
517
+ 'http://petstore.swagger.io' , 'get' , request_uri )
518
+ result = finder .find (request )
519
+
520
+ path_result = TemplateResult (path_2 .name , {'id' : '123' })
521
+ server_result = TemplateResult (self .server_url , {})
522
+ assert result == (
523
+ path_2 , operation_2 , server , path_result , server_result ,
524
+ )
0 commit comments