anchor.diff:      dependencies[pd.path] = pd;
     });
   
  -  return new MockProject(
  +  return new TestProject(
         name, new PubSpec(name: name, dependencies: dependencies));
   }
   
  
positive.code:   }
  }
  
  typedef TestProcessInvocation TestProcessInvocationFactory(
      [Iterable<Project> projects]);
  
  class TestProcessInvocation {
    final Project project;
  
negative.code:         asProvidedBy: () => [],
          expectTheseInvocations: []);
  
      {
        TestProject project1;
        createProjects() {
          project1 = aProject('project1');
          return [project1];
        }
        testCase(
            thatWhen: 'a single project has no dependencies',
            asProvidedBy: createProjects,
            expectTheseInvocations: [
          () => new TestProcessInvocation(project1, const [])
        ]);
      }
  
      {
        final project1 = aProject('project1');
        final project2 = aProject2('project2', dependencies: [project1]);
        testCase(
            thatWhen: 'blah project has no dependencies',
            asProvidedBy: () => [project1, project2],
            expectTheseInvocations: [
          () => new TestProcessInvocation(project1, []),
          () => new TestProcessInvocation(project2, [project1])
        ]);
      }
  
  //    group('for one project with no dependencies', () {
  //      MockProject project1;
  