public void CommentDeleteCommandHandler_Handle()
        {
            var observation = FakeObjects.TestObservationWithId("1");
            var user = FakeObjects.TestUserWithId();

            Comment deleted = null;

            observation.AddComment(FakeValues.Message, user, FakeValues.CreatedDateTime);

            using (var session = _store.OpenSession())
            {
                session.Store(observation);
                session.Store(user);
                session.SaveChanges();
            }

            using (var session = _store.OpenSession())
            {
                var command = new CommentDeleteCommand()
                {
                    ContributionId = observation.Id,
                    Id = observation.Comments.ToList()[0].Id
                };

                var commandHandler = new CommentDeleteCommandHandler(session);

                commandHandler.Handle(command);

                session.SaveChanges();

                deleted = session.Load<Observation>(observation.Id).Comments.FirstOrDefault();
            }

            Assert.IsNull(deleted);
        }
        public void CommentDeleteCommandHandler_Handle()
        {
            var observation = FakeObjects.TestObservationWithId("1");
            var user        = FakeObjects.TestUserWithId();

            Comment deleted = null;

            observation.AddComment(FakeValues.Message, user, FakeValues.CreatedDateTime);

            using (var session = _store.OpenSession())
            {
                session.Store(observation);
                session.Store(user);
                session.SaveChanges();
            }

            using (var session = _store.OpenSession())
            {
                var command = new CommentDeleteCommand()
                {
                    ContributionId = observation.Id,
                    Id             = observation.Comments.ToList()[0].Id
                };

                var commandHandler = new CommentDeleteCommandHandler(session);

                commandHandler.Handle(command);

                session.SaveChanges();

                deleted = session.Load <Observation>(observation.Id).Comments.FirstOrDefault();
            }

            Assert.IsNull(deleted);
        }