11use super :: * ;
2- use rocket:: local:: blocking:: Client ;
32use rocket:: http:: { Header , Status } ;
3+ use rocket:: local:: blocking:: Client ;
44use std:: sync:: Once ;
55
66static INIT : Once = Once :: new ( ) ;
@@ -16,15 +16,15 @@ fn setup() {
1616
1717fn create_test_client ( ) -> Client {
1818 setup ( ) ;
19-
19+
2020 // Clean environment before setting test values
2121 std:: env:: remove_var ( "API_KEY" ) ;
2222 std:: env:: remove_var ( "PORT" ) ;
23-
23+
2424 // Set up test environment
2525 std:: env:: set_var ( "API_KEY" , "test_key" ) ;
2626 std:: env:: set_var ( "PORT" , "8080" ) ;
27-
27+
2828 match Client :: tracked ( rocket ( ) ) {
2929 Ok ( client) => client,
3030 Err ( e) => panic ! ( "Failed to create test client: {:?}" , e) ,
@@ -46,18 +46,16 @@ fn test_generate_qr_with_valid_api_key() {
4646 . get ( "/generate?url=https://ghurmy.xyz" )
4747 . header ( Header :: new ( "X-API-Key" , "test_key" ) )
4848 . dispatch ( ) ;
49-
49+
5050 assert_eq ! ( response. status( ) , Status :: Ok ) ;
5151 assert ! ( response. into_string( ) . unwrap( ) . contains( "<svg" ) ) ;
5252}
5353
5454#[ test]
5555fn test_generate_qr_without_api_key ( ) {
5656 let client = create_test_client ( ) ;
57- let response = client
58- . get ( "/generate?url=https://example.com" )
59- . dispatch ( ) ;
60-
57+ let response = client. get ( "/generate?url=https://example.com" ) . dispatch ( ) ;
58+
6159 assert_eq ! ( response. status( ) , Status :: BadRequest ) ;
6260}
6361
@@ -68,15 +66,15 @@ fn test_generate_qr_with_invalid_api_key() {
6866 . get ( "/generate?url=https://ghurmy.xyz" )
6967 . header ( Header :: new ( "X-API-Key" , "wrong_key" ) )
7068 . dispatch ( ) ;
71-
69+
7270 assert_eq ! ( response. status( ) , Status :: Unauthorized ) ;
7371}
7472
7573#[ test]
7674fn test_cors_headers ( ) {
7775 let client = create_test_client ( ) ;
7876 let response = client. get ( "/" ) . dispatch ( ) ;
79-
77+
8078 assert_eq ! (
8179 response. headers( ) . get_one( "Access-Control-Allow-Origin" ) ,
8280 Some ( "*" )
@@ -95,7 +93,7 @@ fn test_cors_headers() {
9593fn test_options_request ( ) {
9694 let client = create_test_client ( ) ;
9795 let response = client. options ( "/" ) . dispatch ( ) ;
98-
96+
9997 assert_eq ! ( response. status( ) , Status :: Ok ) ;
10098}
10199
@@ -106,8 +104,8 @@ fn test_generate_qr_with_invalid_url() {
106104 . get ( "/generate?url=not_a_url" )
107105 . header ( Header :: new ( "X-API-Key" , "test_key" ) )
108106 . dispatch ( ) ;
109-
107+
110108 // The QR code library should still generate a QR code even for invalid URLs
111109 assert_eq ! ( response. status( ) , Status :: Ok ) ;
112110 assert ! ( response. into_string( ) . unwrap( ) . contains( "<svg" ) ) ;
113- }
111+ }
0 commit comments