Algorithms_in_C++ 1.0.0
Set of algorithms implemented in C++.
Loading...
Searching...
No Matches
tests Namespace Reference

Testcases to check Union of Two Arrays. More...

Functions

void test1 ()
 A Test to check an simple case.
 
void test2 ()
 A Test to check an empty vector.
 
void test3 ()
 A Test to check an invalid shift value.
 
void test4 ()
 A Test to check a very large input.
 
void test5 ()
 A Test to check a shift of zero.
 
void test6 ()
 A Test to check correct functionality with an array sorted using std::sort.
 

Detailed Description

Testcases to check Union of Two Arrays.

Testcases to check Reversal of Binary Tree.

Testcases to check intersection of Two Arrays.

Testcases to check Circular Linked List.

Function Documentation

◆ test1()

void tests::test1 ( )

A Test to check an simple case.

< Use the BinaryTree

A Test to check an edge case (two empty arrays)

A Test to check a single value.

Returns
void

A Test to check an edge case (single element reversal)

< Should print 3 4 5 1 2

< Should print 4 5 1 2 3

< Check if result is empty

< Should only print newline

< Check for equal sizes

< Ensure that there is only one element

< Check if both elements are same

< Check if result is empty

< Should only print newline

< Should print 4 5 1 2 3

< Check if result is empty

< Should only print newline

< Check for equal sizes

< Ensure that there is only one element

< Check if both elements are same

< Check if result is empty

< Should only print newline

75 {
76 std::cout << "TEST CASE 1\n";
77 std::cout << "Initialized arr = {1, 2, 3, 4, 5}\n";
78 std::cout << "Expected result: {3, 4, 5, 1, 2}\n";
79 std::vector<int32_t> arr = {1, 2, 3, 4, 5};
80 std::vector<int32_t> res = shift_left(arr, 2);
81 std::vector<int32_t> expected = {3, 4, 5, 1, 2};
82 assert(res == expected);
83 print(res); ///< Should print 3 4 5 1 2
84 std::cout << "TEST PASSED!\n\n";
85}

◆ test2()

void tests::test2 ( )

A Test to check an empty vector.

A Test to check an edge case (NULL root element)

A Test to check an edge case (one empty array)

A Test to check a few values.

Returns
void

< Should print empty newline

< Should print empty newline

< Check if result is equal to a

< Should only print newline

< Check for equal sizes

< Ensure that there is only one element

< Check if result is equal to b

< Should print 2 3

< Should print empty newline

< Check if result is equal to a

< Should only print newline

< Check for equal sizes

< Ensure that there is only one element

< Check if result is equal to b

< Should print 2 3

90 {
91 std::cout << "TEST CASE 2\n";
92 std::cout << "Initialized arr = {}\n";
93 std::cout << "Expected result: {}\n";
94 std::vector<int32_t> arr = {};
95 std::vector<int32_t> res = shift_left(arr, 2);
96 std::vector<int32_t> expected = {};
97 assert(res == expected);
98 print(res); ///< Should print empty newline
99 std::cout << "TEST PASSED!\n\n";
100}

◆ test3()

void tests::test3 ( )

A Test to check an invalid shift value.

A Test to check correct reversal of a Binary Tree.

A Test to check correct functionality with a simple test case.

A Test to check an input array.

Returns
void

< 7 > 5

< Should print empty newline

< 7 > 5

< Should print empty newline

< Check if result is correct

< Should print 6

< Check for equality

< Check for equality

< Check if result is correct

< Should print 2 3 4 6

< 7 > 5

< Should print empty newline

< Check if result is correct

< Should print 6

< Check for equality

< Check for equality

< Check if result is correct

< Should print 2 3 4 6

105 {
106 std::cout << "TEST CASE 3\n";
107 std::cout << "Initialized arr = {1, 2, 3, 4, 5}\n";
108 std::cout << "Expected result: {}\n";
109 std::vector<int32_t> arr = {1, 2, 3, 4, 5};
110 std::vector<int32_t> res = shift_left(arr, 7); ///< 7 > 5
111 std::vector<int32_t> expected = {};
112 assert(res == expected);
113 print(res); ///< Should print empty newline
114 std::cout << "TEST PASSED!\n\n";
115}

