@@ -136,7 +136,6 @@ def test_predeactivate_hook(tmpdir):
136136 assert 'deactivate_node' in p .read ()
137137
138138
139-
140139def test_mirror_option ():
141140 urls = [('https://npm.taobao.org/mirrors/node' ,
142141 'https://npm.taobao.org/mirrors/node/index.json' ),
@@ -525,11 +524,13 @@ def test_install_node_wrapped_success(self, tmpdir):
525524 src_dir = tmpdir .join ('src' ).strpath
526525 os .makedirs (src_dir )
527526
528- node_src_dir = os .path .join (src_dir , 'node-v18.0.0' )
529-
527+ bin_url = (
528+ 'https://nodejs.org/download/release/v18.0.0/'
529+ 'node-v18.0.0-linux-x64.tar.gz'
530+ )
530531 with mock .patch .object (
531532 nodeenv , 'get_node_bin_url' ,
532- return_value = 'https://nodejs.org/download/release/v18.0.0/node-v18.0.0-linux-x64.tar.gz'
533+ return_value = bin_url
533534 ), \
534535 mock .patch .object (
535536 nodeenv , 'download_node_src'
@@ -543,7 +544,7 @@ def test_install_node_wrapped_success(self, tmpdir):
543544
544545 # Verify download was called
545546 mock_download .assert_called_once_with (
546- 'https://nodejs.org/download/release/v18.0.0/node-v18.0.0-linux-x64.tar.gz' ,
547+ bin_url ,
547548 src_dir ,
548549 args
549550 )
@@ -564,9 +565,13 @@ def test_install_node_wrapped_from_source(self, tmpdir):
564565
565566 node_src_dir = os .path .join (src_dir , 'node-v18.0.0' )
566567
568+ src_url = (
569+ 'https://nodejs.org/download/release/v18.0.0/'
570+ 'node-v18.0.0.tar.gz'
571+ )
567572 with mock .patch .object (
568573 nodeenv , 'get_node_src_url' ,
569- return_value = 'https://nodejs.org/download/release/v18.0.0/node-v18.0.0.tar.gz'
574+ return_value = src_url
570575 ), \
571576 mock .patch .object (
572577 nodeenv , 'download_node_src'
@@ -580,7 +585,7 @@ def test_install_node_wrapped_from_source(self, tmpdir):
580585
581586 # Verify download was called with source URL
582587 mock_download .assert_called_once_with (
583- 'https://nodejs.org/download/release/v18.0.0/node-v18.0.0.tar.gz' ,
588+ src_url ,
584589 src_dir ,
585590 args
586591 )
@@ -591,7 +596,7 @@ def test_install_node_wrapped_from_source(self, tmpdir):
591596 )
592597
593598 def test_install_node_wrapped_arm64_fallback_to_x64 (self , tmpdir ):
594- """Test arm64 download fallback to x64 when arm64 is not available"""
599+ """Test arm64 fallback to x64 when arm64 is not available"""
595600 args = mock .Mock ()
596601 args .node = '16.0.0'
597602 args .prebuilt = True
@@ -601,8 +606,10 @@ def test_install_node_wrapped_arm64_fallback_to_x64(self, tmpdir):
601606 src_dir = tmpdir .join ('src' ).strpath
602607 os .makedirs (src_dir )
603608
604- arm64_url = 'https://nodejs.org/download/release/v16.0.0/node-v16.0.0-darwin-arm64.tar.gz'
605- x64_url = 'https://nodejs.org/download/release/v16.0.0/node-v16.0.0-darwin-x64.tar.gz'
609+ arm64_url = (
610+ 'https://nodejs.org/download/release/v16.0.0/'
611+ 'node-v16.0.0-darwin-arm64.tar.gz'
612+ )
606613
607614 # Mock HTTPError for arm64 URL
608615 def download_side_effect (url , src_dir , args ):
@@ -649,7 +656,10 @@ def test_install_node_wrapped_http_error_non_arm64(self, tmpdir):
649656 src_dir = tmpdir .join ('src' ).strpath
650657 os .makedirs (src_dir )
651658
652- x64_url = 'https://nodejs.org/download/release/v18.0.0/node-v18.0.0-linux-x64.tar.gz'
659+ x64_url = (
660+ 'https://nodejs.org/download/release/v18.0.0/'
661+ 'node-v18.0.0-linux-x64.tar.gz'
662+ )
653663
654664 # Mock HTTPError for x64 URL (no arm64 fallback should happen)
655665 def download_side_effect (url , src_dir , args ):
@@ -681,7 +691,7 @@ def download_side_effect(url, src_dir, args):
681691 mock_download .assert_called_once ()
682692
683693 def test_install_node_wrapped_skips_download_if_exists (self , tmpdir ):
684- """Test that download is skipped if node source directory exists"""
694+ """Test that download is skipped if node source dir exists"""
685695 args = mock .Mock ()
686696 args .node = '18.0.0'
687697 args .prebuilt = True
@@ -694,9 +704,13 @@ def test_install_node_wrapped_skips_download_if_exists(self, tmpdir):
694704 node_src_dir = os .path .join (src_dir , 'node-v18.0.0' )
695705 os .makedirs (node_src_dir )
696706
707+ bin_url = (
708+ 'https://nodejs.org/download/release/v18.0.0/'
709+ 'node-v18.0.0-linux-x64.tar.gz'
710+ )
697711 with mock .patch .object (
698712 nodeenv , 'get_node_bin_url' ,
699- return_value = 'https://nodejs.org/download/release/v18.0.0/node-v18.0.0-linux-x64.tar.gz'
713+ return_value = bin_url
700714 ), \
701715 mock .patch .object (
702716 nodeenv , 'download_node_src'
@@ -787,7 +801,7 @@ def test_install_node_wrapped_prebuilt_vs_source_urls(self, tmpdir):
787801 mock_bin_url .assert_not_called ()
788802
789803 def test_install_node_wrapped_arm64_fallback_both_fail (self , tmpdir ):
790- """Test that both arm64 and x64 download failures raise exception"""
804+ """Test that both arm64 and x64 failures raise exception"""
791805 args = mock .Mock ()
792806 args .node = '16.0.0'
793807 args .prebuilt = True
@@ -797,7 +811,10 @@ def test_install_node_wrapped_arm64_fallback_both_fail(self, tmpdir):
797811 src_dir = tmpdir .join ('src' ).strpath
798812 os .makedirs (src_dir )
799813
800- arm64_url = 'https://nodejs.org/download/release/v16.0.0/node-v16.0.0-darwin-arm64.tar.gz'
814+ arm64_url = (
815+ 'https://nodejs.org/download/release/v16.0.0/'
816+ 'node-v16.0.0-darwin-arm64.tar.gz'
817+ )
801818
802819 # Both arm64 and x64 downloads fail
803820 def download_side_effect (url , src_dir , args ):
@@ -821,8 +838,10 @@ def download_side_effect(url, src_dir, args):
821838 # Both arm64 and x64 should have been tried
822839 assert mock_download .call_count == 2
823840
824- def test_install_node_wrapped_no_copy_after_download_failure (self , tmpdir ):
825- """Test that copy_node_from_prebuilt is not called after download failure"""
841+ def test_install_node_wrapped_no_copy_after_download_failure (
842+ self , tmpdir
843+ ):
844+ """Test copy_node_from_prebuilt not called after failure"""
826845 args = mock .Mock ()
827846 args .node = '18.0.0'
828847 args .prebuilt = True
@@ -832,7 +851,10 @@ def test_install_node_wrapped_no_copy_after_download_failure(self, tmpdir):
832851 src_dir = tmpdir .join ('src' ).strpath
833852 os .makedirs (src_dir )
834853
835- x64_url = 'https://nodejs.org/download/release/v18.0.0/node-v18.0.0-linux-x64.tar.gz'
854+ x64_url = (
855+ 'https://nodejs.org/download/release/v18.0.0/'
856+ 'node-v18.0.0-linux-x64.tar.gz'
857+ )
836858
837859 # Download fails
838860 def download_side_effect (url , src_dir , args ):
@@ -860,8 +882,10 @@ def download_side_effect(url, src_dir, args):
860882 # Verify copy was NOT called after download failure
861883 mock_copy .assert_not_called ()
862884
863- def test_install_node_wrapped_no_build_after_download_failure (self , tmpdir ):
864- """Test that build_node_from_src is not called after download failure"""
885+ def test_install_node_wrapped_no_build_after_download_failure (
886+ self , tmpdir
887+ ):
888+ """Test build_node_from_src not called after failure"""
865889 args = mock .Mock ()
866890 args .node = '18.0.0'
867891 args .prebuilt = False
@@ -871,7 +895,10 @@ def test_install_node_wrapped_no_build_after_download_failure(self, tmpdir):
871895 src_dir = tmpdir .join ('src' ).strpath
872896 os .makedirs (src_dir )
873897
874- src_url = 'https://nodejs.org/download/release/v18.0.0/node-v18.0.0.tar.gz'
898+ src_url = (
899+ 'https://nodejs.org/download/release/v18.0.0/'
900+ 'node-v18.0.0.tar.gz'
901+ )
875902
876903 # Download fails
877904 def download_side_effect (url , src_dir , args ):
@@ -899,8 +926,10 @@ def download_side_effect(url, src_dir, args):
899926 # Verify build was NOT called after download failure
900927 mock_build .assert_not_called ()
901928
902- def test_install_node_wrapped_no_copy_after_arm64_fallback_failure (self , tmpdir ):
903- """Test that copy is not called when both arm64 and x64 downloads fail"""
929+ def test_install_node_wrapped_no_copy_after_arm64_fallback_failure (
930+ self , tmpdir
931+ ):
932+ """Test copy not called when both arm64 and x64 fail"""
904933 args = mock .Mock ()
905934 args .node = '16.0.0'
906935 args .prebuilt = True
@@ -910,7 +939,10 @@ def test_install_node_wrapped_no_copy_after_arm64_fallback_failure(self, tmpdir)
910939 src_dir = tmpdir .join ('src' ).strpath
911940 os .makedirs (src_dir )
912941
913- arm64_url = 'https://nodejs.org/download/release/v16.0.0/node-v16.0.0-darwin-arm64.tar.gz'
942+ arm64_url = (
943+ 'https://nodejs.org/download/release/v16.0.0/'
944+ 'node-v16.0.0-darwin-arm64.tar.gz'
945+ )
914946
915947 # Both arm64 and x64 downloads fail
916948 def download_side_effect (url , src_dir , args ):
0 commit comments