@@ -489,8 +489,9 @@ class TestSerializer(serializers.Serializer):
489
489
assert rendered == ''
490
490
491
491
492
+ @override_settings (TIME_ZONE = 'UTC' , USE_TZ = True )
492
493
class TestDateTimeFieldHTMLFormRender (TestCase ):
493
- def test_datetime_field_rendering (self ):
494
+ def test_datetime_field_rendering_milliseconds (self ):
494
495
class TestSerializer (serializers .Serializer ):
495
496
appointment = serializers .DateTimeField ()
496
497
@@ -505,6 +506,36 @@ class TestSerializer(serializers.Serializer):
505
506
rendered
506
507
)
507
508
509
+ def test_datetime_field_rendering_no_milliseconds (self ):
510
+ class TestSerializer (serializers .Serializer ):
511
+ appointment = serializers .DateTimeField ()
512
+
513
+ appointment = datetime (2024 , 12 , 24 , 0 , 55 , 30 , 0 )
514
+ serializer = TestSerializer (data = {"appointment" : appointment })
515
+ serializer .is_valid ()
516
+ renderer = HTMLFormRenderer ()
517
+ field = serializer ['appointment' ]
518
+ rendered = renderer .render_field (field , {})
519
+ self .assertInHTML (
520
+ '<input name="appointment" class="form-control" type="datetime-local" value="2024-12-24T00:55:30">' ,
521
+ rendered
522
+ )
523
+
524
+ def test_datetime_field_rendering_no_seconds_and_milliseconds (self ):
525
+ class TestSerializer (serializers .Serializer ):
526
+ appointment = serializers .DateTimeField ()
527
+
528
+ appointment = datetime (2024 , 12 , 24 , 0 , 55 , 0 , 0 )
529
+ serializer = TestSerializer (data = {"appointment" : appointment })
530
+ serializer .is_valid ()
531
+ renderer = HTMLFormRenderer ()
532
+ field = serializer ['appointment' ]
533
+ rendered = renderer .render_field (field , {})
534
+ self .assertInHTML (
535
+ '<input name="appointment" class="form-control" type="datetime-local" value="2024-12-24T00:55:00">' ,
536
+ rendered
537
+ )
538
+
508
539
509
540
class TestHTMLFormRenderer (TestCase ):
510
541
def setUp (self ):
0 commit comments