public async Task PrivateBoardJoinFails() { user = Auth.CurrentUser = await GetUser("[email protected]", null); BoardExtensions.Board = await BoardExtensions.BoardLookup(services, "benefact"); var rpc = new BoardsInterface(services); var error = await Assert.ThrowsExceptionAsync <HTTPError>( () => rpc.Join(null)); }
public async Task PrivateBoardShowsResult() { user = Auth.CurrentUser = await GetUser("[email protected]", null); BoardExtensions.Board = await BoardExtensions.BoardLookup(services, "benefact"); var rpc = new BoardsInterface(services); var result = await rpc.Get(null); Assert.AreEqual("benefact", result.UrlName); Assert.AreEqual(null, result.UserPrivilege); Assert.AreEqual(Privilege.None, result.DefaultPrivilege); Assert.IsNotNull(result.Description); }
public async Task PublicBoardJoinSucceeds() { user = Auth.CurrentUser = await GetUser("[email protected]", null); BoardExtensions.Board = await services.DoWithDB(async db => { var board = await db.Boards.Where(b => b.UrlName == "benefact").FirstAsync(); board.DefaultPrivilege = Privilege.Read; return(board); }); var rpc = new BoardsInterface(services); var role = await rpc.Join(null); user = Auth.CurrentUser = await Auth.GetUser(services, "[email protected]"); Assert.AreEqual(Privilege.Read, role.Privilege); Assert.AreEqual(Privilege.Read, user.Roles.First(r => r.BoardId == role.BoardId).Privilege); }
public async Task CreateInviteReturnsNew() { user = Auth.CurrentUser = await GetUser("[email protected]", Privilege.Admin); BoardExtensions.Board = await BoardExtensions.BoardLookup(services, "benefact"); var rpc = new BoardsInterface(services); var firstResult = await rpc.Invite(new CreateInviteRequest() { Privilege = (Privilege)7 }); Assert.IsNotNull(firstResult); var secondResult = await rpc.Invite(new CreateInviteRequest() { Privilege = (Privilege)3 }); Assert.AreNotEqual(firstResult, secondResult); }
public async Task PrivateBoardJoinSucceeds() { user = Auth.CurrentUser = await GetUser("*****@*****.**", Privilege.Admin); BoardExtensions.Board = await BoardExtensions.BoardLookup(services, "benefact"); var rpc = new BoardsInterface(services); var firstResult = await rpc.Invite(new CreateInviteRequest() { Privilege = (Privilege)7 }); Assert.IsNotNull(firstResult); user = Auth.CurrentUser = await GetUser("[email protected]", null); var joinResult = await rpc.Join(new JoinRequest() { Key = firstResult }); Assert.AreEqual(7, (int)joinResult.Privilege); }
public async Task CardStateUpdates() { user = Auth.CurrentUser = await GetUser("*****@*****.**", Privilege.Admin); BoardExtensions.Board = await BoardExtensions.BoardLookup(services, "benefact"); Auth.CurrentRole = user.Roles.FirstOrDefault(r => r.BoardId == BoardExtensions.Board?.Id); var query = new CardQuery() { Groups = new Dictionary <string, List <CardQueryTerm> >() { { "Done", new List <CardQueryTerm>() { new CardQueryTerm() { State = CardState.InProgress } } } } }; var boards = new BoardsInterface(services); var response = await boards.Get(query); var cards = response.Cards.First().Value; var doneColumn = response.Columns.First(c => c.State == CardState.Complete); Assert.IsTrue(cards.Any()); var rpc = new CardsInterface(services); await rpc.Update(new CardData() { ColumnId = doneColumn.Id, Id = cards.First().Id, }); var response2 = await boards.Get(query); Assert.IsTrue(response2.Cards.Values.First().Count < cards.Count); }