Skip to content

Commit c522318

Browse files
authored
Updating tests custom-set (#2583)
1 parent 7372624 commit c522318

File tree

3 files changed

+67
-41
lines changed

3 files changed

+67
-41
lines changed

exercises/practice/custom-set/.meta/config.json

+1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"contributors": [
66
"ankorGH",
77
"apapirovski",
8+
"jagdish-15",
89
"ovidiu141",
910
"rchavarria",
1011
"ryanplusplus",
+54-41
Original file line numberDiff line numberDiff line change
@@ -1,117 +1,130 @@
1-
# This is an auto-generated file. Regular comments will be removed when this
2-
# file is regenerated. Regenerating will not touch any manually added keys,
3-
# so comments can be added in a "comment" key.
1+
# This is an auto-generated file.
2+
#
3+
# Regenerating this file via `configlet sync` will:
4+
# - Recreate every `description` key/value pair
5+
# - Recreate every `reimplements` key/value pair, where they exist in problem-specifications
6+
# - Remove any `include = true` key/value pair (an omitted `include` key implies inclusion)
7+
# - Preserve any other key/value pair
8+
#
9+
# As user-added comments (using the # character) will be removed when this file
10+
# is regenerated, comments can be added via a `comment` key.
411

512
[20c5f855-f83a-44a7-abdd-fe75c6cf022b]
6-
description = "sets with no elements are empty"
13+
description = "Returns true if the set contains no elements -> sets with no elements are empty"
714

815
[d506485d-5706-40db-b7d8-5ceb5acf88d2]
9-
description = "sets with elements are not empty"
16+
description = "Returns true if the set contains no elements -> sets with elements are not empty"
1017

1118
[759b9740-3417-44c3-8ca3-262b3c281043]
12-
description = "nothing is contained in an empty set"
19+
description = "Sets can report if they contain an element -> nothing is contained in an empty set"
1320

1421
[f83cd2d1-2a85-41bc-b6be-80adbff4be49]
15-
description = "when the element is in the set"
22+
description = "Sets can report if they contain an element -> when the element is in the set"
1623

1724
[93423fc0-44d0-4bc0-a2ac-376de8d7af34]
18-
description = "when the element is not in the set"
25+
description = "Sets can report if they contain an element -> when the element is not in the set"
1926

2027
[c392923a-637b-4495-b28e-34742cd6157a]
21-
description = "empty set is a subset of another empty set"
28+
description = "A set is a subset if all of its elements are contained in the other set -> empty set is a subset of another empty set"
2229

2330
[5635b113-be8c-4c6f-b9a9-23c485193917]
24-
description = "empty set is a subset of non-empty set"
31+
description = "A set is a subset if all of its elements are contained in the other set -> empty set is a subset of non-empty set"
2532

2633
[832eda58-6d6e-44e2-92c2-be8cf0173cee]
27-
description = "non-empty set is not a subset of empty set"
34+
description = "A set is a subset if all of its elements are contained in the other set -> non-empty set is not a subset of empty set"
2835

2936
[c830c578-8f97-4036-b082-89feda876131]
30-
description = "set is a subset of set with exact same elements"
37+
description = "A set is a subset if all of its elements are contained in the other set -> set is a subset of set with exact same elements"
3138

3239
[476a4a1c-0fd1-430f-aa65-5b70cbc810c5]
33-
description = "set is a subset of larger set with same elements"
40+
description = "A set is a subset if all of its elements are contained in the other set -> set is a subset of larger set with same elements"
3441

3542
[d2498999-3e46-48e4-9660-1e20c3329d3d]
36-
description = "set is not a subset of set that does not contain its elements"
43+
description = "A set is a subset if all of its elements are contained in the other set -> set is not a subset of set that does not contain its elements"
3744

3845
[7d38155e-f472-4a7e-9ad8-5c1f8f95e4cc]
39-
description = "the empty set is disjoint with itself"
46+
description = "Sets are disjoint if they share no elements -> the empty set is disjoint with itself"
4047

4148
[7a2b3938-64b6-4b32-901a-fe16891998a6]
42-
description = "empty set is disjoint with non-empty set"
49+
description = "Sets are disjoint if they share no elements -> empty set is disjoint with non-empty set"
4350

4451
[589574a0-8b48-48ea-88b0-b652c5fe476f]
45-
description = "non-empty set is disjoint with empty set"
52+
description = "Sets are disjoint if they share no elements -> non-empty set is disjoint with empty set"
4653

4754
[febeaf4f-f180-4499-91fa-59165955a523]
48-
description = "sets are not disjoint if they share an element"
55+
description = "Sets are disjoint if they share no elements -> sets are not disjoint if they share an element"
4956

5057
[0de20d2f-c952-468a-88c8-5e056740f020]
51-
description = "sets are disjoint if they share no elements"
58+
description = "Sets are disjoint if they share no elements -> sets are disjoint if they share no elements"
5259

5360
[4bd24adb-45da-4320-9ff6-38c044e9dff8]
54-
description = "empty sets are equal"
61+
description = "Sets with the same elements are equal -> empty sets are equal"
5562

5663
[f65c0a0e-6632-4b2d-b82c-b7c6da2ec224]
57-
description = "empty set is not equal to non-empty set"
64+
description = "Sets with the same elements are equal -> empty set is not equal to non-empty set"
5865

5966
[81e53307-7683-4b1e-a30c-7e49155fe3ca]
60-
description = "non-empty set is not equal to empty set"
67+
description = "Sets with the same elements are equal -> non-empty set is not equal to empty set"
6168

6269
[d57c5d7c-a7f3-48cc-a162-6b488c0fbbd0]
63-
description = "sets with the same elements are equal"
70+
description = "Sets with the same elements are equal -> sets with the same elements are equal"
6471

6572
[dd61bafc-6653-42cc-961a-ab071ee0ee85]
66-
description = "sets with different elements are not equal"
73+
description = "Sets with the same elements are equal -> sets with different elements are not equal"
6774

6875
[06059caf-9bf4-425e-aaff-88966cb3ea14]
69-
description = "set is not equal to larger set with same elements"
76+
description = "Sets with the same elements are equal -> set is not equal to larger set with same elements"
77+
78+
[d4a1142f-09aa-4df9-8b83-4437dcf7ec24]
79+
description = "Sets with the same elements are equal -> set is equal to a set constructed from an array with duplicates"
7080

7181
[8a677c3c-a658-4d39-bb88-5b5b1a9659f4]
72-
description = "add to empty set"
82+
description = "Unique elements can be added to a set -> add to empty set"
7383

7484
[0903dd45-904d-4cf2-bddd-0905e1a8d125]
75-
description = "add to non-empty set"
85+
description = "Unique elements can be added to a set -> add to non-empty set"
7686

7787
[b0eb7bb7-5e5d-4733-b582-af771476cb99]
78-
description = "adding an existing element does not change the set"
88+
description = "Unique elements can be added to a set -> adding an existing element does not change the set"
7989

8090
[893d5333-33b8-4151-a3d4-8f273358208a]
81-
description = "intersection of two empty sets is an empty set"
91+
description = "Intersection returns a set of all shared elements -> intersection of two empty sets is an empty set"
8292

8393
[d739940e-def2-41ab-a7bb-aaf60f7d782c]
84-
description = "intersection of an empty set and non-empty set is an empty set"
94+
description = "Intersection returns a set of all shared elements -> intersection of an empty set and non-empty set is an empty set"
8595

8696
[3607d9d8-c895-4d6f-ac16-a14956e0a4b7]
87-
description = "intersection of a non-empty set and an empty set is an empty set"
97+
description = "Intersection returns a set of all shared elements -> intersection of a non-empty set and an empty set is an empty set"
8898

8999
[b5120abf-5b5e-41ab-aede-4de2ad85c34e]
90-
description = "intersection of two sets with no shared elements is an empty set"
100+
description = "Intersection returns a set of all shared elements -> intersection of two sets with no shared elements is an empty set"
91101

92102
[af21ca1b-fac9-499c-81c0-92a591653d49]
93-
description = "intersection of two sets with shared elements is a set of the shared elements"
103+
description = "Intersection returns a set of all shared elements -> intersection of two sets with shared elements is a set of the shared elements"
94104

95105
[c5e6e2e4-50e9-4bc2-b89f-c518f015b57e]
96-
description = "difference of two empty sets is an empty set"
106+
description = "Difference (or Complement) of a set is a set of all elements that are only in the first set -> difference of two empty sets is an empty set"
97107

98108
[2024cc92-5c26-44ed-aafd-e6ca27d6fcd2]
99-
description = "difference of empty set and non-empty set is an empty set"
109+
description = "Difference (or Complement) of a set is a set of all elements that are only in the first set -> difference of empty set and non-empty set is an empty set"
100110

101111
[e79edee7-08aa-4c19-9382-f6820974b43e]
102-
description = "difference of a non-empty set and an empty set is the non-empty set"
112+
description = "Difference (or Complement) of a set is a set of all elements that are only in the first set -> difference of a non-empty set and an empty set is the non-empty set"
103113

104114
[c5ac673e-d707-4db5-8d69-7082c3a5437e]
105-
description = "difference of two non-empty sets is a set of elements that are only in the first set"
115+
description = "Difference (or Complement) of a set is a set of all elements that are only in the first set -> difference of two non-empty sets is a set of elements that are only in the first set"
116+
117+
[20d0a38f-7bb7-4c4a-ac15-90c7392ecf2b]
118+
description = "Difference (or Complement) of a set is a set of all elements that are only in the first set -> difference removes all duplicates in the first set"
106119

107120
[c45aed16-5494-455a-9033-5d4c93589dc6]
108-
description = "union of empty sets is an empty set"
121+
description = "Union returns a set of all elements in either set -> union of empty sets is an empty set"
109122

110123
[9d258545-33c2-4fcb-a340-9f8aa69e7a41]
111-
description = "union of an empty set and non-empty set is the non-empty set"
124+
description = "Union returns a set of all elements in either set -> union of an empty set and non-empty set is the non-empty set"
112125

113126
[3aade50c-80c7-4db8-853d-75bac5818b83]
114-
description = "union of a non-empty set and empty set is the non-empty set"
127+
description = "Union returns a set of all elements in either set -> union of a non-empty set and empty set is the non-empty set"
115128

116129
[a00bb91f-c4b4-4844-8f77-c73e2e9df77c]
117-
description = "union of non-empty sets contains all unique elements"
130+
description = "Union returns a set of all elements in either set -> union of non-empty sets contains all unique elements"

exercises/practice/custom-set/custom-set.spec.js

+12
Original file line numberDiff line numberDiff line change
@@ -117,10 +117,16 @@ describe('CustomSet', () => {
117117
const actual = new CustomSet([1, 2, 3]).eql(new CustomSet([1, 2, 4]));
118118
expect(actual).toBe(false);
119119
});
120+
120121
xtest('set is not equal to larger set with same elements', () => {
121122
const actual = new CustomSet([1, 2, 3]).eql(new CustomSet([1, 2, 3, 4]));
122123
expect(actual).toBe(false);
123124
});
125+
126+
xtest('set is equal to a set constructed from an array with duplicates', () => {
127+
const actual = new CustomSet([1]).eql(new CustomSet([1, 1]));
128+
expect(actual).toBe(true);
129+
});
124130
});
125131

126132
describe('add: unique elements can be added to a set', () => {
@@ -205,6 +211,12 @@ describe('CustomSet', () => {
205211
const expected = new CustomSet([1, 3]);
206212
expect(actual.eql(expected)).toBe(true);
207213
});
214+
215+
xtest('difference removes all duplicates in the first set', () => {
216+
const actual = new CustomSet([1, 1]).difference(new CustomSet([1]));
217+
const expected = new CustomSet([]);
218+
expect(actual.eql(expected)).toBe(true);
219+
});
208220
});
209221

210222
describe('union: returns a set of all elements in either set', () => {

0 commit comments

Comments
 (0)