66using MyWebApp . Models ;
77using MyWebApp . Services ;
88using System . Collections . Generic ;
9+ using System . Linq ;
910using System . Threading . Tasks ;
1011using Xunit ;
1112
@@ -32,16 +33,16 @@ public async Task AddToPage_InvalidReturnsViewWithSelections()
3233 using var connection = tuple . conn ;
3334 var ctx = tuple . ctx ;
3435 var controller = tuple . controller ;
35- ctx . BlockTemplates . Add ( new BlockTemplate { Id = 1 , Name = "b" , Html = "x" } ) ;
36- ctx . Pages . Add ( new Page { Id = 1 , Slug = "home" , Title = "Home" , Layout = "single-column" } ) ;
37- ctx . Roles . Add ( new Role { Id = 1 , Name = "Admin" } ) ;
36+ var template = new BlockTemplate { Name = "b" , Html = "x" } ;
37+ ctx . BlockTemplates . Add ( template ) ;
3838 ctx . SaveChanges ( ) ;
3939
40- var result = await controller . AddToPage ( 1 , new List < int > { 1 } , "" , "Admin" ) ;
40+ var homeId = ctx . Pages . Single ( p => p . Slug == "home" ) . Id ;
41+ var result = await controller . AddToPage ( template . Id , new List < int > { homeId } , "" , "Admin" ) ;
4142 var view = Assert . IsType < ViewResult > ( result ) ;
4243 Assert . False ( controller . ModelState . IsValid ) ;
4344 var selected = Assert . IsType < List < int > > ( controller . ViewBag . SelectedPageIds ) ;
44- Assert . Contains ( 1 , selected ) ;
45+ Assert . Contains ( homeId , selected ) ;
4546 Assert . Equal ( "" , controller . ViewBag . SelectedZone as string ) ;
4647 Assert . Equal ( "Admin" , controller . ViewBag . SelectedRole as string ) ;
4748 }
@@ -53,17 +54,14 @@ public async Task Create_InvalidModelPreservesSelections()
5354 using var connection = tuple . conn ;
5455 var ctx = tuple . ctx ;
5556 var controller = tuple . controller ;
56- ctx . Pages . Add ( new Page { Id = 1 , Slug = "home" , Title = "Home" , Layout = "single-column" } ) ;
57- ctx . Roles . Add ( new Role { Id = 1 , Name = "Admin" } ) ;
58- ctx . SaveChanges ( ) ;
59-
57+ var homeId = ctx . Pages . Single ( p => p . Slug == "home" ) . Id ;
6058 var model = new BlockTemplate ( ) ;
6159 controller . ModelState . AddModelError ( "Name" , "required" ) ;
62- var result = await controller . Create ( model , new List < int > { 1 } , "main" , "Admin" ) ;
60+ var result = await controller . Create ( model , new List < int > { homeId } , "main" , "Admin" ) ;
6361 var view = Assert . IsType < ViewResult > ( result ) ;
6462 Assert . False ( controller . ModelState . IsValid ) ;
6563 var selected = Assert . IsType < List < int > > ( controller . ViewBag . SelectedPageIds ) ;
66- Assert . Contains ( 1 , selected ) ;
64+ Assert . Contains ( homeId , selected ) ;
6765 Assert . Equal ( "main" , controller . ViewBag . SelectedZone as string ) ;
6866 Assert . Equal ( "Admin" , controller . ViewBag . SelectedRole as string ) ;
6967 }
0 commit comments