pub struct FixtureDatabase { /* private fields */ }Implementations§
Source§impl FixtureDatabase
impl FixtureDatabase
pub fn new() -> Self
Sourcepub fn scan_workspace(&self, root_path: &Path)
pub fn scan_workspace(&self, root_path: &Path)
Scan a workspace directory for test files and conftest.py files
Sourcepub fn analyze_file(&self, file_path: PathBuf, content: &str)
pub fn analyze_file(&self, file_path: PathBuf, content: &str)
Analyze a single Python file for fixtures using AST parsing
Sourcepub fn find_fixture_definition(
&self,
file_path: &Path,
line: u32,
character: u32,
) -> Option<FixtureDefinition>
pub fn find_fixture_definition( &self, file_path: &Path, line: u32, character: u32, ) -> Option<FixtureDefinition>
Find fixture definition for a given position in a file
Sourcepub fn get_definition_at_line(
&self,
file_path: &Path,
line: usize,
fixture_name: &str,
) -> Option<FixtureDefinition>
pub fn get_definition_at_line( &self, file_path: &Path, line: usize, fixture_name: &str, ) -> Option<FixtureDefinition>
Public method to get the fixture definition at a specific line and name Used when cursor is on a fixture definition line (not a usage)
Sourcepub fn find_fixture_at_position(
&self,
file_path: &Path,
line: u32,
character: u32,
) -> Option<String>
pub fn find_fixture_at_position( &self, file_path: &Path, line: u32, character: u32, ) -> Option<String>
Find the fixture name at a given position (either definition or usage)
Sourcepub fn find_fixture_references(&self, fixture_name: &str) -> Vec<FixtureUsage>
pub fn find_fixture_references(&self, fixture_name: &str) -> Vec<FixtureUsage>
Find all references (usages) of a fixture by name
Sourcepub fn find_references_for_definition(
&self,
definition: &FixtureDefinition,
) -> Vec<FixtureUsage>
pub fn find_references_for_definition( &self, definition: &FixtureDefinition, ) -> Vec<FixtureUsage>
Find all references (usages) that would resolve to a specific fixture definition This respects the priority rules: same file > closest conftest.py > parent conftest.py
For fixture overriding, this handles self-referencing parameters correctly: If a fixture parameter appears on the same line as a fixture definition with the same name, we exclude that definition when resolving, so it finds the parent instead.
Sourcepub fn get_undeclared_fixtures(
&self,
file_path: &Path,
) -> Vec<UndeclaredFixture>
pub fn get_undeclared_fixtures( &self, file_path: &Path, ) -> Vec<UndeclaredFixture>
Get all undeclared fixture usages for a file
Trait Implementations§
Source§impl Debug for FixtureDatabase
impl Debug for FixtureDatabase
Auto Trait Implementations§
impl Freeze for FixtureDatabase
impl !RefUnwindSafe for FixtureDatabase
impl Send for FixtureDatabase
impl Sync for FixtureDatabase
impl Unpin for FixtureDatabase
impl !UnwindSafe for FixtureDatabase
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more