@@ -547,3 +547,94 @@ def get(self, request):
547
547
request = factory .get ('/' )
548
548
with pytest .raises (RuntimeError ):
549
549
view (request ).render ()
550
+
551
+
552
+ class ApiViewsTests (TestCase ):
553
+
554
+ def test_create_api_view_post (self ):
555
+ class MockCreateApiView (generics .CreateAPIView ):
556
+ def create (self , request , * args , ** kwargs ):
557
+ self .called = True
558
+ self .call_args = (request , args , kwargs )
559
+ view = MockCreateApiView ()
560
+ data = ('test request' , ('test arg' ,), {'test_kwarg' : 'test' })
561
+ view .post ('test request' , 'test arg' , test_kwarg = 'test' )
562
+ assert view .called is True
563
+ assert view .call_args == data
564
+
565
+ def test_destroy_api_view_delete (self ):
566
+ class MockDestroyApiView (generics .DestroyAPIView ):
567
+ def destroy (self , request , * args , ** kwargs ):
568
+ self .called = True
569
+ self .call_args = (request , args , kwargs )
570
+ view = MockDestroyApiView ()
571
+ data = ('test request' , ('test arg' ,), {'test_kwarg' : 'test' })
572
+ view .delete ('test request' , 'test arg' , test_kwarg = 'test' )
573
+ assert view .called is True
574
+ assert view .call_args == data
575
+
576
+ def test_update_api_view_partial_update (self ):
577
+ class MockUpdateApiView (generics .UpdateAPIView ):
578
+ def partial_update (self , request , * args , ** kwargs ):
579
+ self .called = True
580
+ self .call_args = (request , args , kwargs )
581
+ view = MockUpdateApiView ()
582
+ data = ('test request' , ('test arg' ,), {'test_kwarg' : 'test' })
583
+ view .patch ('test request' , 'test arg' , test_kwarg = 'test' )
584
+ assert view .called is True
585
+ assert view .call_args == data
586
+
587
+ def test_retrieve_update_api_view_get (self ):
588
+ class MockRetrieveUpdateApiView (generics .RetrieveUpdateAPIView ):
589
+ def retrieve (self , request , * args , ** kwargs ):
590
+ self .called = True
591
+ self .call_args = (request , args , kwargs )
592
+ view = MockRetrieveUpdateApiView ()
593
+ data = ('test request' , ('test arg' ,), {'test_kwarg' : 'test' })
594
+ view .get ('test request' , 'test arg' , test_kwarg = 'test' )
595
+ assert view .called is True
596
+ assert view .call_args == data
597
+
598
+ def test_retrieve_update_api_view_put (self ):
599
+ class MockRetrieveUpdateApiView (generics .RetrieveUpdateAPIView ):
600
+ def update (self , request , * args , ** kwargs ):
601
+ self .called = True
602
+ self .call_args = (request , args , kwargs )
603
+ view = MockRetrieveUpdateApiView ()
604
+ data = ('test request' , ('test arg' ,), {'test_kwarg' : 'test' })
605
+ view .put ('test request' , 'test arg' , test_kwarg = 'test' )
606
+ assert view .called is True
607
+ assert view .call_args == data
608
+
609
+ def test_retrieve_update_api_view_patch (self ):
610
+ class MockRetrieveUpdateApiView (generics .RetrieveUpdateAPIView ):
611
+ def partial_update (self , request , * args , ** kwargs ):
612
+ self .called = True
613
+ self .call_args = (request , args , kwargs )
614
+ view = MockRetrieveUpdateApiView ()
615
+ data = ('test request' , ('test arg' ,), {'test_kwarg' : 'test' })
616
+ view .patch ('test request' , 'test arg' , test_kwarg = 'test' )
617
+ assert view .called is True
618
+ assert view .call_args == data
619
+
620
+ def test_retrieve_destroy_api_view_get (self ):
621
+ class MockRetrieveDestroyUApiView (generics .RetrieveDestroyAPIView ):
622
+ def retrieve (self , request , * args , ** kwargs ):
623
+ self .called = True
624
+ self .call_args = (request , args , kwargs )
625
+ view = MockRetrieveDestroyUApiView ()
626
+ data = ('test request' , ('test arg' ,), {'test_kwarg' : 'test' })
627
+ view .get ('test request' , 'test arg' , test_kwarg = 'test' )
628
+ assert view .called is True
629
+ assert view .call_args == data
630
+
631
+ def test_retrieve_destroy_api_view_delete (self ):
632
+ class MockRetrieveDestroyUApiView (generics .RetrieveDestroyAPIView ):
633
+ def destroy (self , request , * args , ** kwargs ):
634
+ self .called = True
635
+ self .call_args = (request , args , kwargs )
636
+ view = MockRetrieveDestroyUApiView ()
637
+ data = ('test request' , ('test arg' ,), {'test_kwarg' : 'test' })
638
+ view .delete ('test request' , 'test arg' , test_kwarg = 'test' )
639
+ assert view .called is True
640
+ assert view .call_args == data
0 commit comments