@@ -988,6 +988,61 @@ public async Task Repository_T_RegisterGlobalContentType_TypeAndDifferentName()
988988 Assert . AreEqual ( typeof ( MyContent ) , contentType ) ;
989989 }
990990
991+ [ TestMethod ]
992+ public async Task Repository_T_RegisterGlobalContentType_BuiltIn_User ( )
993+ {
994+ // ALIGN
995+ var restCaller = CreateRestCallerFor ( @"
996+ {
997+ ""d"": {
998+ ""Id"": 1,
999+ ""Path"": ""/Root/IMS/BuiltIn/Admin"",
1000+ ""Name"": ""Admin"",
1001+ ""Type"": ""User"",
1002+ ""LoginName"": ""admin"",
1003+ ""Email"": ""admin@example.com"",
1004+ ""BirthDate"": ""2000-02-03T00:00:00Z"",
1005+ ""Avatar"": {
1006+ ""Url"": ""/Root/Content/images/avatar.png""
1007+ },
1008+ ""ImageRef"": {
1009+ ""Id"": 123,
1010+ ""Path"": ""/Root/Content/images/avatar.png"",
1011+ ""Type"": ""Image"",
1012+ ""Name"": ""avatar.png"",
1013+ ""DateTaken"": ""2010-10-01T00:00:00Z"",
1014+ ""Width"": 456,
1015+ ""Height"": 789
1016+ }
1017+ }
1018+ }" ) ;
1019+
1020+ var repositories = GetRepositoryCollection ( services =>
1021+ {
1022+ services . AddSingleton ( restCaller ) ;
1023+ } ) ;
1024+
1025+ var repository = await repositories . GetRepositoryAsync ( FakeServer , CancellationToken . None )
1026+ . ConfigureAwait ( false ) ;
1027+
1028+ // ACT
1029+ var user = await repository . LoadContentAsync < User > ( "/testcontentpath" , CancellationToken . None ) ;
1030+
1031+ // ASSERT
1032+ Assert . IsNotNull ( user ) ;
1033+ Assert . AreEqual ( typeof ( User ) , user . GetType ( ) ) ;
1034+ Assert . AreEqual ( "Admin" , user . Name ) ;
1035+ Assert . AreEqual ( "admin" , user . LoginName ) ;
1036+ Assert . AreEqual ( "admin@example.com" , user . Email ) ;
1037+ Assert . AreEqual ( new DateTime ( 2000 , 02 , 03 , 0 , 0 , 0 , DateTimeKind . Utc ) , user . BirthDate ) ;
1038+
1039+ Assert . AreEqual ( typeof ( Image ) , user . ImageRef . GetType ( ) ) ;
1040+ Assert . AreEqual ( 123 , user . ImageRef . Id ) ;
1041+ Assert . AreEqual ( 456 , user . ImageRef . Width ) ;
1042+ Assert . AreEqual ( 789 , user . ImageRef . Height ) ;
1043+ Assert . AreEqual ( "/Root/Content/images/avatar.png" , user . Avatar . Url ) ;
1044+ }
1045+
9911046 [ TestMethod ]
9921047 public async Task Repository_T_RegisterContentTypes ( )
9931048 {
@@ -1014,7 +1069,7 @@ public async Task Repository_T_RegisterContentTypes()
10141069 var repositoryAcc = new ObjectAccessor ( repository ) ;
10151070 var services = ( IServiceProvider ) repositoryAcc . GetField ( "_services" ) ;
10161071 Assert . AreEqual ( ExampleUrl , repository . Server . Url ) ;
1017- Assert . AreEqual ( 0 , repository . GlobalContentTypes . ContentTypes . Count ) ;
1072+ Assert . AreEqual ( 3 , repository . GlobalContentTypes . ContentTypes . Count ) ;
10181073 var contentTypeRegistrations = repository . Server . RegisteredContentTypes . ContentTypes
10191074 . OrderBy ( x => x . Value . Name )
10201075 . ToArray ( ) ;
@@ -1067,7 +1122,7 @@ public async Task Repository_T_RegisterContentTypes_DifferentTypeSameName()
10671122 // ASSERT
10681123 // check repo1
10691124 Assert . AreEqual ( ExampleUrl , repository1 . Server . Url ) ;
1070- Assert . AreEqual ( 0 , repository1 . GlobalContentTypes . ContentTypes . Count ) ;
1125+ Assert . AreEqual ( 3 , repository1 . GlobalContentTypes . ContentTypes . Count ) ;
10711126 var contentTypeRegistrations1 = repository1 . Server . RegisteredContentTypes . ContentTypes
10721127 . OrderBy ( x => x . Value . Name )
10731128 . ToArray ( ) ;
@@ -1077,7 +1132,7 @@ public async Task Repository_T_RegisterContentTypes_DifferentTypeSameName()
10771132
10781133 // check repo2
10791134 Assert . AreEqual ( exampleUrl2 , repository2 . Server . Url ) ;
1080- Assert . AreEqual ( 0 , repository2 . GlobalContentTypes . ContentTypes . Count ) ;
1135+ Assert . AreEqual ( 3 , repository2 . GlobalContentTypes . ContentTypes . Count ) ;
10811136 var contentTypeRegistrations2 = repository2 . Server . RegisteredContentTypes . ContentTypes
10821137 . OrderBy ( x => x . Value . Name )
10831138 . ToArray ( ) ;
0 commit comments