◆ test4()

void tests::test4 ( )

A Test to check a very large input.

A Test to check correct functionality with duplicate values.

A Test to check using a specific Node as the starting point.

Returns
void

< Should print {4, 6, ..., 420, 2}

< Should print {420, 2, 4, ..., 418}

< Node we will start printing from

< Check if result is correct

< Should print 4 6

< Check if result is correct

< Should print 2 3 4 6 7

< Should print {420, 2, 4, ..., 418}

< Node we will start printing from

< Check if result is correct

< Should print 4 6

< Check if result is correct

< Should print 2 3 4 6 7

120 {
121 std::cout << "TEST CASE 4\n";
122 std::cout << "Initialized arr = {2, 4, ..., 420}\n";
123 std::cout << "Expected result: {4, 6, ..., 420, 2}\n";
125 for (int i = 1; i <= 210; i++) {
126 arr.push_back(i * 2);
127 }
128 print(arr);
129 std::vector<int32_t> res = shift_left(arr, 1);
130 std::vector<int32_t> expected;
131 for (int i = 1; i < 210; i++) {
132 expected.push_back(arr[i]);
133 }
134 expected.push_back(2);
135 assert(res == expected);
136 print(res); ///< Should print {4, 6, ..., 420, 2}
137 std::cout << "TEST PASSED!\n\n";
138}
T push_back(T... args)
Here is the call graph for this function:

◆ test5()

void tests::test5 ( )

A Test to check a shift of zero.

A Test to check correct functionality with a harder test case.

A Test to check an empty list.

Returns
void

< Should print 1 2 3 4 5

< Should print 1 2 3 4 5

< Check if result is correct

< Should print 2 3 4

< Check if result is correct

< Should print 1 2 3 4 5 6 7 9

< Should print 1 2 3 4 5

< Check if result is correct

< Should print 2 3 4

< Check if result is correct

< Should print 1 2 3 4 5 6 7 9

143 {
144 std::cout << "TEST CASE 5\n";
145 std::cout << "Initialized arr = {1, 2, 3, 4, 5}\n";
146 std::cout << "Expected result: {1, 2, 3, 4, 5}\n";
147 std::vector<int32_t> arr = {1, 2, 3, 4, 5};
148 std::vector<int32_t> res = shift_left(arr, 0);
149 assert(res == arr);
150 print(res); ///< Should print 1 2 3 4 5
151 std::cout << "TEST PASSED!\n\n";
152}

◆ test6()

void tests::test6 ( )

A Test to check correct functionality with an array sorted using std::sort.

Returns
void

< Sort vector a

< Sort vector b

< Check if result is correct

< Should print 3 7

< Sort vector a

< Sort vector b

< Check if result is correct

< Should print 1 2 3 4 5 6 7 8 9 11

< Sort vector a

< Sort vector b

< Check if result is correct

< Should print 1 2 3 4 5 6 7 8 9 11

166 {
167 std::cout << "TEST CASE 6\n";
168 std::cout << "Intialized a = {1, 3, 3, 2, 5, 9, 4, 7, 3, 2} ";
169 std::cout << "b = {11, 3, 7, 8, 6}\n";
170 std::cout << "Expected result: {3, 7}\n";
171 std::vector<int32_t> a = {1, 3, 3, 2, 5, 9, 4, 7, 3, 2};
172 std::vector<int32_t> b = {11, 3, 7, 8, 6};
173 std::sort(a.begin(), a.end()); ///< Sort vector a
174 std::sort(b.begin(), b.end()); ///< Sort vector b
175 std::vector<int32_t> result = get_intersection(a, b);
176 std::vector<int32_t> expected = {3, 7};
177 assert(result == expected); ///< Check if result is correct
178 print(result); ///< Should print 3 7
179 std::cout << "TEST PASSED!\n\n";
180}
T begin(T... args)
T end(T... args)
uint64_t result(uint64_t n)
Definition fibonacci_sum.cpp:76
T sort(T... args)
Here is the call graph for this function: