Just about every time I set up a new `Context.Provider`, I end up accidentally specifying a `values` prop rather than `value`.  While it's a minor error, generally I build the container in which the provider resides and commit it to the code base before I ever use it.  It's only later when I go to use it that I realize I did it again.  Since the `Context.Provider` seems pretty much useless without a `value` prop specified, I'd love it if there was a prop error if it is missing... especially if another prop is defined on the `Context.Provider` instead.
ReactNoop.render(<App foo={2} bar={1} />);
        expect(Scheduler).toFlushAndYield(['Foo', 'Foo']);
        expect(ReactNoop.getChildren()).toEqual([
          span('Foo: 2'),
          span('Bar: 1'),
          span('Foo: 2'),
        ]);
        
        ReactNoop.render(<App foo={2} bar={2} />);
        expect(Scheduler).toFlushAndYield(['Bar']);
        expect(ReactNoop.getChildren()).toEqual([
          span('Foo: 2'),
          span('Bar: 2'),
          span('Foo: 2'),
        ]);
        
        ReactNoop.render(<App foo={3} bar={3} />);
        expect(Scheduler).toFlushAndYield(['Foo', 'Bar', 'Foo']);
        expect(ReactNoop.getChildren()).toEqual([
          span('Foo: 3'),
          span('Bar: 3'),
          span('Foo: 3'),
        ]);
      });
      it("does not re-render if there's an update in a child", () => {
        const Context = React.createContext(0);
        const Consumer = getConsumer(Context);
        let child;
        class Child extends React.Component {