master
 1import 'react-native';
 2import React, { Component } from 'react';
 3import Router from '../router';
 4import renderer from 'react-test-renderer';
 5
 6describe("Router", () => {
 7  class MyComponent extends Component { }
 8
 9  let subject = null;
10  beforeEach(() => {
11    eventAggregator = {}
12    subject = new Router({ eventAggregator });
13  });
14
15  describe("#routeTo", () => {
16    let params = { personId: 1 };
17    let route = { component: MyComponent, params: params };
18    let navigator = {};
19
20    it("renders a new component", () => {
21      result = subject.routeTo(route, navigator);
22      expect(result.type).toEqual(MyComponent);
23    });
24
25    it ("attaches the navigator", () => {
26      result = subject.routeTo(route, navigator);
27      expect(result.props.navigator).toEqual(navigator);
28    });
29
30    it ("attaches each of the router dependencies", function() {
31      result = subject.routeTo(route, navigator);
32      expect(result.props.eventAggregator).toEqual(eventAggregator);
33    });
34
35    it ("attaches each of the route params", function() {
36      result = subject.routeTo(route, navigator);
37      expect(result.props.personId).toEqual(params.personId);
38    });
39  });
40});