@@ -732,6 +732,25 @@ def test_export_csv(client: TestClient) -> None:
732732 assert response .text == "name,status\r \n Daniel,ACTIVE\r \n "
733733
734734
735+ def test_export_csv_utf8 (client : TestClient ) -> None :
736+ with session_maker () as session :
737+ user_1 = User (name = "Daniel" , status = "ACTIVE" )
738+ user_2 = User (name = "دانيال" , status = "ACTIVE" )
739+ user_3 = User (name = "積極的" , status = "ACTIVE" )
740+ user_4 = User (name = "Даниэль" , status = "ACTIVE" )
741+ session .add (user_1 )
742+ session .add (user_2 )
743+ session .add (user_3 )
744+ session .add (user_4 )
745+ session .commit ()
746+
747+ response = client .get ("/admin/user/export/csv" )
748+ assert response .text == (
749+ "name,status\r \n Daniel,ACTIVE\r \n دانيال,ACTIVE\r \n "
750+ "積極的,ACTIVE\r \n Даниэль,ACTIVE\r \n "
751+ )
752+
753+
735754def test_export_json (client : TestClient ) -> None :
736755 with session_maker () as session :
737756 user = User (name = "Daniel" , status = "ACTIVE" )
@@ -742,6 +761,27 @@ def test_export_json(client: TestClient) -> None:
742761 assert response .text == '[{"name": "Daniel", "status": "ACTIVE"}]'
743762
744763
764+ def test_export_json_utf8 (client : TestClient ) -> None :
765+ with session_maker () as session :
766+ user_1 = User (name = "Daniel" , status = "ACTIVE" )
767+ user_2 = User (name = "دانيال" , status = "ACTIVE" )
768+ user_3 = User (name = "積極的" , status = "ACTIVE" )
769+ user_4 = User (name = "Даниэль" , status = "ACTIVE" )
770+ session .add (user_1 )
771+ session .add (user_2 )
772+ session .add (user_3 )
773+ session .add (user_4 )
774+ session .commit ()
775+
776+ response = client .get ("/admin/user/export/json" )
777+ assert response .text == (
778+ '[{"name": "Daniel", "status": "ACTIVE"},'
779+ '{"name": "دانيال", "status": "ACTIVE"},'
780+ '{"name": "積極的", "status": "ACTIVE"},'
781+ '{"name": "Даниэль", "status": "ACTIVE"}]'
782+ )
783+
784+
745785def test_export_json_complex_model (client : TestClient ) -> None :
746786 with session_maker () as session :
747787 user = User (name = "Daniel" , status = "ACTIVE" )
0 commit comments