{
collection_t* col = init_collection();
medium_t* srcdata = init_medium();
- srcdata->filearray = malloc(sizeof(file_size_t*) * 3);
- for (int i = 0; i < 3; i++) {
+ srcdata->filearray = malloc(sizeof(file_size_t*) * 4);
+ for (int i = 0; i < 4; i++) {
srcdata->filearray[i] = malloc(sizeof(file_size_t));
}
srcdata->filearray[0]->name = strdup("file a");
srcdata->filearray[0]->fsize = ONE_MB;
srcdata->filearray[0]->type = S_IFREG;
- srcdata->filearray[1]->name = strdup("file b");
+ srcdata->filearray[1]->name = strdup("file c");
srcdata->filearray[1]->fsize = ONE_MB;
srcdata->filearray[1]->type = S_IFREG;
srcdata->filearray[2]->name = strdup("bigger file");
srcdata->filearray[2]->fsize = ONE_GB;
srcdata->filearray[2]->type = S_IFREG;
- srcdata->length = 3;
+ srcdata->filearray[3]->name = strdup("file b");
+ srcdata->filearray[3]->fsize = TWO_MB;
+ srcdata->filearray[3]->type = S_IFREG;
+ srcdata->length = 4;
srcdata->freespace = TWO_MB;
split_all(srcdata, col);
assert_int_equal(srcdata->length, 0);
- assert_int_equal(col->length, 2);
+ assert_int_equal(col->length, 3);
assert_int_equal(col->disc[0]->nr, 0);
assert_int_equal(col->disc[0]->length, 1);
assert_int_equal(col->disc[0]->filearray[0]->type, S_IFREG);
assert_int_equal(col->disc[1]->nr, 1);
- assert_int_equal(col->disc[1]->length, 2);
- assert_int_equal(col->disc[1]->freespace, 0);
- assert_string_equal(col->disc[1]->filearray[0]->name, "file a");
- assert_int_equal(col->disc[1]->filearray[0]->fsize, ONE_MB);
+ assert_int_equal(col->disc[1]->length, 1);
+ assert_string_equal(col->disc[1]->filearray[0]->name, "file b");
+ assert_int_equal(col->disc[1]->filearray[0]->fsize, TWO_MB);
assert_int_equal(col->disc[1]->filearray[0]->type, S_IFREG);
- assert_string_equal(col->disc[1]->filearray[1]->name, "file b");
- assert_int_equal(col->disc[1]->filearray[1]->fsize, ONE_MB);
- assert_int_equal(col->disc[1]->filearray[1]->type, S_IFREG);
+
+ assert_int_equal(col->disc[2]->nr, 2);
+ assert_int_equal(col->disc[2]->length, 2);
+ assert_int_equal(col->disc[2]->freespace, 0);
+ assert_string_equal(col->disc[2]->filearray[0]->name, "file a");
+ assert_int_equal(col->disc[2]->filearray[0]->fsize, ONE_MB);
+ assert_int_equal(col->disc[2]->filearray[0]->type, S_IFREG);
+ assert_string_equal(col->disc[2]->filearray[1]->name, "file c");
+ assert_int_equal(col->disc[2]->filearray[1]->fsize, ONE_MB);
+ assert_int_equal(col->disc[2]->filearray[1]->type, S_IFREG);
free_collection(col);
col = NULL;