fs.writeFile(credentialsFile, fileContents, (err) => {
      if (err) {
        t.fail(err);
        t.end();
        return;
      }

      const CredentialHelper = require(credentialFileHelper);
      const c = new CredentialHelper(credentialsFile);
      c.backup().then((backupFile) => {
        const basename = path.basename(backupFile);
        const expectedName = `credentials.1${CredentialHelper.BACKUP_EXT}`;
        t.deepEqual(basename, expectedName);
        fs.readFile(backupFile, (err, data) => {
          if (err) {
            t.fail();
            t.end();
            return;
          }

          t.deepEqual(data.toString('utf-8'), fileContents);
          t.pass();
          t.end();
        });
      });
    });
test.serial('backup should throw an error if the path doesnt exist', (t) => {
  mockery.registerAllowables(['fs']);
  const CredentialHelper = require(credentialFileHelper);
  const c = new CredentialHelper(path.join(process.cwd(), 'does-not', 'exist'));

  t.throws(c.backup());
});
示例#3
0
文件: index.js 项目: epochtalk/admin
var genericArgs = {
  debug: program.debug,
  verbose: program.verbose,
  db: program.leveldb || path.join(process.env.PWD, 'epoch.db')
};

var query = require(path.join(__dirname, 'query'));
var imp = require(path.join(__dirname, 'import'));
var archive = require(path.join(__dirname, 'archive'));
var seed = require(path.join(__dirname, 'seed'));

if (program.query) {
  query(program.query);
}
else if (program.migrate) {
  imp(program.migrate, genericArgs);
}
else if (program.backup) {
  archive.backup(program.backup, genericArgs);
}
else if (program.restore) {
  archive.restore(program.restore, genericArgs);
}
else if (program.seed) {
  seed.seed(genericArgs);
}
else {
  program.help();
}