public static Queue <Mutation> Mutations(this IJobMutator jobMutator, Job job)
        {
            if (jobMutator == null)
            {
                throw new ArgumentNullException("JobMutator");
            }
            if (job == null)
            {
                throw new ArgumentNullException("job");
            }

            var calls = from call in jobMutator.ReceivedCalls()
                        let arguments = call.GetArguments()
                                        where call.GetMethodInfo().Name == "Mutate" && ((Job)arguments[0]).Id == job.Id
                                        select new Mutation
            {
                JobStatus     = (JobStatus?)arguments[1],
                DispatchCount = (int?)arguments[2],
                RetryOn       = (DateTime?)arguments[3],
                Continuation  = (Continuation)arguments[4],
                Suspended     = (bool?)arguments[5]
            };

            return(new Queue <Mutation>(calls));
        }