//method to add yourself to/join a group public void AddMember(string currentUser, int groupId) { UserGroup dbUserGroup = new UserGroup() { GroupId = _groupRepo.GetGroupById(groupId).First().Id, UserId = _uRepo.GetUser(currentUser).First().Id }; _groupRepo.AddMember(dbUserGroup); }
public void RemoveMember_AddMember() { // In-memory database only exists while the connection is open var connection = new SqliteConnection("DataSource=:memory:"); connection.Open(); try { var options = new DbContextOptionsBuilder <ScrumContext>() .UseSqlite(connection) .Options; // Create the schema in the database using (var context = new ScrumContext(options)) { context.Database.EnsureCreated(); } // Run the test against one instance of the context using (var context = new ScrumContext(options)) { var service = new GroupRepository(context); var user = new User { username = "******" }; GroupMember groupMember = new GroupMember { user = user, role = "Developer", groupID = 1 }; var added = service.AddMember(groupMember); var existingItem = context.GroupMembers.Any(x => x.Username.Equals("Andrew")); Assert.AreEqual(true, existingItem); bool removed = service.RemoveMember(groupMember); bool removedItem = context.GroupMembers.Any(x => x.Username.Equals("Andrew")); Assert.AreEqual(false, removedItem); Assert.AreEqual(true, removed); } } finally { connection.Close(); } }
public void ChangeRole() { // In-memory database only exists while the connection is open var connection = new SqliteConnection("DataSource=:memory:"); connection.Open(); try { var options = new DbContextOptionsBuilder <ScrumContext>() .UseSqlite(connection) .Options; // Create the schema in the database using (var context = new ScrumContext(options)) { context.Database.EnsureCreated(); } // Run the test against one instance of the context using (var context = new ScrumContext(options)) { var service = new GroupRepository(context); User user = new User(); user.username = "******"; GroupMember groupMember = new GroupMember(); groupMember.user = user; groupMember.role = "Product Owner"; groupMember.groupID = 1; service.AddMember(groupMember); Assert.AreEqual("Product Owner", context.GroupMembers.Find("dave").GroupRole); groupMember.role = "Scrum Master"; service.ChangeRole(groupMember); Assert.AreEqual("Scrum Master", context.GroupMembers.Find("dave").GroupRole); } } finally { connection.Close(); } }
public void LoadGroup() { // In-memory database only exists while the connection is open var connection = new SqliteConnection("DataSource=:memory:"); connection.Open(); try { var options = new DbContextOptionsBuilder <ScrumContext>() .UseSqlite(connection) .Options; // Create the schema in the database using (var context = new ScrumContext(options)) { context.Database.EnsureCreated(); } // Run the test against one instance of the context using (var context = new ScrumContext(options)) { var service = new GroupRepository(context); GroupMember groupMember = new GroupMember(); groupMember.user.username = "******"; groupMember.groupID = 1; groupMember.role = "Scrum Master"; var added = service.AddMember(groupMember); var group = service.LoadGroup(1); Assert.AreEqual(true, added); Assert.AreEqual(1, context.GroupMembers.Count()); // Assert.AreEqual(group.GetGroupMembers()[0].user.username, context.GroupMembers.Find("jaime").Username); } } finally { connection.Close(); } }
public bool AddMember(GroupMember groupMember) { return(_groupRepository.AddMember(groupMember)); }