void testGroup_serialisation(CuTest* testCase) { cactusGroupTestSetup(); int64_t i; Name name = group_getName(group); void *vA = binaryRepresentation_makeBinaryRepresentation(group, (void(*)(void *, void(*)(const void *, size_t, size_t))) group_writeBinaryRepresentation, &i); CuAssertTrue(testCase, i > 0); group_destruct(group); void *vA2 = vA; group = group_loadFromBinaryRepresentation(&vA2, flower); free(vA); CuAssertTrue(testCase, group_getName(group) == name); CuAssertTrue(testCase, group_getFlower(group) == flower); CuAssertTrue(testCase, group_getNestedFlower(group) == nestedFlower); Group_EndIterator *iterator = group_getEndIterator(group); CuAssertTrue(testCase, group_getNextEnd(iterator) == end1); CuAssertTrue(testCase, group_getNextEnd(iterator) == end2); CuAssertTrue(testCase, group_getNextEnd(iterator) == NULL); group_destructEndIterator(iterator); cactusGroupTestTeardown(); }
int ls_cmd(int argc, char **argv) { boolean showHidden = false; int i = 2; if (argc == 1 && strcmp(argv[0], "-a") == 0) { showHidden = true; i = 0; } fs_node_t current, *node; char perm[MASK_STRING_LEN]; fs_getFsNode(¤t, tty_getCurrentTTY()->currDirectory); while ((node = readdir_fs(¤t, i)) != NULL) { // get directory i tty_setFormatToCurrTTY(video_getFormattedColor(LIGHT_BLUE, BLACK)); if (node->name[0] != '.' || (node->name[0] == '.' && showHidden)) { if (showHidden) { if (i == 0) strcpy(node->name, "."); else if (i == 1) strcpy(node->name, ".."); } mask_string(node->mask, perm); printf("%s\t%5s\t%5s", perm, user_getName(node->uid), group_getName(node->gid)); _ls_cmd_setColor(FILE_TYPE(node->mask)); printf("\t%s%s\n", node->name, _ls_cmd_EndingString(FILE_TYPE(node->mask)) ); } i++; } return 0; }
void testGroup_makeNonLeaf(CuTest *testCase) { cactusGroupTestSetup(); CuAssertTrue(testCase, group_isLeaf(group2)); end_setGroup(end4, group2); group_makeNestedFlower(group2); CuAssertTrue(testCase, !group_isLeaf(group2)); Flower *nestedFlower = group_getNestedFlower(group2); CuAssertTrue(testCase, nestedFlower != NULL); CuAssertTrue(testCase, !flower_builtBlocks(flower)); CuAssertTrue(testCase, !flower_builtTrees(flower)); CuAssertTrue(testCase, !flower_builtFaces(flower)); CuAssertTrue(testCase, flower_getName(nestedFlower) == group_getName(group2)); CuAssertTrue(testCase, flower_getParentGroup(nestedFlower) == group2); CuAssertTrue(testCase, flower_getEndNumber(nestedFlower) == 1); End *nestedEnd = flower_getFirstEnd(nestedFlower); CuAssertTrue(testCase, end_getName(end4) == end_getName(nestedEnd)); CuAssertTrue(testCase, end_getGroup(nestedEnd) != NULL); CuAssertTrue(testCase, flower_getGroupNumber(nestedFlower) == 1); CuAssertTrue(testCase, flower_isTerminal(nestedFlower)); cactusGroupTestTeardown(); }
void testGroup_getNestedFlowerName(CuTest* testCase) { cactusGroupTestSetup(); CuAssertTrue(testCase, group_getName(group) == flower_getName(nestedFlower)); cactusGroupTestTeardown(); }
static int flower_constructGroupsP(const void *o1, const void *o2) { return cactusMisc_nameCompare(group_getName((Group *) o1), group_getName((Group *) o2)); }