aboutsummaryrefslogtreecommitdiff
path: root/CST 126/UnitTester/UnitTester.cpp
diff options
context:
space:
mode:
authorrPatrickWarner <[email protected]>2024-05-22 19:07:00 -0700
committerrPatrickWarner <[email protected]>2024-05-22 19:07:00 -0700
commit9f56dcbbf0f57dd00b60fbff4871adcf8bb3ddc8 (patch)
tree87103f1b794f777e9697cf2ee32d2f398fde807f /CST 126/UnitTester/UnitTester.cpp
parentmore unit tests (diff)
downloadhomework-1-reecepwarner-9f56dcbbf0f57dd00b60fbff4871adcf8bb3ddc8.tar.xz
homework-1-reecepwarner-9f56dcbbf0f57dd00b60fbff4871adcf8bb3ddc8.zip
unit tests added
Diffstat (limited to 'CST 126/UnitTester/UnitTester.cpp')
-rw-r--r--CST 126/UnitTester/UnitTester.cpp199
1 files changed, 184 insertions, 15 deletions
diff --git a/CST 126/UnitTester/UnitTester.cpp b/CST 126/UnitTester/UnitTester.cpp
index 47be36c..1ad15fd 100644
--- a/CST 126/UnitTester/UnitTester.cpp
+++ b/CST 126/UnitTester/UnitTester.cpp
@@ -27,25 +27,194 @@ namespace LinkedListUnitTests
}
TEST_METHOD(AppendingLinkedListWith5Items)
{
- SinglyLinkedList<int> LinkedList{};
- ListNode<int>* node = new ListNode<int>{ 5, nullptr };
- Append(&LinkedList, node);
- Append(&LinkedList, node);
- Append(&LinkedList, node);
- Append(&LinkedList, node);
- Append(&LinkedList, node);
+ struct SinglyLinkedList<int> LinkedList = {};
+ ListNode<int>Node1 ={ 1,nullptr };
+ ListNode<int>Node2 ={ 2,nullptr };
+ ListNode<int>Node3 ={ 3,nullptr };
+ ListNode<int>Node4 ={ 4,nullptr };
+ ListNode<int>Node5 = { 5, nullptr };
+
- Assert::AreEqual(5, LinkedList._head->_next->_next->_next->_next->_data);
- delete node;
+ bool success = Append(&LinkedList, &Node1);
+ success = Append(&LinkedList, &Node2);
+ success = Append(&LinkedList, &Node3);
+ success = Append(&LinkedList, &Node4);
+ success = Append(&LinkedList, &Node5);
+
+ Assert::AreEqual(Node1._data, LinkedList._head->_data);
+
+ ListNode<int>* TraverseNode = LinkedList._head;
+
+ for (auto i = 1; i <= 5; i++)
+ {
+ Assert::AreEqual(i, TraverseNode->_data);
+ TraverseNode = TraverseNode->_next;
+ }
+
+
}
- TEST_METHOD(DeleteFirstLinkWith0)
+ TEST_METHOD(One_Append_Clear_LinkedList_Success)
{
- SinglyLinkedList<int> LinkedList{};
- ListNode<int>* node = new ListNode<int>{};
- bool Success = RemoveFirst(&LinkedList, node);
- Assert::AreEqual(1, static_cast<int>(Success));
- delete node;
+ struct SinglyLinkedList<int> LinkedList = {};
+ ListNode<int>Node1 = { 1,nullptr };
+
+
+ bool success = Append(&LinkedList, &Node1);
+
+ Clear(&LinkedList);
+
+ Assert::AreEqual(0ull, LinkedList._size);
+ Assert::IsNull(LinkedList._head);
+
+
}
+
+
+ TEST_METHOD(Multiple_Append_Clear_LinkedList_Success)
+ {
+ struct SinglyLinkedList<int> LinkedList = {};
+ ListNode<int>Node1 = { 1,nullptr };
+ ListNode<int>Node2 = { 2,nullptr };
+ ListNode<int>Node3 = { 3,nullptr };
+ ListNode<int>Node4 = { 4,nullptr };
+ ListNode<int>Node5 = { 5,nullptr };
+
+ bool success = Append(&LinkedList, &Node1);
+ success = Append(&LinkedList, &Node2);
+ success = Append(&LinkedList, &Node3);
+ success = Append(&LinkedList, &Node4);
+ success = Append(&LinkedList, &Node5);
+
+
+ Clear(&LinkedList);
+
+ Assert::AreEqual(0ull, LinkedList._size);
+ Assert::IsNull(LinkedList._head);
+ Assert::IsNull(Node1._next);
+ Assert::IsNull(Node2._next);
+ Assert::IsNull(Node3._next);
+ Assert::IsNull(Node4._next);
+ Assert::IsNull(Node5._next);
+ }
+
+ TEST_METHOD(Insert_After_Single_LinkedList_Success)
+ {
+ //Arrange
+ struct SinglyLinkedList<int> NewList{};
+ ListNode<int> Node1 = { 1,nullptr };
+ ListNode<int>Node2 = { 2,nullptr };
+ ListNode<int>Node3 = { 3,nullptr };
+ ListNode<int>Node4 = { 4,nullptr };
+ ListNode<int>Node5 = { 5,nullptr };
+ //Act
+ bool Success = Append(&NewList, &Node1);
+ Success = Append(&NewList, &Node2);
+ Success = Append(&NewList, &Node3);
+ Success = Append(&NewList, &Node5);
+
+
+
+ ListNode<int>* TraverseNode = NewList._head;
+
+ for (auto i = 1; i < 5; i++)
+ {
+ Assert::AreEqual(i, TraverseNode->_data);
+ TraverseNode = TraverseNode->_next;
+ }
+
+ //Assert
+ //Assert that list is corret
+ }
+
+ //TEST_METHOD(DeleteFirstLinkWith0)
+ //{
+ // SinglyLinkedList<int> LinkedList{};
+ // ListNode<int>* node = new ListNode<int>{};
+ // bool Success = RemoveFirst(&LinkedList);
+ // Assert::AreEqual(1, static_cast<int>(Success));
+ // delete node;
+ //}
+ //
+ //TEST_METHOD(PREPENDLINKEDLIST)
+ //{
+
+ //}
+
+ //TEST_METHOD(ExtractFirst_LinkedList_Success)
+ //{
+ // struct SinglyLinkedList<int> NewList {};
+ // ListNode<int> Node1 = { 1,nullptr };
+ // ListNode<int>Node2 = { 2,nullptr };
+ // ListNode<int>Node3 = { 3,nullptr };
+ // ListNode<int>Node4 = { 4,nullptr };
+ // ListNode<int>Node5 = { 5,nullptr };
+
+ // ListNode<int> NodeArray[] = { Node1, Node2, Node3, Node4, Node5 };
+
+ // for (auto node : NodeArray)
+ // {
+ // Assert::IsTrue(Append(&NewList, &node));
+ // }
+
+ // ListNode<int>* Temp = Extract(&NewList, Node1._data);
+ //
+ ///* size_t NodeAddress = reinterpret_cast<size_t>(&Node1);
+ // size_t TempAddress = reinterpret_cast<size_t>(&Temp);*/
+ // //Assert::AreSame(&Node1, Temp);
+
+ //
+ //
+ // //Assert::AreEqual(&Node1, Extract(&NewList, Node1._data));
+ //
+ // //Assert::AreEqual(NodeAddress, TempAddress);
+ // //Assert::AreEqual(4ull, NewList._size);
+
+
+
+
+ // delete Temp;
+ //}
+
+
+ //TEST_METHOD(Extract_Last_LinkedList_Success)
+ //{
+ // struct SinglyLinkedList<int> NewList {};
+ // ListNode<int> Node1 = { 1,nullptr };
+ // ListNode<int>Node2 = { 2,nullptr };
+ // ListNode<int>Node3 = { 3,nullptr };
+ // ListNode<int>Node4 = { 4,nullptr };
+ // ListNode<int>Node5 = { 5,nullptr };
+
+ // ListNode<int> NodeArray[] = { Node1, Node2, Node3, Node4, Node5 };
+
+ // for (auto node : NodeArray)
+ // {
+ // Assert::IsTrue(Append(&NewList, &node));
+ // }
+
+ //}
+
+ //TEST_METHOD(Extract_Middle_LinkedList_Success)
+ //{
+ // struct SinglyLinkedList<int> NewList {};
+ // ListNode<int> Node1 = { 1,nullptr };
+ // ListNode<int>Node2 = { 2,nullptr };
+ // ListNode<int>Node3 = { 3,nullptr };
+ // ListNode<int>Node4 = { 4,nullptr };
+ // ListNode<int>Node5 = { 5,nullptr };
+
+ // ListNode<int> NodeArray[] = { Node1, Node2, Node3, Node4, Node5 };
+
+ // for (auto node : NodeArray)
+ // {
+ // Assert::IsTrue(Append(&NewList, &node));
+ // }
+
+
+
+
+ //}
+
};
}