Skip to content

Commit

Permalink
refactor: private namespaces ExecLimit
Browse files Browse the repository at this point in the history
  • Loading branch information
sqlwwx committed Dec 1, 2019
1 parent dd973a7 commit 324ebb6
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 13 deletions.
3 changes: 3 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,8 @@ module.exports = {
plugins: ['you-dont-need-lodash-underscore'],
rules: {
'import/no-extraneous-dependencies': 'off'
},
env: {
node: true
}
}
3 changes: 3 additions & 0 deletions src/.eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,8 @@ module.exports = {
plugins: ['you-dont-need-lodash-underscore'],
rules: {
'import/no-extraneous-dependencies': 'off'
},
env: {
node: true
}
}
16 changes: 9 additions & 7 deletions src/ExecLimit.js
Original file line number Diff line number Diff line change
@@ -1,21 +1,23 @@
module.exports = class ExecLimit {
constructor () {
this.namespaces = Object.create(null)
#namespaces = Object.create(null)

get namespacesCount () {
return Object.keys(this.#namespaces).length
}

clear (namespace) {
if (namespace) {
delete this.namespaces[namespace]
delete this.#namespaces[namespace]
} else {
this.namespaces = Object.create(null)
this.#namespaces = Object.create(null)
}
}

getHistory (namespace) {
if (!this.namespaces[namespace]) {
this.namespaces[namespace] = new Set()
if (!this.#namespaces[namespace]) {
this.#namespaces[namespace] = new Set()
}
return this.namespaces[namespace]
return this.#namespaces[namespace]
}

isExeced (key, namespace) {
Expand Down
12 changes: 6 additions & 6 deletions src/ExecLimit.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ describe('ExecLimit', () => {
expect(results.length).toBeGreaterThanOrEqual(15)

execLimit.exec('test', () => {}, 'test')
expect(execLimit.namespaces.default.size).toEqual(1)
expect(execLimit.namespaces.test.size).toEqual(1)
expect(Object.keys(execLimit.namespaces).length).toEqual(2)
expect(execLimit.getHistory('default').size).toEqual(1)
expect(execLimit.getHistory('test').size).toEqual(1)
expect(execLimit.namespacesCount).toEqual(2)
execLimit.clear('default')
expect(execLimit.namespaces.test.size).toEqual(1)
expect(Object.keys(execLimit.namespaces).length).toEqual(1)
expect(execLimit.getHistory('test').size).toEqual(1)
expect(execLimit.namespacesCount).toEqual(1)
execLimit.clear()
expect(Object.keys(execLimit.namespaces).length).toEqual(0)
expect(execLimit.namespacesCount).toEqual(0)
})
})

0 comments on commit 324ebb6

Please sign in to comment.