6
6
using System . Text . Json ;
7
7
using Microsoft . AspNetCore . Components . Infrastructure ;
8
8
using Microsoft . AspNetCore . Components . RenderTree ;
9
- using Microsoft . AspNetCore . Components . Web ;
10
9
using Microsoft . Extensions . DependencyInjection ;
11
10
using Microsoft . Extensions . Logging ;
12
11
using Microsoft . Extensions . Logging . Abstractions ;
@@ -423,9 +422,9 @@ IEnumerator IEnumerable.GetEnumerator()
423
422
public void PersistenceReasons_HaveCorrectDefaults ( )
424
423
{
425
424
// Arrange & Act
426
- var prerenderingReason = new PersistOnPrerendering ( ) ;
427
- var enhancedNavReason = new PersistOnEnhancedNavigation ( ) ;
428
- var circuitPauseReason = new PersistOnCircuitPause ( ) ;
425
+ var prerenderingReason = new TestPersistOnPrerendering ( ) ;
426
+ var enhancedNavReason = new TestPersistOnEnhancedNavigation ( ) ;
427
+ var circuitPauseReason = new TestPersistOnCircuitPause ( ) ;
429
428
430
429
// Assert
431
430
Assert . True ( prerenderingReason . PersistByDefault ) ;
@@ -446,7 +445,7 @@ public async Task PersistStateAsync_RespectsReasonFilters()
446
445
// Register callback with filter that blocks enhanced navigation
447
446
var filters = new List < IPersistenceReasonFilter >
448
447
{
449
- new TestPersistenceReasonFilter < PersistOnEnhancedNavigation > ( false )
448
+ new TestPersistenceReasonFilter < TestPersistOnEnhancedNavigation > ( false )
450
449
} ;
451
450
452
451
manager . State . RegisterOnPersisting ( ( ) =>
@@ -456,7 +455,7 @@ public async Task PersistStateAsync_RespectsReasonFilters()
456
455
} , new TestRenderMode ( ) , filters ) ;
457
456
458
457
// Act - persist with enhanced navigation reason
459
- await manager . PersistStateAsync ( store , renderer , new PersistOnEnhancedNavigation ( ) ) ;
458
+ await manager . PersistStateAsync ( store , renderer , new TestPersistOnEnhancedNavigation ( ) ) ;
460
459
461
460
// Assert - callback should not be executed
462
461
Assert . False ( callbackExecuted ) ;
@@ -475,7 +474,7 @@ public async Task PersistStateAsync_AllowsWhenFilterMatches()
475
474
// Register callback with filter that allows prerendering
476
475
var filters = new List < IPersistenceReasonFilter >
477
476
{
478
- new TestPersistenceReasonFilter < PersistOnPrerendering > ( true )
477
+ new TestPersistenceReasonFilter < TestPersistOnPrerendering > ( true )
479
478
} ;
480
479
481
480
manager . State . RegisterOnPersisting ( ( ) =>
@@ -485,7 +484,7 @@ public async Task PersistStateAsync_AllowsWhenFilterMatches()
485
484
} , new TestRenderMode ( ) , filters ) ;
486
485
487
486
// Act - persist with prerendering reason
488
- await manager . PersistStateAsync ( store , renderer , new PersistOnPrerendering ( ) ) ;
487
+ await manager . PersistStateAsync ( store , renderer , new TestPersistOnPrerendering ( ) ) ;
489
488
490
489
// Assert - callback should be executed
491
490
Assert . True ( callbackExecuted ) ;
@@ -515,6 +514,22 @@ private class TestRenderMode : IComponentRenderMode
515
514
{
516
515
}
517
516
517
+ // Test implementations of persistence reasons
518
+ private class TestPersistOnPrerendering : IPersistenceReason
519
+ {
520
+ public bool PersistByDefault => true ;
521
+ }
522
+
523
+ private class TestPersistOnEnhancedNavigation : IPersistenceReason
524
+ {
525
+ public bool PersistByDefault => false ;
526
+ }
527
+
528
+ private class TestPersistOnCircuitPause : IPersistenceReason
529
+ {
530
+ public bool PersistByDefault => true ;
531
+ }
532
+
518
533
private class PersistentService : IPersistentServiceRegistration
519
534
{
520
535
public string Assembly { get ; set ; }
0 commit comments