ba7f1a969d
By moving to wasm-bindgens `bundler` target rather than using the `web` target we remove the need for an async initialization step on the automerge-wasm package. This means that the automerge-js package can now depend directly on automerge-wasm and perform initialization itself, thus making automerge-js a drop in replacement for the `automerge` JS package (hopefully). We bump the versions of automerge-wasm
32 lines
670 B
TypeScript
32 lines
670 B
TypeScript
import * as assert from 'assert'
|
|
import * as Automerge from '../src'
|
|
|
|
const uuid = Automerge.uuid
|
|
|
|
describe('uuid', () => {
|
|
afterEach(() => {
|
|
uuid.reset()
|
|
})
|
|
|
|
describe('default implementation', () => {
|
|
it('generates unique values', () => {
|
|
assert.notEqual(uuid(), uuid())
|
|
})
|
|
})
|
|
|
|
describe('custom implementation', () => {
|
|
let counter
|
|
|
|
function customUuid() {
|
|
return `custom-uuid-${counter++}`
|
|
}
|
|
|
|
before(() => uuid.setFactory(customUuid))
|
|
beforeEach(() => counter = 0)
|
|
|
|
it('invokes the custom factory', () => {
|
|
assert.equal(uuid(), 'custom-uuid-0')
|
|
assert.equal(uuid(), 'custom-uuid-1')
|
|
})
|
|
})
|
|
})
|