22
33// setup
44import test from 'ava'
5+ import { analyze , formatted , plugin } from './../index'
56import { resolve , join } from 'path'
67import { rollup as rollupLatest } from 'rollup'
78import { rollup as rollup60 } from 'rollup60'
89import { rollup as rollup55 } from 'rollup55'
910import { rollup as rollup50 } from 'rollup50'
1011import { rollup as rollup45 } from 'rollup45'
1112import { rollup as rollup40 } from 'rollup40'
12- import { analyze , formatted } from './../index'
1313const fixtures = resolve ( __dirname , 'fixtures' )
1414const baseOpts = {
1515 input : join ( fixtures , 'bundle.js' ) ,
@@ -19,6 +19,11 @@ const oldOpts = {
1919 entry : join ( fixtures , 'bundle.js' ) ,
2020 format : 'cjs'
2121}
22+ const expectHeader = `
23+ -----------------------------
24+ Rollup File Analysis
25+ -----------------------------
26+ ` . trim ( )
2227
2328// test against many versions of rollup
2429const rollers = [
@@ -91,6 +96,17 @@ rollers.forEach(({rollup, version, opts}) => {
9196 assert . is ( typeof results , 'string' )
9297 } )
9398
99+ let shouldFailPlugin = { latest : true , '0.60.x' : true }
100+ let pluginTest = shouldFailPlugin [ version ] ? test . failing : test
101+ pluginTest ( `${ version } : plugin writes expected results` , async ( assert ) => {
102+ let results
103+ let writeTo = ( r ) => { results = r }
104+ let rollOpts = Object . assign ( { plugins : [ plugin ( { writeTo} ) ] } , opts )
105+ let bundle = await rollup ( rollOpts )
106+ await bundle . generate ( { format : 'cjs' } )
107+ assert . is ( results . substr ( 0 , expectHeader . length ) , expectHeader )
108+ } )
109+
94110 test . failing ( `${ version } : tree shaking is accounted for` , async ( assert ) => {
95111 let bundle = await rollup ( opts )
96112 let results = await analyze ( bundle )
0 commit comments