summaryrefslogtreecommitdiff
path: root/vendor/bytes/tests/test_take.rs
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-07-15 16:37:08 -0600
committermo khan <mo@mokhan.ca>2025-07-17 16:30:22 -0600
commit45df4d0d9b577fecee798d672695fe24ff57fb1b (patch)
tree1b99bf645035b58e0d6db08c7a83521f41f7a75b /vendor/bytes/tests/test_take.rs
parentf94f79608393d4ab127db63cc41668445ef6b243 (diff)
feat: migrate from Cedar to SpiceDB authorization system
This is a major architectural change that replaces the Cedar policy-based authorization system with SpiceDB's relation-based authorization. Key changes: - Migrate from Rust to Go implementation - Replace Cedar policies with SpiceDB schema and relationships - Switch from envoy `ext_authz` with Cedar to SpiceDB permission checks - Update build system and dependencies for Go ecosystem - Maintain Envoy integration for external authorization This change enables more flexible permission modeling through SpiceDB's Google Zanzibar inspired relation-based system, supporting complex hierarchical permissions that were difficult to express in Cedar. Breaking change: Existing Cedar policies and Rust-based configuration will no longer work and need to be migrated to SpiceDB schema.
Diffstat (limited to 'vendor/bytes/tests/test_take.rs')
-rw-r--r--vendor/bytes/tests/test_take.rs84
1 files changed, 0 insertions, 84 deletions
diff --git a/vendor/bytes/tests/test_take.rs b/vendor/bytes/tests/test_take.rs
deleted file mode 100644
index 0c0159be..00000000
--- a/vendor/bytes/tests/test_take.rs
+++ /dev/null
@@ -1,84 +0,0 @@
-#![warn(rust_2018_idioms)]
-
-use bytes::buf::Buf;
-use bytes::Bytes;
-
-#[test]
-fn long_take() {
- // Tests that get a take with a size greater than the buffer length will not
- // overrun the buffer. Regression test for #138.
- let buf = b"hello world".take(100);
- assert_eq!(11, buf.remaining());
- assert_eq!(b"hello world", buf.chunk());
-}
-
-#[test]
-fn take_copy_to_bytes() {
- let mut abcd = Bytes::copy_from_slice(b"abcd");
- let abcd_ptr = abcd.as_ptr();
- let mut take = (&mut abcd).take(2);
- let a = take.copy_to_bytes(1);
- assert_eq!(Bytes::copy_from_slice(b"a"), a);
- // assert `to_bytes` did not allocate
- assert_eq!(abcd_ptr, a.as_ptr());
- assert_eq!(Bytes::copy_from_slice(b"bcd"), abcd);
-}
-
-#[test]
-#[should_panic]
-fn take_copy_to_bytes_panics() {
- let abcd = Bytes::copy_from_slice(b"abcd");
- abcd.take(2).copy_to_bytes(3);
-}
-
-#[cfg(feature = "std")]
-#[test]
-fn take_chunks_vectored() {
- fn chain() -> impl Buf {
- Bytes::from([1, 2, 3].to_vec()).chain(Bytes::from([4, 5, 6].to_vec()))
- }
-
- {
- let mut dst = [std::io::IoSlice::new(&[]); 2];
- let take = chain().take(0);
- assert_eq!(take.chunks_vectored(&mut dst), 0);
- }
-
- {
- let mut dst = [std::io::IoSlice::new(&[]); 2];
- let take = chain().take(1);
- assert_eq!(take.chunks_vectored(&mut dst), 1);
- assert_eq!(&*dst[0], &[1]);
- }
-
- {
- let mut dst = [std::io::IoSlice::new(&[]); 2];
- let take = chain().take(3);
- assert_eq!(take.chunks_vectored(&mut dst), 1);
- assert_eq!(&*dst[0], &[1, 2, 3]);
- }
-
- {
- let mut dst = [std::io::IoSlice::new(&[]); 2];
- let take = chain().take(4);
- assert_eq!(take.chunks_vectored(&mut dst), 2);
- assert_eq!(&*dst[0], &[1, 2, 3]);
- assert_eq!(&*dst[1], &[4]);
- }
-
- {
- let mut dst = [std::io::IoSlice::new(&[]); 2];
- let take = chain().take(6);
- assert_eq!(take.chunks_vectored(&mut dst), 2);
- assert_eq!(&*dst[0], &[1, 2, 3]);
- assert_eq!(&*dst[1], &[4, 5, 6]);
- }
-
- {
- let mut dst = [std::io::IoSlice::new(&[]); 2];
- let take = chain().take(7);
- assert_eq!(take.chunks_vectored(&mut dst), 2);
- assert_eq!(&*dst[0], &[1, 2, 3]);
- assert_eq!(&*dst[1], &[4, 5, 6]);
- }
-}