add new test
This commit is contained in:
parent
5fde4ffbc0
commit
d3ae956d4f
|
@ -2,7 +2,9 @@ use std::collections::HashSet;
|
|||
|
||||
use crate::aba::{
|
||||
problems::{
|
||||
admissibility::{EnumerateAdmissibleExtensions, VerifyAdmissibleExtension},
|
||||
admissibility::{
|
||||
DecideCredulousAdmissibility, EnumerateAdmissibleExtensions, VerifyAdmissibleExtension,
|
||||
},
|
||||
conflict_free::ConflictFreeness,
|
||||
},
|
||||
Aba,
|
||||
|
@ -106,6 +108,33 @@ fn simple_admissible_example_with_defense() {
|
|||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn simple_admissible_atomic() {
|
||||
let aba = Aba::new()
|
||||
.with_assumption('a', 'p')
|
||||
.with_assumption('b', 'q')
|
||||
.with_assumption('c', 'r')
|
||||
.with_rule('p', ['b'])
|
||||
.with_rule('q', ['a', 'c']);
|
||||
let expected: Vec<HashSet<char>> =
|
||||
vec![set!(), set!('b'), set!('c'), set!('a', 'c'), set!('b', 'c')];
|
||||
let result =
|
||||
crate::aba::problems::multishot_solve(EnumerateAdmissibleExtensions::default(), &aba)
|
||||
.unwrap();
|
||||
for elem in &expected {
|
||||
assert!(
|
||||
result.contains(elem),
|
||||
"{elem:?} was expected but not found in result"
|
||||
);
|
||||
}
|
||||
for elem in &result {
|
||||
assert!(
|
||||
expected.contains(elem),
|
||||
"{elem:?} was found in the result, but is not expected!"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn a_chain_with_no_beginning() {
|
||||
// found this while grinding against ASPforABA (5aa9201)
|
||||
|
|
Loading…
Reference in a new issue