Fix permission-related ViewChannel tests
This commit is contained in:
@@ -68,6 +68,7 @@ namespace Discord
|
||||
ulong voiceChannel = (ulong)(
|
||||
ChannelPermission.CreateInstantInvite
|
||||
| ChannelPermission.ManageChannels
|
||||
| ChannelPermission.ViewChannel
|
||||
| ChannelPermission.Connect
|
||||
| ChannelPermission.Speak
|
||||
| ChannelPermission.MuteMembers
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Xunit;
|
||||
|
||||
@@ -38,9 +39,13 @@ namespace Discord
|
||||
copy = GuildPermissions.Webhook.Modify();
|
||||
Assert.Equal(GuildPermissions.Webhook.RawValue, copy.RawValue);
|
||||
|
||||
// Get all distinct values (ReadMessages = ViewChannel)
|
||||
var enumValues = (Enum.GetValues(typeof(GuildPermission)) as GuildPermission[])
|
||||
.Distinct()
|
||||
.ToArray();
|
||||
// test GuildPermissions.All
|
||||
ulong sumOfAllGuildPermissions = 0;
|
||||
foreach(var v in Enum.GetValues(typeof(GuildPermission)))
|
||||
foreach(var v in enumValues)
|
||||
{
|
||||
sumOfAllGuildPermissions |= (ulong)v;
|
||||
}
|
||||
@@ -51,7 +56,7 @@ namespace Discord
|
||||
|
||||
// assert that GuildPermissions.All contains the same number of permissions as the
|
||||
// GuildPermissions enum
|
||||
Assert.Equal(Enum.GetValues(typeof(GuildPermission)).Length, GuildPermissions.All.ToList().Count);
|
||||
Assert.Equal(enumValues.Length, GuildPermissions.All.ToList().Count);
|
||||
|
||||
// assert that webhook has the same raw value
|
||||
ulong webHookPermissions = (ulong)(
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Threading.Tasks;
|
||||
using Xunit;
|
||||
|
||||
@@ -21,6 +22,7 @@ namespace Discord
|
||||
/// <param name="expected"></param>
|
||||
private void TestHelper(ulong rawValue, ulong flagValue, bool expected)
|
||||
{
|
||||
Debug.Print($"Expecting {expected} for {rawValue} w/ {flagValue}");
|
||||
Assert.Equal(expected, Permissions.GetValue(rawValue, flagValue));
|
||||
|
||||
// check that toggling the bit works
|
||||
@@ -239,7 +241,7 @@ namespace Discord
|
||||
TestHelper(value, ChannelPermission.CreateInstantInvite, true);
|
||||
TestHelper(value, ChannelPermission.ManageChannels, true);
|
||||
TestHelper(value, ChannelPermission.AddReactions, false);
|
||||
TestHelper(value, ChannelPermission.ViewChannel, false);
|
||||
TestHelper(value, ChannelPermission.ViewChannel, true);
|
||||
TestHelper(value, ChannelPermission.SendMessages, false);
|
||||
TestHelper(value, ChannelPermission.SendTTSMessages, false);
|
||||
TestHelper(value, ChannelPermission.ManageMessages, false);
|
||||
@@ -659,7 +661,7 @@ namespace Discord
|
||||
TestHelper(value, ChannelPermission.CreateInstantInvite, PermValue.Allow);
|
||||
TestHelper(value, ChannelPermission.ManageChannels, PermValue.Allow);
|
||||
TestHelper(value, ChannelPermission.AddReactions, PermValue.Inherit);
|
||||
TestHelper(value, ChannelPermission.ViewChannel, PermValue.Inherit);
|
||||
TestHelper(value, ChannelPermission.ViewChannel, PermValue.Allow);
|
||||
TestHelper(value, ChannelPermission.SendMessages, PermValue.Inherit);
|
||||
TestHelper(value, ChannelPermission.SendTTSMessages, PermValue.Inherit);
|
||||
TestHelper(value, ChannelPermission.ManageMessages, PermValue.Inherit);
|
||||
@@ -682,7 +684,7 @@ namespace Discord
|
||||
TestHelper(value, ChannelPermission.CreateInstantInvite, PermValue.Deny);
|
||||
TestHelper(value, ChannelPermission.ManageChannels, PermValue.Deny);
|
||||
TestHelper(value, ChannelPermission.AddReactions, PermValue.Inherit);
|
||||
TestHelper(value, ChannelPermission.ViewChannel, PermValue.Inherit);
|
||||
TestHelper(value, ChannelPermission.ViewChannel, PermValue.Deny);
|
||||
TestHelper(value, ChannelPermission.SendMessages, PermValue.Inherit);
|
||||
TestHelper(value, ChannelPermission.SendTTSMessages, PermValue.Inherit);
|
||||
TestHelper(value, ChannelPermission.ManageMessages, PermValue.Inherit);
|
||||
|
||||
Reference in New Issue
Block a user