public async Task ShouldHandleRemoveNoteCommandRequest()
        {
            var mediator = new Mock <IMediator>();

            mediator.Setup(m => m.Publish(It.IsAny <NoteRemovedDomainEvent>(), It.IsAny <CancellationToken>()))
            .Verifiable();

            var options = new DbContextOptionsBuilder <AppDbContext>()
                          .UseInMemoryDatabase(databaseName: "ShouldHandleRemoveNoteCommandRequest")
                          .Options;

            using (var context = new AppDbContext(options, mediator.Object))
            {
                context.Notes.Add(new Note()
                {
                    NoteId = 1,
                    Title  = "Quinntyne",
                });

                context.SaveChanges();

                var handler = new RemoveNoteCommand.Handler(context);

                await handler.Handle(new RemoveNoteCommand.Request()
                {
                    NoteId = 1
                }, default(CancellationToken));

                Assert.Equal(0, context.Notes.Count());
            }
        }
        public async Task ShouldHandleRemoveNoteCommandRequest()
        {
            var options = new DbContextOptionsBuilder <AppDbContext>()
                          .UseInMemoryDatabase(databaseName: "ShouldHandleRemoveNoteCommandRequest")
                          .Options;

            using (var context = new AppDbContext(options))
            {
                context.Notes.Add(new Note()
                {
                    NoteId = 1,
                    Title  = "Quinntyne",
                });

                context.SaveChanges();

                var handler = new RemoveNoteCommand.Handler(context);

                await handler.Handle(new RemoveNoteCommand.Request()
                {
                    NoteId = 1
                }, default(CancellationToken));

                Assert.Equal(0, context.Notes.Count());
            }
        }