| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 | 
							
- var t = require('assert')
 
- var defaults = require('./utils/defaults')
 
- module.exports = ({popup, advanced, content}) => {
 
-   before(async () => {
 
-     await defaults({popup, advanced, content})
 
-   })
 
-   describe('correct content-type + disabled header detection + disabled path matching', () => {
 
-     before(async () => {
 
-       await advanced.bringToFront()
 
-       // disable header detection
 
-       if (await advanced.evaluate(() => origins.state.header)) {
 
-         await advanced.click('.m-switch')
 
-       }
 
-       // disable path matching
 
-       await advanced.evaluate(() => {
 
-         document.querySelector('.m-list li:nth-of-type(1) input').value = ''
 
-         document.querySelector('.m-list li:nth-of-type(1) input').dispatchEvent(new Event('keyup'))
 
-       })
 
-       // there is debounce timeout of 750ms in the options UI
 
-       await advanced.waitForTimeout(800)
 
-     })
 
-     it('text/markdown', async () => {
 
-       // go to page serving markdown as text/markdown
 
-       await content.goto('http://localhost:3000/correct-content-type')
 
-       await content.bringToFront()
 
-       await content.waitForTimeout(300)
 
-       t.equal(
 
-         await content.evaluate(() =>
 
-           document.querySelector('pre').innerText
 
-         ),
 
-         '**bold**',
 
-         'markdown should not be rendered'
 
-       )
 
-     })
 
-   })
 
-   describe('correct content-type + enabled header detection + disabled path matching', () => {
 
-     before(async () => {
 
-       await advanced.bringToFront()
 
-       // enable header detection
 
-       if (!await advanced.evaluate(() => origins.state.header)) {
 
-         await advanced.click('.m-switch')
 
-       }
 
-       // disable path matching
 
-       await advanced.evaluate(() => {
 
-         document.querySelector('.m-list li:nth-of-type(1) input').value = ''
 
-         document.querySelector('.m-list li:nth-of-type(1) input').dispatchEvent(new Event('keyup'))
 
-       })
 
-       // there is debounce timeout of 750ms in the options UI
 
-       await advanced.waitForTimeout(800)
 
-     })
 
-     it('text/markdown', async () => {
 
-       // go to page serving markdown as text/markdown
 
-       await content.goto('http://localhost:3000/correct-content-type')
 
-       await content.bringToFront()
 
-       await content.waitForTimeout(300)
 
-       t.equal(
 
-         await content.evaluate(() =>
 
-           document.querySelector('#_html p strong').innerText
 
-         ),
 
-         'bold',
 
-         'markdown should be rendered'
 
-       )
 
-     })
 
-     it('text/x-markdown', async () => {
 
-       // go to page serving markdown as text/x-markdown
 
-       await content.goto('http://localhost:3000/correct-content-type-variation')
 
-       await content.bringToFront()
 
-       await content.waitForTimeout(300)
 
-       t.equal(
 
-         await content.evaluate(() =>
 
-           document.querySelector('#_html p strong').innerText
 
-         ),
 
-         'bold',
 
-         'markdown should be rendered'
 
-       )
 
-     })
 
-   })
 
-   describe('wrong content-type + enabled header detection + enabled path matching', () => {
 
-     before(async () => {
 
-       await advanced.bringToFront()
 
-       // enable header detection
 
-       if (!await advanced.evaluate(() => origins.state.header)) {
 
-         await advanced.click('.m-switch')
 
-       }
 
-       // enable path matching
 
-       await advanced.evaluate(() => {
 
-         document.querySelector('.m-list li:nth-of-type(1) input').value = 'wrong-content-type'
 
-         document.querySelector('.m-list li:nth-of-type(1) input').dispatchEvent(new Event('keyup'))
 
-       })
 
-       // there is debounce timeout of 750ms in the options UI
 
-       await advanced.waitForTimeout(800)
 
-     })
 
-     it('text/plain', async () => {
 
-       // go to page serving markdown as text/plain
 
-       await content.goto('http://localhost:3000/wrong-content-type')
 
-       await content.bringToFront()
 
-       await content.waitForTimeout(300)
 
-       t.equal(
 
-         await content.evaluate(() =>
 
-           document.querySelector('#_html p strong').innerText
 
-         ),
 
-         'bold',
 
-         'markdown should be rendered'
 
-       )
 
-     })
 
-   })
 
- }
 
 
  |