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)
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)