From 2cc85c64f1c64a2dbaeae276a3e2ca8420de76b7 Mon Sep 17 00:00:00 2001
From: WXL <wl_5969728@163.com>
Date: 星期三, 22 四月 2026 18:09:58 +0800
Subject: [PATCH] 上报转运调试

---
 node_modules/resolve/test/mock_sync.js |   26 +++++++++++++++++++++++---
 1 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/node_modules/resolve/test/mock_sync.js b/node_modules/resolve/test/mock_sync.js
index c5a7e2a..3456cab 100644
--- a/node_modules/resolve/test/mock_sync.js
+++ b/node_modules/resolve/test/mock_sync.js
@@ -140,7 +140,7 @@
 });
 
 test('readPackageSync', function (t) {
-    t.plan(3);
+    t.plan(4);
 
     var files = {};
     files[path.resolve('/foo/node_modules/bar/something-else.js')] = 'beep';
@@ -179,12 +179,12 @@
         );
     });
 
-    var readPackageSync = function (readFileSync, file) {
+    function readPackageSync(readFileSync, file) {
         if (file.indexOf(path.join('bar', 'package.json')) >= 0) {
             return { main: './something-else.js' };
         }
         return JSON.parse(files[path.resolve(file)]);
-    };
+    }
 
     t.test('with readPackage', function (st) {
         st.plan(1);
@@ -210,5 +210,25 @@
             'errors when both readFile and readPackage are provided'
         );
     });
+
+    t.test('readPackageSync error propagates correctly', function (st) {
+        st.plan(1);
+
+        var readPackageError = new Error('read package error');
+
+        function failReadPackageSync() {
+            throw readPackageError;
+        }
+
+        var options = opts('/foo');
+        delete options.readFileSync;
+        options.readPackageSync = failReadPackageSync;
+
+        st.throws(
+            function () { resolve.sync('bar', options); },
+            readPackageError,
+            'readPackageSync error is thrown'
+        );
+    });
 });
 

--
Gitblit v1.9.3