UNPKG

@nhz.io/conf-streams

Version:

Configure and compose streams from JSON config and plugins

132 lines (116 loc) 2.01 kB
import {obj as through2} from 'through2' import test from 'ava' import resolves from '../../lib/resolves' test('list resolves streams', t => { t.truthy(resolves( [through2()], {}, {} )) }) test('list resolves named streams', t => { t.truthy(resolves( ['test'], {test: {stream: through2()}}, {} )) }) test('list resolves named plugins', t => { t.truthy(resolves( [{test: {}}], {}, {test: () => through2()} )) }) test('list resolves streams and plugins', t => { t.truthy(resolves( ['test', {test: {}}], {test: {stream: through2()}}, {test: () => through2()} )) }) test('list resolves nested chains', t => { t.truthy(resolves( [{ chain: ['test', {test: {}}], }], {test: {stream: through2()}}, {test: () => through2()} )) }) test('list resolves nested merges', t => { t.truthy(resolves( [{ merge: ['test', {test: {}}], }], {test: {stream: through2()}}, {test: () => through2()} )) }) test('list resolves deep nesting', t => { t.truthy(resolves( [{chain: [{merge: [{ chain: ['test', {test: {}}], }]}]}], {test: {stream: through2()}}, {test: () => through2()} )) }) test('list does not resolve streams', t => { t.falsy(resolves( ['test'], {}, {} )) t.falsy(resolves( ['test'], {test: {}}, {} )) }) test('list does not resolve plugins', t => { t.falsy(resolves( [{test: {}}], {}, {} )) }) test('list does not resolve streams and plugins', t => { t.falsy(resolves( ['test', {test: {}}], {}, {} )) t.falsy(resolves( ['test', {test: {}}], {test: {}}, {} )) }) test('list does not resolve nested chains', t => { t.falsy(resolves( [{ chain: ['test', {test: {}}], }], {}, {} )) }) test('list does not resolve nested merges', t => { t.falsy(resolves( [{ merge: ['test', {test: {}}], }], {test: {}}, {} )) }) test('list does not resolve deep nesting', t => { t.falsy(resolves( [{chain: [{merge: [{ chain: ['test', {test: {}}], }]}]}], {test: {}}, {}, )) })