Skip to content

Commit

Permalink
Fix innerText is undefined in FireFox
Browse files Browse the repository at this point in the history
  • Loading branch information
simonguo committed Aug 25, 2017
1 parent 7347386 commit d0d75b6
Show file tree
Hide file tree
Showing 24 changed files with 75 additions and 50 deletions.
20 changes: 11 additions & 9 deletions test/ContentSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,25 @@ import { findDOMNode } from 'react-dom';
import ReactTestUtils from 'react-dom/test-utils';

import Content from '../src/Content';
import innerText from './innerText';

describe('Content', () => {

it('Should render a Content', () => {
let title = 'Test';
let instance = ReactTestUtils.renderIntoDocument(
const title = 'Test';
const instance = ReactTestUtils.renderIntoDocument(
<Content>{title}</Content>
);

assert.equal(findDOMNode(instance).className, 'content-wrapper');
assert.equal(findDOMNode(instance).children[0].className, 'content');
assert.equal(findDOMNode(instance).innerText, title);
const instanceDOM = findDOMNode(instance);
assert.equal(instanceDOM.className, 'content-wrapper');
assert.equal(instanceDOM.children[0].className, 'content');
assert.equal(innerText(instanceDOM), title);
});

it('Should render a Page Content', () => {
let title = 'Test';
let instance = ReactTestUtils.renderIntoDocument(
const title = 'Test';
const instance = ReactTestUtils.renderIntoDocument(
<Content page>{title}</Content>
);
assert.equal(findDOMNode(instance).className, 'page-content-wrapper');
Expand All @@ -28,7 +30,7 @@ describe('Content', () => {


it('Should have a custom className', () => {
let instance = ReactTestUtils.renderIntoDocument(
const instance = ReactTestUtils.renderIntoDocument(
<Content className="custom" />
);
assert.ok(findDOMNode(instance).className.match(/\bcustom\b/));
Expand All @@ -37,7 +39,7 @@ describe('Content', () => {

it('Should have a custom style', () => {
const fontSize = '12px';
let instance = ReactTestUtils.renderIntoDocument(
const instance = ReactTestUtils.renderIntoDocument(
<Content style={{ fontSize }} />
);
assert.equal(findDOMNode(instance).style.fontSize, fontSize);
Expand Down
5 changes: 3 additions & 2 deletions test/DropdownMenuItemSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import DropdownMenuItem from '../src/DropdownMenuItem';
import innerText from './innerText';

describe('DropdownMenuItem', () => {

Expand All @@ -13,7 +14,7 @@ describe('DropdownMenuItem', () => {
<DropdownMenuItem>{title}</DropdownMenuItem>
);
assert.equal(findDOMNode(instance).tagName, 'LI');
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);

});

Expand All @@ -23,7 +24,7 @@ describe('DropdownMenuItem', () => {
<DropdownMenuItem componentClass="button">{title}</DropdownMenuItem>
);
assert.equal(findDOMNode(instance).children[0].tagName, 'BUTTON');
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);

});

Expand Down
10 changes: 5 additions & 5 deletions test/DropdownSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ import React from 'react';
import { findDOMNode } from 'react-dom';
import ReactTestUtils from 'react-dom/test-utils';


import Dropdown from '../src/Dropdown';
import innerText from './innerText';

describe('Dropdown', () => {

Expand Down Expand Up @@ -57,7 +57,7 @@ describe('Dropdown', () => {
<Dropdown.Item eventKey={2}>2</Dropdown.Item>
</Dropdown>
);
assert.equal(findDOMNode(instance).querySelector('button').innerText, 'abc');
assert.equal(innerText(findDOMNode(instance).querySelector('button')), 'abc');
});

it('Should have a title when set activeKey', () => {
Expand All @@ -67,7 +67,7 @@ describe('Dropdown', () => {
<Dropdown.Item eventKey={2}>2</Dropdown.Item>
</Dropdown>
);
assert.equal(findDOMNode(instance).querySelector('button').innerText, 2);
assert.equal(innerText(findDOMNode(instance).querySelector('button')), 2);
});

it('Should have a title when set object activeKey', () => {
Expand All @@ -77,7 +77,7 @@ describe('Dropdown', () => {
<Dropdown.Item eventKey={{ key: 2, value: 2 }}>2</Dropdown.Item>
</Dropdown>
);
assert.equal(findDOMNode(instance).querySelector('button').innerText, 2);
assert.equal(innerText(findDOMNode(instance).querySelector('button')), 2);
});

it('Should be shown at both ends', () => {
Expand Down Expand Up @@ -108,7 +108,7 @@ describe('Dropdown', () => {
let doneOp = (eventKey) => {
if (eventKey === 2) {
setTimeout(() => {
if (findDOMNode(instance).querySelector('button').innerText === '2') {
if (innerText(findDOMNode(instance).querySelector('button')) === '2') {
done();
}
}, 200);
Expand Down
5 changes: 3 additions & 2 deletions test/DropdownToggleSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import DropdownToggle from '../src/DropdownToggle';
import innerText from './innerText';

describe('DropdownToggle', () => {

Expand All @@ -16,7 +17,7 @@ describe('DropdownToggle', () => {
assert.ok(findDOMNode(instance).className.match(/\bdropdown-toggle\b/));
assert.ok(findDOMNode(instance).querySelector('.caret'));
assert.equal(findDOMNode(instance).tagName, 'BUTTON');
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);


});
Expand All @@ -27,7 +28,7 @@ describe('DropdownToggle', () => {
<DropdownToggle title={title} />
);

assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});

it('Should not render caret', () => {
Expand Down
3 changes: 2 additions & 1 deletion test/HeaderSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import Header from '../src/Header';
import innerText from './innerText';

describe('Header', () => {

Expand All @@ -13,7 +14,7 @@ describe('Header', () => {
<Header>{title}</Header>
);
assert.ok(findDOMNode(instance).className.match(/\bheader\b/));
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});


Expand Down
3 changes: 2 additions & 1 deletion test/ModalDialogSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import ModalDialog from '../src/ModalDialog';
import innerText from './innerText';

describe('ModalDialog', () => {

Expand All @@ -15,7 +16,7 @@ describe('ModalDialog', () => {

assert.equal(findDOMNode(instance).className, 'modal');
assert.ok(findDOMNode(instance).querySelector('.modal-dialog'));
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});

it('Should have a custom className in dialog', () => {
Expand Down
3 changes: 2 additions & 1 deletion test/ModalHeaderSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import ModalHeader from '../src/ModalHeader';
import innerText from './innerText';

describe('ModalHeader', () => {

Expand All @@ -13,7 +14,7 @@ describe('ModalHeader', () => {
<ModalHeader>{title}</ModalHeader>
);
assert.equal(findDOMNode(instance).className, 'modal-header');
assert.equal(findDOMNode(instance).innerText, '×Test');
assert.equal(innerText(findDOMNode(instance)), '×Test');
});

it('Should hide close button', () => {
Expand Down
3 changes: 2 additions & 1 deletion test/NavDropdownSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import NavDropdown from '../src/NavDropdown';
import innerText from './innerText';

describe('NavDropdown', () => {

Expand All @@ -13,7 +14,7 @@ describe('NavDropdown', () => {
<NavDropdown>{title}</NavDropdown>
);
assert.equal(findDOMNode(instance).tagName, 'LI');
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});

it('Should be active', () => {
Expand Down
3 changes: 2 additions & 1 deletion test/NavItemSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import NavItem from '../src/NavItem';
import innerText from './innerText';

describe('NavItem', () => {

Expand All @@ -13,7 +14,7 @@ describe('NavItem', () => {
<NavItem>{title}</NavItem>
);
assert.equal(findDOMNode(instance).tagName, 'LI');
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});

it('Should call onSelect callback', (done) => {
Expand Down
3 changes: 2 additions & 1 deletion test/NavSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import Nav from '../src/Nav';
import innerText from './innerText';

describe('Nav', () => {

Expand All @@ -14,7 +15,7 @@ describe('Nav', () => {
);
assert.equal(findDOMNode(instance).tagName, 'UL');
assert.equal(findDOMNode(instance).className, 'nav');
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});

it('Should have a `nav-tabs` className', () => {
Expand Down
5 changes: 3 additions & 2 deletions test/NavbarBrandSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import NavbarBrand from '../src/NavbarBrand';
import innerText from './innerText';

describe('NavbarBrand', () => {

Expand All @@ -13,7 +14,7 @@ describe('NavbarBrand', () => {
<NavbarBrand>{title}</NavbarBrand>
);
assert.equal(findDOMNode(instance).tagName, 'SPAN');
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});

it('Should render a Brand', () => {
Expand All @@ -22,7 +23,7 @@ describe('NavbarBrand', () => {
<NavbarBrand><div>{title}</div></NavbarBrand>
);
assert.equal(findDOMNode(instance).tagName, 'DIV');
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});


Expand Down
3 changes: 2 additions & 1 deletion test/NavbarCollapseSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import NavbarCollapse from '../src/NavbarCollapse';
import innerText from './innerText';

describe('NavbarCollapse', () => {

Expand All @@ -14,7 +15,7 @@ describe('NavbarCollapse', () => {
);
assert.equal(findDOMNode(instance).tagName, 'DIV');
assert.ok(findDOMNode(instance).className.match(/\bnavbar-collapse\b/));
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});

it('Should have a custom className', () => {
Expand Down
3 changes: 2 additions & 1 deletion test/NavbarHeaderSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import NavbarHeader from '../src/NavbarHeader';
import innerText from './innerText';

describe('NavbarHeader', () => {

Expand All @@ -14,7 +15,7 @@ describe('NavbarHeader', () => {
);
assert.equal(findDOMNode(instance).tagName, 'DIV');
assert.ok(findDOMNode(instance).className.match(/\bnavbar-header\b/));
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});

it('Should have a custom className', () => {
Expand Down
3 changes: 2 additions & 1 deletion test/NavbarToggleSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import NavbarToggle from '../src/NavbarToggle';
import innerText from './innerText';

describe('NavbarToggle', () => {

Expand All @@ -21,7 +22,7 @@ describe('NavbarToggle', () => {
<NavbarToggle><div>{title}</div></NavbarToggle>
);
assert.ok(findDOMNode(instance).className.match(/\bnavbar-toggle\b/));
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});

it('Should have a custom className', () => {
Expand Down
3 changes: 2 additions & 1 deletion test/PaginationButtonSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import PaginationButton from '../src/PaginationButton';
import innerText from './innerText';

describe('PaginationButton', () => {

Expand All @@ -13,7 +14,7 @@ describe('PaginationButton', () => {
<PaginationButton>{title}</PaginationButton>
);
assert.equal(findDOMNode(instance).tagName, 'LI');
assert.equal(findDOMNode(instance).innerText, title);
assert.equal(innerText(findDOMNode(instance)), title);
});

it('Should be disabled', () => {
Expand Down
10 changes: 6 additions & 4 deletions test/PaginationSpec.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import ReactTestUtils from 'react-dom/test-utils';


import Pagination from '../src/Pagination';
import innerText from './innerText';

describe('Pagination', () => {

Expand Down Expand Up @@ -40,14 +41,15 @@ describe('Pagination', () => {
<Pagination pages={20} maxButtons={2} ellipsis />
);
assert.equal(findDOMNode(instance).querySelectorAll('li').length, 3);
assert.equal(findDOMNode(instance).querySelector('li.disabled').innerText, '…');
assert.equal(innerText(findDOMNode(instance).querySelector('li.disabled')), '…');
});

it('Should be ellipsis', () => {
const instance = ReactTestUtils.renderIntoDocument(
<Pagination pages={20} maxButtons={2} ellipsis={'abc'} />
);
assert.equal(findDOMNode(instance).querySelectorAll('li').length, 3);
assert.equal(findDOMNode(instance).querySelector('li.disabled').innerText, 'abc');
assert.equal(innerText(findDOMNode(instance).querySelector('li.disabled')), 'abc');
});

it('Should render `first` button', () => {
Expand Down Expand Up @@ -82,15 +84,15 @@ describe('Pagination', () => {
const instance = ReactTestUtils.renderIntoDocument(
<Pagination pages={20} maxButtons={2} ellipsis boundaryLinks />
);
assert.equal(findDOMNode(instance).querySelector('li:last-child').innerText, '20');
assert.equal(innerText(findDOMNode(instance).querySelector('li:last-child')), '20');
});


it('Should active page 5', () => {
const instance = ReactTestUtils.renderIntoDocument(
<Pagination pages={20} activePage={5} />
);
assert.equal(findDOMNode(instance).querySelector('li.active').innerText, '5');
assert.equal(innerText(findDOMNode(instance).querySelector('li.active')), '5');
});


Expand Down

0 comments on commit d0d75b6

Please sign in to comment.