2023-01-13 07:42:29 -05:00
|
|
|
'use strict'
|
|
|
|
|
|
|
|
const { expect } = require('chai')
|
|
|
|
const core = require('..')
|
|
|
|
const Change = core.Change
|
|
|
|
const File = core.File
|
|
|
|
const Operation = core.Operation
|
|
|
|
|
|
|
|
describe('Change', function () {
|
|
|
|
describe('findBlobHashes', function () {
|
|
|
|
it('finds blob hashes from operations', function () {
|
|
|
|
const blobHashes = new Set()
|
|
|
|
|
|
|
|
const change = Change.fromRaw({
|
|
|
|
operations: [],
|
|
|
|
timestamp: '2015-03-05T12:03:53.035Z',
|
|
|
|
authors: [null],
|
|
|
|
})
|
|
|
|
|
|
|
|
change.findBlobHashes(blobHashes)
|
|
|
|
expect(blobHashes.size).to.equal(0)
|
|
|
|
|
|
|
|
// AddFile with content doesn't have a hash.
|
|
|
|
change.pushOperation(Operation.addFile('a.txt', File.fromString('a')))
|
|
|
|
change.findBlobHashes(blobHashes)
|
|
|
|
expect(blobHashes.size).to.equal(0)
|
|
|
|
|
|
|
|
// AddFile with hash should give us a hash.
|
|
|
|
change.pushOperation(
|
|
|
|
Operation.addFile('b.txt', File.fromHash(File.EMPTY_FILE_HASH))
|
|
|
|
)
|
|
|
|
change.findBlobHashes(blobHashes)
|
|
|
|
expect(blobHashes.size).to.equal(1)
|
|
|
|
expect(blobHashes.has(File.EMPTY_FILE_HASH)).to.be.true
|
|
|
|
})
|
|
|
|
})
|
2024-06-17 08:54:11 -04:00
|
|
|
|
|
|
|
describe('RestoreFileOrigin', function () {
|
|
|
|
it('should convert to and from raw', function () {
|
|
|
|
const origin = new core.RestoreFileOrigin(1, 'path', new Date())
|
|
|
|
const raw = origin.toRaw()
|
|
|
|
const newOrigin = core.Origin.fromRaw(raw)
|
|
|
|
expect(newOrigin).to.eql(origin)
|
|
|
|
})
|
|
|
|
|
|
|
|
it('change should have a correct origin class', function () {
|
|
|
|
const change = Change.fromRaw({
|
|
|
|
operations: [],
|
|
|
|
timestamp: '2015-03-05T12:03:53.035Z',
|
|
|
|
authors: [null],
|
|
|
|
origin: {
|
|
|
|
kind: 'file-restore',
|
|
|
|
version: 1,
|
|
|
|
path: 'path',
|
|
|
|
timestamp: '2015-03-05T12:03:53.035Z',
|
|
|
|
},
|
|
|
|
})
|
|
|
|
|
|
|
|
expect(change.getOrigin()).to.be.an.instanceof(core.RestoreFileOrigin)
|
|
|
|
})
|
|
|
|
})
|
2023-01-13 07:42:29 -05:00
|
|
|
})
|