Skip to content

Commit

Permalink
test: refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
posva committed Jan 7, 2024
1 parent 308fa96 commit dc6b57e
Showing 1 changed file with 26 additions and 15 deletions.
41 changes: 26 additions & 15 deletions src/tree-map.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,18 @@ import { describe, expect, it } from 'vitest'
import { EntryNode } from './tree-map'

describe('tree-map', () => {
it('.get', () => {
it('.set and .get', () => {
const tree = new EntryNode<string>()
tree.set(['a'], 'a')
expect(tree.get(['a'])).toBe('a')
tree.set(['a', 'b'], 'ab')
expect(tree.get(['a', 'b'])).toBe('ab')
tree.set(['a', 'b', 'c'], 'abc')
expect(tree.get(['a', 'b', 'c'])).toBe('abc')
tree.set(['a'], 'a2')
expect(tree.get(['a'])).toBe('a2')
tree.set(['a', 'b'], 'ab2')
expect(tree.get(['a', 'b'])).toBe('ab2')
tree.set(['a', 'b', 'd'], 'abd')
tree.set(['a', 'e'], 'ae')
tree.set(['f'], 'f')
Expand All @@ -18,27 +27,29 @@ describe('tree-map', () => {
const tree = new EntryNode<string>()
tree.set(['a', 'b', 'c'], 'abc')
tree.set(['a', 'b', 'd'], 'abd')
tree.set(['a', 'e'], 'ae')
tree.set(['f'], 'f')
tree.delete(['a', 'b', 'c'])
expect(tree.get(['a', 'b', 'c'])).toBe(undefined)
expect(tree.get(['a', 'b', 'd'])).toBe('abd')
expect(tree.get(['a', 'e'])).toBe('ae')
expect(tree.get(['f'])).toBe('f')
tree.delete(['a', 'b', 'd'])

tree.set(['a', 'b', 'h'], 'abh')
tree.delete(['a', 'b'])
expect(tree.get(['a', 'b'])).toBe(undefined)
expect(tree.get(['a', 'b', 'c'])).toBe(undefined)
expect(tree.get(['a', 'b', 'd'])).toBe(undefined)
expect(tree.get(['a', 'e'])).toBe('ae')
expect(tree.get(['f'])).toBe('f')
tree.delete(['a', 'e'])
expect(tree.get(['a', 'b', 'h'])).toBe(undefined)

tree.set(['a', 'b', 'h'], 'abh')
expect(tree.get(['a', 'b'])).toBe(undefined)
expect(tree.get(['a', 'b', 'c'])).toBe(undefined)
expect(tree.get(['a', 'b', 'd'])).toBe(undefined)
expect(tree.get(['a', 'b', 'h'])).toBe('abh')

tree.set(['a', 'e'], 'ae')
tree.set(['a', 'k'], 'ak')
tree.set(['f'], 'f')

tree.delete(['a', 'e'])
expect(tree.get(['a', 'e'])).toBe(undefined)
expect(tree.get(['f'])).toBe('f')
tree.delete(['f'])
expect(tree.get(['a', 'b', 'c'])).toBe(undefined)
expect(tree.get(['a', 'b', 'd'])).toBe(undefined)
expect(tree.get(['a', 'e'])).toBe(undefined)
expect(tree.get(['f'])).toBe(undefined)
expect(tree.get(['a', 'k'])).toBe('ak')
})
})

0 comments on commit dc6b57e

Please sign in to comment.