mirror of
https://github.com/cmclark00/retro-imager.git
synced 2025-05-18 16:05:21 +01:00
107 lines
2.8 KiB
JavaScript
107 lines
2.8 KiB
JavaScript
|
/*
|
||
|
* Copyright 2017 resin.io
|
||
|
*
|
||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
* you may not use this file except in compliance with the License.
|
||
|
* You may obtain a copy of the License at
|
||
|
*
|
||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||
|
*
|
||
|
* Unless required by applicable law or agreed to in writing, software
|
||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
* See the License for the specific language governing permissions and
|
||
|
* limitations under the License.
|
||
|
*/
|
||
|
|
||
|
const chai = require('chai');
|
||
|
const mountutils = require('../');
|
||
|
|
||
|
describe('MountUtils', function() {
|
||
|
|
||
|
describe('.unmountDisk()', function() {
|
||
|
|
||
|
it('should be a function', function() {
|
||
|
chai.expect(mountutils.unmountDisk).to.be.a('function');
|
||
|
});
|
||
|
|
||
|
context('missing / wrong arguments', function() {
|
||
|
|
||
|
specify('throws on missing device', function() {
|
||
|
chai.expect(function() {
|
||
|
mountutils.unmountDisk(null, function() {});
|
||
|
}).to.throw(/must be a string/i);
|
||
|
});
|
||
|
|
||
|
specify('throws on missing callback', function() {
|
||
|
chai.expect(function() {
|
||
|
mountutils.unmountDisk('novalue');
|
||
|
}).to.throw(/must be a function/i);
|
||
|
});
|
||
|
|
||
|
});
|
||
|
|
||
|
context('invalid device', function() {
|
||
|
|
||
|
specify('device is a directory', function( done ) {
|
||
|
mountutils.unmountDisk( __dirname, function( error ) {
|
||
|
chai.expect(error.message).to.match(/Unmount failed/);
|
||
|
done();
|
||
|
});
|
||
|
});
|
||
|
|
||
|
specify('device is an empty string', function( done ) {
|
||
|
mountutils.unmountDisk( '', function( error ) {
|
||
|
chai.expect(error.message).to.match(/Unmount failed/);
|
||
|
done();
|
||
|
});
|
||
|
});
|
||
|
|
||
|
});
|
||
|
|
||
|
});
|
||
|
|
||
|
describe('.eject()', function() {
|
||
|
|
||
|
it('should be a function', function() {
|
||
|
chai.expect(mountutils.eject).to.be.a('function');
|
||
|
});
|
||
|
|
||
|
context('missing / wrong arguments', function() {
|
||
|
|
||
|
specify('throws on missing device', function() {
|
||
|
chai.expect(function() {
|
||
|
mountutils.eject(null, function() {});
|
||
|
}).to.throw(/must be a string/i);
|
||
|
});
|
||
|
|
||
|
specify('throws on missing callback', function() {
|
||
|
chai.expect(function() {
|
||
|
mountutils.eject('novalue');
|
||
|
}).to.throw(/must be a function/i);
|
||
|
});
|
||
|
|
||
|
});
|
||
|
|
||
|
context('invalid device', function() {
|
||
|
|
||
|
specify('device is a directory', function( done ) {
|
||
|
mountutils.eject( __dirname, function( error ) {
|
||
|
chai.expect(error.message).to.match(/Eject failed/);
|
||
|
done();
|
||
|
});
|
||
|
});
|
||
|
|
||
|
specify('device is an empty string', function( done ) {
|
||
|
mountutils.eject( '', function( error ) {
|
||
|
chai.expect(error.message).to.match(/Eject failed/);
|
||
|
done();
|
||
|
});
|
||
|
});
|
||
|
|
||
|
});
|
||
|
|
||
|
});
|
||
|
|
||
|
});
|