Пример #1
0
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();
}
Пример #2
0
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(&current, tty_getCurrentTTY()->currDirectory);
    while ((node = readdir_fs(&current, 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;
}
Пример #3
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();
}
Пример #4
0
void testGroup_getNestedFlowerName(CuTest* testCase) {
    cactusGroupTestSetup();
    CuAssertTrue(testCase, group_getName(group) == flower_getName(nestedFlower));
    cactusGroupTestTeardown();
}
Пример #5
0
static int flower_constructGroupsP(const void *o1, const void *o2) {
    return cactusMisc_nameCompare(group_getName((Group *) o1), group_getName((Group *) o2));
}