public void Test_CreateMessage(string userName, string permissionsList, string entities, string expectedMessage) { Assert.That( PlatformSecurityException.CreateMessage( userName, permissionsList .Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries) .Select(pa => new EntityRef(pa)), entities .Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries) .Select(pa => new EntityRef(pa))), Is.StringMatching(expectedMessage)); }
public void Test_Ctor() { PlatformSecurityException platformSecurityException; string userName; EntityRef[] permissions; EntityRef[] entities; userName = "******"; permissions = new [] { new EntityRef("read"), new EntityRef("modify"), new EntityRef("create") }; entities = new [] { new EntityRef("folder"), new EntityRef("report") }; platformSecurityException = new PlatformSecurityException(userName, permissions, entities); Assert.That(platformSecurityException, Has.Property("UserName").EqualTo(userName)); Assert.That(platformSecurityException, Has.Property("PermissionAliases").EqualTo(permissions.Select(x => x.Alias))); Assert.That(platformSecurityException, Has.Property("EntityIds").EqualTo(entities.Select(x => x.Id))); Assert.That(platformSecurityException, Has.Property("Message").StringMatching("foo does not have view, edit access to Folder \\(\\d+\\), Report \\(\\d+\\). foo cannot create Type \\(\\d+\\) objects. ")); }
public void Test_Serialization() { PlatformSecurityException platformSecurityException; string userName; EntityRef[] permissions; EntityRef[] entities; PlatformSecurityException deserializedPlatformSecurityException; userName = "******"; permissions = new[] { new EntityRef("core:read"), new EntityRef("core:modify") }; entities = new[] { new EntityRef(3), new EntityRef(4) }; platformSecurityException = new PlatformSecurityException(userName, permissions, entities); using (MemoryStream memoryStream = new MemoryStream()) { BinaryFormatter binaryFormatter = new BinaryFormatter(); binaryFormatter.Serialize(memoryStream, platformSecurityException); memoryStream.Seek(0, SeekOrigin.Begin); deserializedPlatformSecurityException = (PlatformSecurityException)binaryFormatter.Deserialize(memoryStream); } Assert.That(platformSecurityException, Is.EqualTo(deserializedPlatformSecurityException)); }
public void Test_CreateMessage_Nulls(string userName, IEnumerable <EntityRef> permissions, IEnumerable <EntityRef> entities) { Assert.That( PlatformSecurityException.CreateMessage(null, null, null), Is.EqualTo("No permissions requested")); }