creator-level saving new files in fat
[quarnos.git] / scripts / test_collections.cpp
blobaffc42753a010f068b2ac73a6ae0dfe69562cfa0
1 #include COLLECTION_H
2 #include <iostream>
3 #include <cstdlib>
5 static int first[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
6 static int second[] = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };
7 static int third[] = { 1, 2, 3, 5, 7, 8, 9 };
8 static int deleted[] = { 0, 4, 6 };
10 int main() {
11 COLLECTION<int> data;
13 std::cout << "Test #1: Basic Operations\n";
15 std::cout << "\t* adding data\n";
16 for (int i = 0; i < 10; i++)
17 data.add(first[i]);
19 std::cout << "\t* reading data\n";
20 for (int i = 0; i < data.count; i++) {
21 if (data[i]!=first[i]) {
22 std::cout << "\t -> failed\n";
23 break;
27 std::cout << "\t* reading random data\n";
28 for (int i = 0; i < data.count; i++) {
29 int b = rand() % data.count;
30 if (data[b]!=first[b]) {
31 std::cout << "\t -> failed\n";
32 break;
36 std::cout << "\t* reverse reading data\n";
37 for (int i = 0; i < data.count; i++) {
38 if (data[data.count - i - 1]!=second[i]) {
39 std::cout << "\t -> failed\n";
40 break;
44 std::cout << "\t* removing random data\n";
45 data.remove(0);
46 data.remove(3);
47 data.remove(4);
48 for (int i = 0; i < data.count; i++) {
49 if (data[i]!=third[i]) {
50 std::cout << "\t -> failed\n";
51 break;
55 std::cout << "\t* inserting random data\n";
56 data.insert(0,deleted[0]);
57 data.insert(4,deleted[1]);
58 data.insert(6,deleted[2]);
59 for (int i = 0; i < data.count; i++) {
60 if (data[i]!=first[i]) {
61 std::cout << "\t -> failed\n";
62 break;