public async Task Creates_employee(
            [Frozen, Greedy] EmployeeContext db,
            SaveEmployee request,
            SaveEmployeeHandler sut)
        {
            request.Value.Id = Guid.Empty;

            var success = await sut.Handle(request);

            success.Should().BeTrue();
            request.Value.Id.Should().NotBe(Guid.Empty);
            db.Employees.Find(request.Value.Id).Should().BeEquivalentTo(request.Value);
        }
        public async Task Updates_employee(
            [Frozen, Greedy] EmployeeContext db,
            Employee existingEmployee,
            SaveEmployee request,
            SaveEmployeeHandler sut)
        {
            await db.Employees.AddAsync(existingEmployee);

            await db.SaveChangesAsync();

            db.Entry(existingEmployee).State = EntityState.Detached;
            request.Value.Id = existingEmployee.Id;

            var success = await sut.Handle(request);

            success.Should().BeTrue();
            var updatedEmployee = db.Find <Employee>(existingEmployee.Id);

            updatedEmployee.Should().BeEquivalentTo(request.Value);
            updatedEmployee.Should().NotBeEquivalentTo(existingEmployee);
        }