2022-06-08 09:26:32 +00:00
|
|
|
import { createMock } from 'ts-auto-mock'
|
2022-06-06 17:38:20 +00:00
|
|
|
import DocumentHandler from 'src/lib/document-handler/index'
|
|
|
|
import Generator from 'src/lib/key-generators/random'
|
|
|
|
import constants from 'src/constants'
|
|
|
|
import { Config } from 'src/types/config'
|
2022-06-08 09:26:32 +00:00
|
|
|
import { Store } from 'src/lib/document-stores'
|
2022-06-02 08:57:42 +00:00
|
|
|
|
2022-06-08 09:26:32 +00:00
|
|
|
const store: Store = createMock<Store>()
|
|
|
|
const config: Config = createMock<Config>()
|
2022-05-27 13:04:54 +00:00
|
|
|
|
|
|
|
describe('document-handler', () => {
|
2022-06-06 19:36:48 +00:00
|
|
|
describe('with random key', () => {
|
2022-05-27 13:04:54 +00:00
|
|
|
it('should choose a key of the proper length', () => {
|
|
|
|
const gen = new Generator({ type: 'random' })
|
2022-06-08 09:26:32 +00:00
|
|
|
const dh = new DocumentHandler({
|
|
|
|
keyLength: 6,
|
|
|
|
keyGenerator: gen,
|
|
|
|
store,
|
|
|
|
config
|
|
|
|
})
|
|
|
|
expect(dh.acceptableKey()?.length).toEqual(6)
|
2022-05-27 13:04:54 +00:00
|
|
|
})
|
|
|
|
|
|
|
|
it('should choose a default key length', () => {
|
|
|
|
const gen = new Generator({ type: 'random' })
|
2022-06-08 09:26:32 +00:00
|
|
|
const dh = new DocumentHandler({
|
|
|
|
keyGenerator: gen,
|
|
|
|
maxLength: 1,
|
|
|
|
store,
|
|
|
|
config
|
|
|
|
})
|
|
|
|
expect(dh.keyLength).toEqual(constants.DEFAULT_KEY_LENGTH)
|
2022-05-27 13:04:54 +00:00
|
|
|
})
|
|
|
|
})
|
|
|
|
})
|