Skip to content

Commit 1f55c5d

Browse files
committed
resolve: removed capacity related codes, & updated test cases
1 parent 73d5e0d commit 1f55c5d

File tree

2 files changed

+18
-52
lines changed

2 files changed

+18
-52
lines changed

Data-Structures/Queue/Queue.js

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,9 @@
99
class Queue {
1010
#size
1111

12-
constructor (capacity) {
13-
if (capacity < 1) {
14-
throw new Error('Capacity is not valid')
15-
}
16-
12+
constructor () {
1713
this.head = null
1814
this.tail = null
19-
this.capacity = capacity
2015
this.#size = 0
2116

2217
return Object.seal(this)
@@ -32,10 +27,6 @@ class Queue {
3227
* @returns {number} - The current size of queue
3328
*/
3429
enqueue (data) {
35-
if (this.capacity === this.#size) {
36-
throw new RangeError('Queue is full')
37-
}
38-
3930
const node = { data, next: null }
4031

4132
if (!this.head && !this.tail) {

Data-Structures/Queue/test/Queue.test.js

Lines changed: 17 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,35 @@
11
import Queue from '../Queue'
22

33
describe('Testing the Queue DS', () => {
4-
it('Check Capacity', () => {
5-
const queue = new Queue(3)
6-
queue.enqueue(1)
7-
queue.enqueue(2)
8-
queue.enqueue(8)
4+
const queue = new Queue()
95

10-
expect(() => queue.enqueue(9)).toThrow()
6+
it('Testing enqueue method', () => {
7+
expect(queue.enqueue(1)).toBe(1)
8+
expect(queue.enqueue(2)).toBe(2)
9+
expect(queue.enqueue(8)).toBe(3)
10+
expect(queue.enqueue(9)).toBe(4)
1111
})
1212

13-
it('Check enqueue/dequeue', () => {
14-
const queue = new Queue(10)
15-
queue.enqueue(1)
16-
queue.enqueue(2)
17-
queue.enqueue(8)
18-
queue.enqueue(9)
19-
20-
expect(queue.dequeue()).toBe(1)
21-
expect(queue.dequeue()).toBe(2)
13+
it('Testing length method', () => {
14+
expect(queue.length).toBe(4)
2215
})
2316

24-
it('Check length', () => {
25-
const queue = new Queue(5)
26-
27-
queue.enqueue(1)
28-
queue.enqueue(2)
29-
queue.enqueue(8)
30-
queue.enqueue(9)
31-
32-
expect(queue.toArray()).toEqual([1, 2, 8, 9])
33-
})
34-
35-
it('Check peekFirst & peekLast', () => {
36-
const queue = new Queue(4)
37-
38-
queue.enqueue(1)
39-
queue.enqueue(2)
40-
queue.enqueue(8)
41-
queue.enqueue(9)
42-
17+
it('Testing peekFirst & peekLast methods', () => {
4318
expect(queue.peekFirst()).toBe(1)
4419
expect(queue.peekLast()).toBe(9)
4520
})
4621

47-
it('Check toArray', () => {
48-
const queue = new Queue()
22+
it('Testing toArray method', () => {
23+
expect(queue.toArray()).toEqual([1, 2, 8, 9])
24+
})
4925

50-
queue.enqueue(1)
51-
queue.enqueue(2)
52-
queue.enqueue(8)
53-
queue.enqueue(9)
26+
it('Testing dequeue method', () => {
27+
expect(queue.dequeue()).toBe(1)
28+
expect(queue.dequeue()).toBe(2)
5429
})
5530

56-
it('Check empty', () => {
57-
const queue = new Queue(5)
31+
it('Testing isEmpty method', () => {
32+
const queue = new Queue()
5833
expect(queue.isEmpty()).toBeTruthy()
5934

6035
queue.enqueue(1)

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy