rsync
Version:
Rsync cli wrapper
44 lines (39 loc) • 1.18 kB
JavaScript
/*global describe,it*/
;
var Rsync = require('../rsync');
var assertOutput = require('./helpers/output').assertOutput;
/**
* Some general and weird test cases for command output.
*
* These tests are meant as a general safeguard to complement
* unit tests.
*/
var testCases = [
{ expect: 'rsync -avz --exclude=no-go.txt --exclude=with\\ space --exclude=.git --exclude=*.tiff path_a/ path_b',
build: function() {
return new Rsync()
.flags('avz')
.source('path_a/')
.exclude('no-go.txt')
.exclude('with space')
.exclude('.git')
.exclude('*.tiff')
.destination('path_b');
}},
{ expect: 'rsync -rav -f "- .git" test-dir/ test-dir-copy',
build: function() {
return new Rsync()
.flags('rav')
.set('f', '- .git')
.source('test-dir/')
.destination('test-dir-copy');
}}
];
describe('output tests', function () {
testCases.forEach(function buildTestCase(testCase, index) {
var message = 'passes case ' + (index + 1);
it(message, function() {
assertOutput(testCase.build(), testCase.expect);
});
});
});