git-off

git off handles large files in git repos
git clone https://noulin.net/git/git-off.git
Log | Files | Refs | README

copy.js (953B)


      1 'use strict';
      2 
      3 var expect = require('chai').expect;
      4 var node_path = require('path');
      5 var fs = require('fs');
      6 var sync = require('../');
      7 var tmp = require('tmp');
      8 
      9 var root = node_path.join(__dirname, 'fixtures');
     10 
     11 var cases = [
     12   {
     13     desc: 'should not corrupts binary files',
     14     file: 'icon.png'
     15   }
     16 ];
     17 
     18 
     19 describe("fs.copy()", function(){
     20   cases.forEach(function (c) {
     21     var i = c.only
     22       ? it.only
     23       : it;
     24 
     25     function run (noOptions) {
     26       i(c.desc, function (done) {
     27         tmp.dir(function (err, dir) {
     28           if (err) {
     29             expect('failed to create tmp dir').to.equal('');
     30             return done()
     31           }
     32 
     33           var file = node_path.join(root, c.file);
     34           var tmp_file = node_path.join(root, c.file);
     35 
     36           sync.copy(file, tmp_file);
     37           expect(fs.readFileSync(file).toString()).to.equal(fs.readFileSync(tmp_file).toString());
     38           done()
     39         })
     40       });
     41     }
     42 
     43     run();
     44   });
     45 });