def test_ok_write(self): self.assertEqual( action_tracer.check_access_permissions( [action_tracer.Write("writeable.txt")], allowed_writes={"writeable.txt"}), [], )
def test_ok_read(self): self.assertEqual( action_tracer.check_access_permissions( [action_tracer.Read("readable.txt")], allowed_reads={"readable.txt"}), [], )
def test_no_accesses(self): self.assertEqual( action_tracer.check_access_permissions( action_tracer.FSAccessSet(), action_tracer.AccessConstraints()), action_tracer.FSAccessSet(), )
def test_ok_write(self): self.assertEqual( action_tracer.check_access_permissions( action_tracer.FSAccessSet(writes={"writeable.txt"}), action_tracer.AccessConstraints( allowed_writes={"writeable.txt"})), action_tracer.FSAccessSet(), )
def test_forbidden_read(self): read = "unreadable.txt" self.assertEqual( action_tracer.check_access_permissions( action_tracer.FSAccessSet(reads={read}), action_tracer.AccessConstraints()), action_tracer.FSAccessSet(reads={read}), )
def test_ok_read(self): self.assertEqual( action_tracer.check_access_permissions( action_tracer.FSAccessSet(reads={"readable.txt"}), action_tracer.AccessConstraints( allowed_reads={"readable.txt"})), action_tracer.FSAccessSet(), )
def test_forbidden_writes(self): # make sure multiple violations accumulate bad_writes = [ action_tracer.Write("unwriteable.txt"), action_tracer.Write("you-shall-not-pass.txt"), ] self.assertEqual( action_tracer.check_access_permissions(bad_writes), bad_writes, )
def test_forbidden_writes(self): # make sure multiple violations accumulate bad_writes = { "unwriteable.txt", "you-shall-not-pass.txt", } self.assertEqual( action_tracer.check_access_permissions( action_tracer.FSAccessSet(writes=bad_writes), action_tracer.AccessConstraints()), action_tracer.FSAccessSet(writes=bad_writes), )
def test_read_from_temporary_writes_ok(self): temp_file = "__file.tmp" reads = {temp_file} writes = { "unwriteable.txt", temp_file, } self.assertEqual( action_tracer.check_access_permissions( action_tracer.FSAccessSet(reads=reads, writes=writes), action_tracer.AccessConstraints()), action_tracer.FSAccessSet(reads=set(), writes=writes), )
def test_forbidden_read(self): read = action_tracer.Read("unreadable.txt") self.assertEqual( action_tracer.check_access_permissions([read]), [read], )
def test_no_accesses(self): self.assertEqual( action_tracer.check_access_permissions([]), [], )