Skip to main content

Root

Struct Root 

Source
pub struct Root<'suite> { /* private fields */ }
Available on crate feature fixture only.
Expand description

A temporary directory a test writes files into, alive no longer than the suite it sits in.

Every path a method takes is relative to the directory, and a path that leaves it panics.

Implementations§

Source§

impl Root<'_>

Source

pub fn path(&self) -> &Path

The absolute path of the directory.

Source

pub fn file( &self, relative: impl AsRef<Path>, body: impl AsRef<[u8]>, ) -> PathBuf

Write body to relative, creating its parent directories, and return the full path.

§Panics

When relative is absolute or climbs out with .., or the file cannot be written.

Source

pub fn read(&self, relative: impl AsRef<Path>) -> String

Read the file at relative back as text.

§Panics

When relative is absolute or climbs out with .., or the file cannot be read as UTF-8.

Trait Implementations§

Source§

impl<'suite> Debug for Root<'suite>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'suite> Forget for Root<'suite>

§

impl<'suite> Freeze for Root<'suite>

§

impl<'suite> RefUnwindSafe for Root<'suite>

§

impl<'suite> Send for Root<'suite>

§

impl<'suite> Sync for Root<'suite>

§

impl<'suite> Unpin for Root<'suite>

§

impl<'suite> UnsafeUnpin for Root<'suite>

§

impl<'suite> UnwindSafe for Root<'suite>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.