def testCommonExplicitRoot(self): entry1 = jobs_pb2.StatEntry() entry1.pathspec.path = '/foo/bar' entry1.st_size = 42 entry1.st_mode = 16877 entry2 = jobs_pb2.StatEntry() entry2.pathspec.path = '/foo/bar/baz' entry2.st_size = 42 entry2.st_mode = 33188 entry3 = jobs_pb2.StatEntry() entry3.pathspec.path = '/foo/bar/quux' entry3.st_size = 42 entry3.st_mode = 33188 sts = representer.StatEntryList([entry1, entry2, entry3]) out = io.StringIO() sts._repr_pretty_(pretty.PrettyPrinter(out), cycle=False) expected = """ /foo 📂 bar (drwxr-xr-x /foo/bar, {size}) 📄 baz (-rw-r--r-- /foo/bar/baz, {size}) 📄 quux (-rw-r--r-- /foo/bar/quux, {size}) """ expected = expected.format(size=humanize.naturalsize(42)) self.assertEqual(out.getvalue(), expected)
def testDifferentRoots(self): entry1 = jobs_pb2.StatEntry() entry1.pathspec.path = '/foo1/bar' entry1.st_size = 42 entry1.st_mode = 33188 entry2 = jobs_pb2.StatEntry() entry2.pathspec.path = '/foo2/baz' entry2.st_size = 43 entry2.st_mode = 16877 sts = representer.StatEntryList([entry1, entry2]) out = io.StringIO() sts._repr_pretty_(pretty.PrettyPrinter(out), cycle=False) expected = """ /foo1 📄 bar (-rw-r--r-- /foo1/bar, {}) /foo2 📂 baz (drwxr-xr-x /foo2/baz, {}) """ expected = expected.format(humanize.naturalsize(42), humanize.naturalsize(43)) self.assertEqual(out.getvalue(), expected)
def testSlice(self): entry1 = jobs_pb2.StatEntry() entry2 = jobs_pb2.StatEntry() sts = representer.StatEntryList([entry1, entry2]) sts = sts[:1] self.assertLen(sts, 1) self.assertIsInstance(sts, representer.StatEntryList)
def testDirectory(self): entry = jobs_pb2.StatEntry() entry.pathspec.path = '/foo/bar' entry.st_size = 42 entry.st_mode = 16877 out = io.StringIO() pp = pretty.PrettyPrinter(out) representer.stat_entry_pretty(entry, pp, cycle=False) expected = '📂 bar (drwxr-xr-x /foo/bar, {})' expected = expected.format(humanize.naturalsize(42)) self.assertEqual(out.getvalue(), expected)
def testFile(self): entry = jobs_pb2.StatEntry() entry.pathspec.path = '/foo/bar' entry.st_size = 42 entry.st_mode = 33188 out = StringIO() pp = pretty.PrettyPrinter(out) representer.stat_entry_pretty(entry, pp, cycle=False) expected = '📄 bar (-rw-r--r-- /foo/bar, {})' expected = expected.format(humanize.naturalsize(42)) self.assertEqual(out.getvalue(), expected)
def testSingleFile(self): entry = jobs_pb2.StatEntry() entry.pathspec.path = '/foo/bar' entry.st_size = 42 entry.st_mode = 33188 sts = representer.StatEntryList([entry]) out = io.StringIO() sts._repr_pretty_(pretty.PrettyPrinter(out), cycle=False) expected = """ /foo 📄 bar (-rw-r--r-- /foo/bar, {}) """ expected = expected.format(humanize.naturalsize(42)) self.assertEqual(out.getvalue(), expected)
def testFileAllPermissions(self): entry = jobs_pb2.StatEntry() entry.st_mode = 33279 self.assertEqual(stat.mode(entry), '-rwxrwxrwx')
def testFileNoPermissions(self): entry = jobs_pb2.StatEntry() entry.st_mode = 32768 self.assertEqual(stat.mode(entry), '----------')
def testSuidFile(self): entry = jobs_pb2.StatEntry() entry.st_mode = 36772 self.assertEqual(stat.mode(entry), '-rwSr-Sr-T')
def testSymlink(self): entry = jobs_pb2.StatEntry() entry.st_mode = 41471 self.assertEqual(stat.mode(entry), 'lrwxrwxrwx')
def testSymlink(self): entry = jobs_pb2.StatEntry() entry.pathspec.path = 'foo' entry.symlink = 'bar' self.assertEqual(stat.name(entry), 'foo -> bar')
def testFile(self): entry = jobs_pb2.StatEntry() entry.pathspec.path = 'foo' entry.st_mode = 33188 self.assertEqual(stat.name(entry), 'foo')
def testFile(self): entry = jobs_pb2.StatEntry() entry.st_mode = 33188 self.assertEqual(stat.icon(entry), '📄')
def testSymlinkPath(self): entry = jobs_pb2.StatEntry() entry.st_mode = 33188 entry.symlink = 'foobar' self.assertEqual(stat.icon(entry), '🔗')
def testSymlinkMode(self): entry = jobs_pb2.StatEntry() entry.st_mode = 41471 self.assertEqual(stat.icon(entry), '🔗')
def testDirectory(self): entry = jobs_pb2.StatEntry() entry.st_mode = 16877 self.assertEqual(stat.icon(entry), '📂')