-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathUnitTest1.cs
More file actions
65 lines (52 loc) · 1.41 KB
/
UnitTest1.cs
File metadata and controls
65 lines (52 loc) · 1.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
using Algorithms;
namespace TestCollection;
public class UnitTest1 {
private HashStructure<int> _hashTable;
public UnitTest1() {
this._hashTable = new HashStructure<int>();
}
[Fact]
public void AddElement() {
_hashTable.Add("Nike", 25);
Assert.Equal(25, _hashTable.Get("Nike"));
}
[Fact]
public void GetElement() {
_hashTable.Add("Nike", 626);
_hashTable.Add("Bert", 63223);
_hashTable.Add("Bard", 6232);
_hashTable.Add("Fate", 1235);
var number = _hashTable.Get("Fate");
Assert.Equal(1235, number);
}
[Fact]
public void UpdateElement() {
_hashTable.Add("Nike", 25);
_hashTable.Add("Nike", 50);
Assert.Equal(50, _hashTable.Get("Nike"));
}
[Fact]
public void RemoveElement() {
_hashTable.Add("Nike", 25);
_hashTable.Remove("Nike");
Assert.Throws<KeyNotFoundException>(() =>
{
_hashTable.Get("Nike");
});
}
[Fact]
public void RemoveElement_WrongKey() {
_hashTable.Add("Nike", 25);
Assert.Throws<KeyNotFoundException>(() =>
{
_hashTable.Remove("wiequywoiryoiwyqoioqw");
});
}
[Fact]
public void AddElement_ShouldThrowInvalidKey() {
Assert.ThrowsAny<ArgumentException>(() =>
{
_hashTable.Add("", 25);
});
}
}