Пример #1
0
    def testPrettyPrintMode(self):

        for mode, result in [
            (0o775, "-rwxrwxr-x"),
            (0o75, "----rwxr-x"),
            (0, "----------"),
                # DIR
            (0o40775, "drwxrwxr-x"),
                # SUID
            (35232, "-rwSr-----"),
                # GID
            (34208, "-rw-r-S---"),
                # CHR
            (9136, "crw-rw---T"),
                # BLK
            (25008, "brw-rw----"),
                # FIFO
            (4516, "prw-r--r--"),
                # Socket
            (49663, "srwxrwxrwx"),
                # Sticky
            (33791, "-rwxrwxrwt"),
                # Sticky, not x
            (33784, "-rwxrwx--T"),
        ]:
            value = rdf_client_fs.StatMode(mode)
            self.assertEqual(str(value), result)
Пример #2
0
    def testExistingFileStat(self):
        bash_stat = {
            "st_ctime":
            rdfvalue.RDFDatetimeSeconds(1299502221),
            "st_rdev":
            0,
            "st_mtime":
            rdfvalue.RDFDatetimeSeconds(1284154642),
            "st_blocks":
            16,
            "st_nlink":
            1,
            "st_gid":
            0,
            "st_blksize":
            4096,
            "pathspec":
            rdf_paths.PathSpec(path="/bin/bash",
                               pathtype="OS",
                               path_options="CASE_LITERAL"),
            "st_dev":
            51713,
            "st_size":
            4874,
            "st_ino":
            1026148,
            "st_uid":
            0,
            "st_mode":
            rdf_client_fs.StatMode(33261),
            "st_atime":
            rdfvalue.RDFDatetimeSeconds(1299502220)
        }

        bash_path = os.path.join("/", self.client_name, "fs/os/c/bin/bash")
        self.assertCountEqual(self.passthrough.getattr(bash_path), bash_stat)