@@ -5,23 +5,32 @@ jest.unmock('../../src');
55import React from 'react' ;
66import ReactDOM from 'react-dom' ;
77import TestUtils from 'react-addons-test-utils' ;
8- import marked from 'marked ' ;
8+ import Remarkable from 'remarkable ' ;
99import MarkdownRenderer from '../../src' ;
1010
1111describe ( 'MarkdownRenderer' , ( ) => {
1212 const markdown = '# This is a H1 \n## This is a H2 \n###### This is a H6' ;
13+ let renderMock = null ;
1314
1415 beforeEach ( ( ) => {
15- marked . mockClear ( ) ;
16+ renderMock = jest . fn ( ) ;
17+
18+ Remarkable . mockImplementation ( ( ) => ( {
19+ render : renderMock ,
20+ } ) ) ;
1621 } ) ;
1722
23+ // afterEach(() => {
24+ // expect(Remarkable.mock.instances.length).toEqual(1);
25+ // });
26+
1827 describe ( 'sets innerHTML' , ( ) => {
1928 let containerNode ;
2029 let html ;
2130
2231 afterEach ( ( ) => {
23- expect ( marked . mock . calls . length ) . toEqual ( 1 ) ;
24- expect ( marked ) . toBeCalledWith ( markdown , { sanitize : true } ) ;
32+ expect ( renderMock . mock . calls . length ) . toEqual ( 1 ) ;
33+ expect ( renderMock ) . toBeCalledWith ( markdown ) ;
2534
2635 const markdownRendererNode = containerNode . children [ 0 ] ;
2736
@@ -33,7 +42,7 @@ describe('MarkdownRenderer', () => {
3342 describe ( 'marked returns html' , ( ) => {
3443 beforeEach ( ( ) => {
3544 html = '<h1>This is a H1</h1>' ;
36- marked . mockReturnValueOnce ( html ) ;
45+ renderMock . mockReturnValueOnce ( html ) ;
3746 } ) ;
3847
3948 it ( 'sets innerHTML to html' , ( ) => {
@@ -50,12 +59,10 @@ describe('MarkdownRenderer', () => {
5059 describe ( 'marked returns empty string' , ( ) => {
5160 beforeEach ( ( ) => {
5261 html = '' ;
53- marked . mockReturnValueOnce ( html ) ;
62+ renderMock . mockReturnValueOnce ( html ) ;
5463 } ) ;
5564
5665 it ( 'sets innerHTML to empty string' , ( ) => {
57- marked . mockReturnValueOnce ( '' ) ;
58-
5966 const markdownRenderer = TestUtils . renderIntoDocument (
6067 < div >
6168 < MarkdownRenderer markdown = { markdown } />
@@ -96,35 +103,4 @@ describe('MarkdownRenderer', () => {
96103 expect ( markdownRendererNode . className ) . toBe ( className ) ;
97104 } ) ;
98105 } ) ;
99-
100- describe ( 'defaults markdown' , ( ) => {
101- afterEach ( ( ) => {
102- expect ( marked . mock . calls . length ) . toEqual ( 1 ) ;
103- expect ( marked ) . toBeCalledWith ( '' , { sanitize : true } ) ;
104- } ) ;
105-
106- it ( 'nothing passed' , ( ) => {
107- TestUtils . renderIntoDocument (
108- < div >
109- < MarkdownRenderer />
110- </ div >
111- ) ;
112- } ) ;
113-
114- it ( 'undefined passed' , ( ) => {
115- TestUtils . renderIntoDocument (
116- < div >
117- < MarkdownRenderer markdown = { undefined } />
118- </ div >
119- ) ;
120- } ) ;
121-
122- it ( 'null passed' , ( ) => {
123- TestUtils . renderIntoDocument (
124- < div >
125- < MarkdownRenderer markdown = { null } />
126- </ div >
127- ) ;
128- } ) ;
129- } ) ;
130106} ) ;
0 commit comments