private async Task <List <Channel> > AddChannelsAsync(int count = 5) { List <Channel> channels = new List <Channel>(); for (int i = 0; i < count; i++) { var channelCreator = await _context.Users.LastOrDefaultAsync(); channels.Add(new Channel { About = RandomExtensions.NextString(20), Deleted = false, ChannelName = "Channel " + i, Tag = RandomExtensions.NextString(10).ToUpper(), ChannelUsers = _context.Users.ToList().Select(user => new ChannelUser { UserId = user.Id, Banned = false, Deleted = false, SubscribedTime = DateTime.UtcNow.ToUnixTime(), ChannelUserRole = user.Id == channelCreator.Id ? ChannelUserRole.Creator : ChannelUserRole.Subscriber }).ToList(), NodesId = RandomExtensions.GetRandomInt64Sequence(10, 0) }); } await _context.Channels.AddRangeAsync(channels); await _context.SaveChangesAsync(); return(channels); }
public async Task CreateChannelWithSubs() { var users = fillTestDbHelper.Users.Skip(1); var creator = fillTestDbHelper.Users.FirstOrDefault(); var expectedChannel = new ChannelVm { About = RandomExtensions.NextString(10), ChannelName = "Created channel", Tag = "TAGTAGTAG", NodesId = RandomExtensions.GetRandomInt64Sequence(3, 0).ToList(), ChannelUsers = users.Select(user => new ChannelUserVm { UserId = user.Id, ChannelUserRole = ChannelUserRole.Subscriber }).ToList() }; var actualChannel = await createChannelsService.CreateChannelAsync(expectedChannel, creator.Id, expectedChannel.ChannelUsers); Assert.True(expectedChannel.ChannelUsers.Count() + 1 == actualChannel.ChannelUsers.Count()); }