UNPKG

1.98 kBJavaScriptView Raw
1const {asset} = require('../src/')
2const {expect} = require('chai')
3const through2 = require('through2')
4
5describe('asset-facade', () => {
6 describe('.asset', () => {
7 it('adds the assets to build', () => {
8 const facade = asset('foo').asset('bar')
9
10 expect(facade.getAssetModel().paths).to.eql(['foo', 'bar'])
11
12 facade.asset('baz', 'spam', 'ham')
13
14 expect(facade.getAssetModel().paths).to.eql(['foo', 'bar', 'baz', 'spam', 'ham'])
15 })
16 })
17
18 describe('.assetOptions', () => {
19 it('sets the asset options to the asset', () => {
20 const facade = asset('foo').assetOptions({bar: 'baz'})
21
22 expect(facade.getAssetModel().opts).to.eql({bar: 'baz'})
23 })
24 })
25
26 describe('.watch', () => {
27 it('adds the watch paths', () => {
28 const facade = asset('foo').watch('bar')
29
30 expect(facade.getAssetModel().getWatchPaths()).to.eql(['bar'])
31
32 facade.watch('baz', 'ham', 'spam')
33
34 expect(facade.getAssetModel().getWatchPaths()).to.eql(['bar', 'baz', 'ham', 'spam'])
35 })
36 })
37
38 describe('.watchOptions', () => {
39 it('sets the watch options', () => {
40 const facade = asset('foo').watchOptions({bar: 'baz'})
41
42 expect(facade.getAssetModel().watchOpts).to.eql({bar: 'baz'})
43 })
44 })
45
46 describe('.base', () => {
47 it('sets the base path', () => {
48 const facade = asset('foo').base('src')
49
50 expect(facade.getAssetModel().opts.base).to.equal('src')
51 })
52
53 it('does not conflict with asset opts', () => {
54 const facade = asset('foo').base('src').assetOptions({bar: 'baz'})
55
56 expect(facade.getAssetModel().opts).to.eql({base: 'src', bar: 'baz'})
57 })
58 })
59
60 describe('.pipe', () => {
61 it('adds the pipe to the pipeline', () => {
62 const facade = asset('foo').pipe(through2())
63
64 expect(facade.getAssetModel().pipeline.length).to.equal(2)
65 })
66
67 it('throws when the given tranform equals null', () => {
68 expect(() => asset('foo').pipe(null)).to.throw(Error)
69 })
70 })
71})