Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-ty/src/dyn_compatibility/tests.rs')
-rw-r--r--crates/hir-ty/src/dyn_compatibility/tests.rs25
1 files changed, 14 insertions, 11 deletions
diff --git a/crates/hir-ty/src/dyn_compatibility/tests.rs b/crates/hir-ty/src/dyn_compatibility/tests.rs
index 5078e8cfaa..4ffa455084 100644
--- a/crates/hir-ty/src/dyn_compatibility/tests.rs
+++ b/crates/hir-ty/src/dyn_compatibility/tests.rs
@@ -56,18 +56,21 @@ fn check_dyn_compatibility<'a>(
continue;
};
let mut osvs = FxHashSet::default();
- _ = dyn_compatibility_with_callback(&db, trait_id, &mut |osv| {
- osvs.insert(match osv {
- DynCompatibilityViolation::SizedSelf => SizedSelf,
- DynCompatibilityViolation::SelfReferential => SelfReferential,
- DynCompatibilityViolation::Method(_, mvc) => Method(mvc),
- DynCompatibilityViolation::AssocConst(_) => AssocConst,
- DynCompatibilityViolation::GAT(_) => GAT,
- DynCompatibilityViolation::HasNonCompatibleSuperTrait(_) => {
- HasNonCompatibleSuperTrait
- }
+ let db = &db;
+ salsa::attach(db, || {
+ _ = dyn_compatibility_with_callback(db, trait_id, &mut |osv| {
+ osvs.insert(match osv {
+ DynCompatibilityViolation::SizedSelf => SizedSelf,
+ DynCompatibilityViolation::SelfReferential => SelfReferential,
+ DynCompatibilityViolation::Method(_, mvc) => Method(mvc),
+ DynCompatibilityViolation::AssocConst(_) => AssocConst,
+ DynCompatibilityViolation::GAT(_) => GAT,
+ DynCompatibilityViolation::HasNonCompatibleSuperTrait(_) => {
+ HasNonCompatibleSuperTrait
+ }
+ });
+ ControlFlow::Continue(())
});
- ControlFlow::Continue(())
});
assert_eq!(osvs, expected, "dyn-compatibility violations for `{name}` do not match;");
}