Struct cargo_test_support::ProjectBuilder
source · pub struct ProjectBuilder {
pub(crate) root: Project,
pub(crate) files: Vec<FileBuilder>,
pub(crate) symlinks: Vec<SymlinkBuilder>,
pub(crate) no_manifest: bool,
}
Expand description
Create a project to run tests against
- Creates a
basic_manifest
if one isn’t supplied
To get started, see:
Fields§
§root: Project
§files: Vec<FileBuilder>
§symlinks: Vec<SymlinkBuilder>
§no_manifest: bool
Implementations§
source§impl ProjectBuilder
impl ProjectBuilder
sourcepub fn target_debug_dir(&self) -> PathBuf
pub fn target_debug_dir(&self) -> PathBuf
Project’s debug dir
ex: $CARGO_TARGET_TMPDIR/cit/t0/foo/target/debug
sourcepub fn new(root: PathBuf) -> ProjectBuilder
pub fn new(root: PathBuf) -> ProjectBuilder
Create project in root
sourcepub fn at<P: AsRef<Path>>(self, path: P) -> Self
pub fn at<P: AsRef<Path>>(self, path: P) -> Self
Create project, relative to paths::root
sourcepub fn executable<B: AsRef<Path>>(self, path: B, body: &str) -> Self
pub fn executable<B: AsRef<Path>>(self, path: B, body: &str) -> Self
Adds an executable file to the project.
pub(crate) fn _file(&mut self, path: &Path, body: &str, executable: bool)
sourcepub fn symlink<T: AsRef<Path>>(self, dst: T, src: T) -> Self
pub fn symlink<T: AsRef<Path>>(self, dst: T, src: T) -> Self
Adds a symlink to a file to the project.
sourcepub fn symlink_dir<T: AsRef<Path>>(self, dst: T, src: T) -> Self
pub fn symlink_dir<T: AsRef<Path>>(self, dst: T, src: T) -> Self
Create a symlink to a directory
pub fn no_manifest(self) -> Self
pub(crate) fn rm_root(&self)
Auto Trait Implementations§
impl Freeze for ProjectBuilder
impl RefUnwindSafe for ProjectBuilder
impl Send for ProjectBuilder
impl Sync for ProjectBuilder
impl Unpin for ProjectBuilder
impl UnwindSafe for ProjectBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 80 bytes