public void TestGetGroupWall()
{
var owner = new User
{
UserName = "owner",
Age = 25,
City = "Bleaksburg",
Email = "[email protected]",
FirstName = "I.C.",
Gender = "M",
Height = 60,
LastName = "Poorcode",
State = "VA",
Weight = 130
};
owner.UserID = UserDAO.CreateNewUser(owner, "password");
List<string> tags = new List<string>();
tags.Add("new");
tags.Add("searchable");
tags.Add("hashtags");
Group testGroup1 = new Group("Test1", owner, "This is a Group", tags);
Message message1 = new Message("HI GUYS", "THIS IS AN AWESOME GROUP", owner, "March 16 2012", "12:34:25 PM");
testGroup1.Post(message1);
testGroup1.ID = GroupDAO.CreateNewGroup(testGroup1);
Group testGroup2 = new Group("Test2", owner, "This is another Group", tags);
Message message2 = new Message("I HATE YOU GUYS", "THIS IS AN AWFUL GROUP", owner, "March 16 2012", "12:34:25 PM");
Message message3 = new Message("JUST KIDDING", "I LOVE YOU GUYS", owner, "March 16 2012", "12:34:25 PM");
testGroup2.Post(message2);
testGroup2.Post(message3);
testGroup2.ID = GroupDAO.CreateNewGroup(testGroup2);
Assert.AreNotEqual(testGroup1.ID, 0);
Assert.AreNotEqual(testGroup2.ID, 0);
GroupDAO.UpdateGroup(testGroup1);
GroupDAO.UpdateGroup(testGroup2);
Group dbGroup1 = GroupDAO.GetGroupFromGroupId(testGroup1.ID);
Group dbGroup2 = GroupDAO.GetGroupFromGroupId(testGroup2.ID);
Assert.AreEqual(dbGroup1.Wall.Messages.Count, 1);
Assert.AreEqual(dbGroup1.Wall.Messages.First().Title, "HI GUYS");
Assert.AreEqual(dbGroup1.Wall.Messages.First().Text, "THIS IS AN AWESOME GROUP");
Assert.AreEqual(dbGroup1.Wall.Messages.First().Poster.UserName, "owner");
Assert.AreEqual(dbGroup2.Wall.Messages.Count, 2);
Assert.AreEqual(dbGroup2.Wall.Messages.First().Title, "I HATE YOU GUYS");
Assert.AreEqual(dbGroup2.Wall.Messages.First().Text, "THIS IS AN AWFUL GROUP");
Assert.AreEqual(dbGroup2.Wall.Messages.First().Poster.UserName, "owner");
Assert.AreEqual(dbGroup2.Wall.Messages.Last().Title, "JUST KIDDING");
Assert.AreEqual(dbGroup2.Wall.Messages.Last().Text, "I LOVE YOU GUYS");
Assert.AreEqual(dbGroup2.Wall.Messages.Last().Poster.UserName, "owner");
}