Skip to content

Commit e14f5b4

Browse files
committed
old cursor yells at me
1 parent 139c65e commit e14f5b4

File tree

3 files changed

+47
-35
lines changed

3 files changed

+47
-35
lines changed

packages/nextjs/src/config/turbopack/generateValueInjectionRules.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export function generateValueInjectionRules({
2222
}
2323

2424
if (routeManifest) {
25-
serverValues._sentryRouteManifest = routeManifest;
25+
clientValues._sentryRouteManifest = JSON.stringify(routeManifest);
2626
}
2727

2828
if (Object.keys(isomorphicValues).length > 0) {

packages/nextjs/test/config/turbopack/constructTurbopackConfig.test.ts

Lines changed: 29 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,13 @@ describe('constructTurbopackConfig', () => {
4646

4747
expect(result).toEqual({
4848
rules: {
49-
'**/instrumentation.*': {
49+
'**/instrumentation-client.*': {
5050
loaders: [
5151
{
5252
loader: '/mocked/path/to/valueInjectionLoader.js',
5353
options: {
5454
values: {
55-
_sentryRouteManifest: mockRouteManifest,
55+
_sentryRouteManifest: JSON.stringify(mockRouteManifest),
5656
},
5757
},
5858
},
@@ -88,9 +88,9 @@ describe('constructTurbopackConfig', () => {
8888
});
8989

9090
expect(result.rules).toBeDefined();
91-
expect(result.rules!['**/instrumentation.*']).toBeDefined();
91+
expect(result.rules!['**/instrumentation-client.*']).toBeDefined();
9292

93-
const rule = result.rules!['**/instrumentation.*'];
93+
const rule = result.rules!['**/instrumentation-client.*'];
9494
expect(rule).toHaveProperty('loaders');
9595

9696
const ruleWithLoaders = rule as { loaders: Array<{ loader: string; options: any }> };
@@ -159,13 +159,13 @@ describe('constructTurbopackConfig', () => {
159159
},
160160
rules: {
161161
'*.test.js': ['jest-loader'],
162-
'**/instrumentation.*': {
162+
'**/instrumentation-client.*': {
163163
loaders: [
164164
{
165165
loader: '/mocked/path/to/valueInjectionLoader.js',
166166
options: {
167167
values: {
168-
_sentryRouteManifest: mockRouteManifest,
168+
_sentryRouteManifest: JSON.stringify(mockRouteManifest),
169169
},
170170
},
171171
},
@@ -200,6 +200,18 @@ describe('constructTurbopackConfig', () => {
200200

201201
expect(result).toEqual({
202202
rules: {
203+
'**/instrumentation-client.*': {
204+
loaders: [
205+
{
206+
loader: '/mocked/path/to/valueInjectionLoader.js',
207+
options: {
208+
values: {
209+
_sentryRouteManifest: JSON.stringify(mockRouteManifest),
210+
},
211+
},
212+
},
213+
],
214+
},
203215
'**/instrumentation.*': existingRule,
204216
},
205217
});
@@ -218,13 +230,13 @@ describe('constructTurbopackConfig', () => {
218230

219231
expect(result).toEqual({
220232
rules: {
221-
'**/instrumentation.*': {
233+
'**/instrumentation-client.*': {
222234
loaders: [
223235
{
224236
loader: '/mocked/path/to/valueInjectionLoader.js',
225237
options: {
226238
values: {
227-
_sentryRouteManifest: emptyManifest,
239+
_sentryRouteManifest: JSON.stringify(emptyManifest),
228240
},
229241
},
230242
},
@@ -251,13 +263,13 @@ describe('constructTurbopackConfig', () => {
251263

252264
expect(result).toEqual({
253265
rules: {
254-
'**/instrumentation.*': {
266+
'**/instrumentation-client.*': {
255267
loaders: [
256268
{
257269
loader: '/mocked/path/to/valueInjectionLoader.js',
258270
options: {
259271
values: {
260-
_sentryRouteManifest: complexManifest,
272+
_sentryRouteManifest: JSON.stringify(complexManifest),
261273
},
262274
},
263275
},
@@ -281,13 +293,13 @@ describe('constructTurbopackConfig', () => {
281293

282294
expect(result).toEqual({
283295
rules: {
284-
'**/instrumentation.*': {
296+
'**/instrumentation-client.*': {
285297
loaders: [
286298
{
287299
loader: '/mocked/path/to/valueInjectionLoader.js',
288300
options: {
289301
values: {
290-
_sentryRouteManifest: mockRouteManifest,
302+
_sentryRouteManifest: JSON.stringify(mockRouteManifest),
291303
},
292304
},
293305
},
@@ -370,6 +382,7 @@ describe('constructTurbopackConfig', () => {
370382
options: {
371383
values: {
372384
_sentryNextJsVersion: '14.0.0',
385+
_sentryRouteManifest: JSON.stringify(mockRouteManifest),
373386
},
374387
},
375388
},
@@ -382,7 +395,6 @@ describe('constructTurbopackConfig', () => {
382395
options: {
383396
values: {
384397
_sentryNextJsVersion: '14.0.0',
385-
_sentryRouteManifest: mockRouteManifest,
386398
},
387399
},
388400
},
@@ -406,13 +418,13 @@ describe('constructTurbopackConfig', () => {
406418

407419
expect(result).toEqual({
408420
rules: {
409-
'**/instrumentation.*': {
421+
'**/instrumentation-client.*': {
410422
loaders: [
411423
{
412424
loader: '/mocked/path/to/valueInjectionLoader.js',
413425
options: {
414426
values: {
415-
_sentryRouteManifest: mockRouteManifest,
427+
_sentryRouteManifest: JSON.stringify(mockRouteManifest),
416428
},
417429
},
418430
},
@@ -507,6 +519,7 @@ describe('constructTurbopackConfig', () => {
507519
options: {
508520
values: {
509521
_sentryNextJsVersion: nextJsVersion,
522+
_sentryRouteManifest: JSON.stringify(mockRouteManifest),
510523
},
511524
},
512525
},
@@ -519,7 +532,6 @@ describe('constructTurbopackConfig', () => {
519532
options: {
520533
values: {
521534
_sentryNextJsVersion: nextJsVersion,
522-
_sentryRouteManifest: mockRouteManifest,
523535
},
524536
},
525537
},
@@ -697,6 +709,7 @@ describe('constructTurbopackConfig', () => {
697709
options: {
698710
values: {
699711
_sentryNextJsVersion: nextJsVersion,
712+
_sentryRouteManifest: JSON.stringify(mockRouteManifest),
700713
},
701714
},
702715
},
@@ -709,7 +722,6 @@ describe('constructTurbopackConfig', () => {
709722
options: {
710723
values: {
711724
_sentryNextJsVersion: nextJsVersion,
712-
_sentryRouteManifest: mockRouteManifest,
713725
},
714726
},
715727
},

packages/nextjs/test/config/turbopack/generateValueInjectionRules.test.ts

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -81,32 +81,32 @@ describe('generateValueInjectionRules', () => {
8181
});
8282

8383
describe('with routeManifest only', () => {
84-
it('should generate only server rule when routeManifest is provided', () => {
84+
it('should generate only client rule when routeManifest is provided', () => {
8585
const result = generateValueInjectionRules({
8686
routeManifest: mockRouteManifest,
8787
});
8888

8989
expect(result).toHaveLength(1);
9090

91-
// Only server rule should exist
92-
const serverRule = result.find(rule => rule.matcher === '**/instrumentation.*');
93-
expect(serverRule).toBeDefined();
94-
expect(serverRule?.rule).toEqual({
91+
// Only client rule should exist
92+
const clientRule = result.find(rule => rule.matcher === '**/instrumentation-client.*');
93+
expect(clientRule).toBeDefined();
94+
expect(clientRule?.rule).toEqual({
9595
loaders: [
9696
{
9797
loader: '/mocked/path/to/valueInjectionLoader.js',
9898
options: {
9999
values: {
100-
_sentryRouteManifest: mockRouteManifest,
100+
_sentryRouteManifest: JSON.stringify(mockRouteManifest),
101101
},
102102
},
103103
},
104104
],
105105
});
106106

107-
// Client rule should not exist
108-
const clientRule = result.find(rule => rule.matcher === '**/instrumentation-client.*');
109-
expect(clientRule).toBeUndefined();
107+
// Server rule should not exist
108+
const serverRule = result.find(rule => rule.matcher === '**/instrumentation.*');
109+
expect(serverRule).toBeUndefined();
110110
});
111111

112112
it('should handle empty route manifest', () => {
@@ -121,13 +121,13 @@ describe('generateValueInjectionRules', () => {
121121

122122
expect(result).toHaveLength(1);
123123

124-
const serverRule = result.find(rule => rule.matcher === '**/instrumentation.*');
125-
expect(serverRule?.rule).toMatchObject({
124+
const clientRule = result.find(rule => rule.matcher === '**/instrumentation-client.*');
125+
expect(clientRule?.rule).toMatchObject({
126126
loaders: [
127127
{
128128
options: {
129129
values: {
130-
_sentryRouteManifest: emptyManifest,
130+
_sentryRouteManifest: JSON.stringify(emptyManifest),
131131
},
132132
},
133133
},
@@ -156,13 +156,13 @@ describe('generateValueInjectionRules', () => {
156156

157157
expect(result).toHaveLength(1);
158158

159-
const serverRule = result.find(rule => rule.matcher === '**/instrumentation.*');
160-
expect(serverRule?.rule).toMatchObject({
159+
const clientRule = result.find(rule => rule.matcher === '**/instrumentation-client.*');
160+
expect(clientRule?.rule).toMatchObject({
161161
loaders: [
162162
{
163163
options: {
164164
values: {
165-
_sentryRouteManifest: complexManifest,
165+
_sentryRouteManifest: JSON.stringify(complexManifest),
166166
},
167167
},
168168
},
@@ -190,13 +190,14 @@ describe('generateValueInjectionRules', () => {
190190
options: {
191191
values: {
192192
_sentryNextJsVersion: '14.0.0',
193+
_sentryRouteManifest: JSON.stringify(mockRouteManifest),
193194
},
194195
},
195196
},
196197
],
197198
});
198199

199-
// Server rule should have both values
200+
// Server rule should have only nextJsVersion
200201
const serverRule = result.find(rule => rule.matcher === '**/instrumentation.*');
201202
expect(serverRule).toBeDefined();
202203
expect(serverRule?.rule).toEqual({
@@ -206,7 +207,6 @@ describe('generateValueInjectionRules', () => {
206207
options: {
207208
values: {
208209
_sentryNextJsVersion: '14.0.0',
209-
_sentryRouteManifest: mockRouteManifest,
210210
},
211211
},
212212
},

0 commit comments

Comments
 (0)