public void MapPoemToPoemInfodata() { Poem poem = new ClassicalPoem() { Id = 1, Title = "This is a sample title for poem", Description = "This is a sample description for poem", CurrentGm = 1393021216, CurrentGameMasterUserProfile = new UserProfile() { Id = 1393021216, Name = "Sergiu Ciumac" }, StartedAt = DateTime.Now }; var mapResult = AutoMapper.Mapper.Map<Poem, PoemInfoData>(poem); Assert.AreEqual(poem.Title, mapResult.Title); Assert.AreEqual(poem.Description, mapResult.Description); Assert.AreEqual(poem.StartedAt.ToFacebookRepresentation(), mapResult.LastUpdate); Assert.AreEqual(poem.StartedAt.TimeAgo(), mapResult.LastUpdateAgo); Assert.AreEqual("/poem/1", mapResult.PoemLink); Assert.AreEqual(poem.CurrentGm, mapResult.GameMasterId); Assert.AreEqual(poem.CurrentGameMasterUserProfile.Name, mapResult.GameMasterName); Assert.AreEqual(poem.StartedAt.ToFacebookRepresentation(), mapResult.StartedAt); }
public void CreateNewPoemVerseSuccessfulWithGameMasterChanged() { const int PoemId = 123456; const long AuthorProfileId = 123; const long VerseId = 1234567; Poem poem = new ClassicalPoem { Id = PoemId, Players = new Collection<Player>( new[] { new Player { UserProfileId = AuthorProfileId }, new Player { UserProfileId = 1 } }), CurrentGm = AuthorProfileId, CurrentGameMasterUserProfile = new UserProfile { Id = AuthorProfileId } }; poemService.Setup(service => service.GetPoemById(PoemId)).Returns(poem); Verse verse = new Verse { Id = VerseId, PoemId = PoemId, VerseType = new CandidateVerseType(), AuthorProfileId = AuthorProfileId + 1, Text = "This is a verse to be updated" }; verseService.Setup(service => service.GetById(VerseId)).Returns(verse); verseService.Setup(service => service.UpdateVerse(verse, It.IsAny<PoemVerseType>())); verseService.Setup(service => service.GetVerseType<PoemVerseType>()).Returns(new PoemVerseType()); poemService.Setup(service => service.Update(poem)).Callback( (Poem updated) => Assert.AreEqual(AuthorProfileId + 1, updated.CurrentGm)); signalizerFactory.Setup(factory => factory.GetSignal<PoemVerseAddedSignal<Raw>>()).Returns( new PoemVerseAddedSignal<Raw>(logger.Object)); signalizerFactory.Setup(factory => factory.GetSignal<PoemGameMasterChangedSignal<Raw>>()).Returns( new PoemGameMasterChangedSignal<Raw>(logger.Object)); VerseEngineeringUser requestUser = new VerseEngineeringUser( AuthorProfileId, "TestUser", "TestFacebookAccessToken"); VerseData verseData = poemVersesController.PostVerseForPoem(new AddVerseModel { Id = VerseId, PoemId = PoemId }, requestUser); Assert.AreEqual(VerseId, verseData.Id); Assert.AreEqual("This is a verse to be updated", verseData.Text); Assert.AreEqual(PoemId, verseData.PoemId); }