Dev merge gfmul and XEX tasks #3
2 changed files with 18 additions and 14 deletions
|
|
@ -12,7 +12,7 @@ fn main() -> Result<()> {
|
||||||
let json = fs::read_to_string(path_to_workload).unwrap();
|
let json = fs::read_to_string(path_to_workload).unwrap();
|
||||||
let workload = kauma::utils::parse::parse_json(json)?;
|
let workload = kauma::utils::parse::parse_json(json)?;
|
||||||
|
|
||||||
let response = kauma::tasks::task_distrubute(&workload);
|
let response = kauma::tasks::task_distrubute(&workload)?;
|
||||||
println!("{}", serde_json::to_string(&response)?);
|
println!("{}", serde_json::to_string(&response)?);
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,7 @@
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|
||||||
use crate::utils::parse::{Responses, Testcase, Testcases};
|
use crate::utils::parse::{Responses, Testcase, Testcases};
|
||||||
use tasks01::{
|
use tasks01::{block2poly::block2poly, poly2block::poly2block, sea128::sea128};
|
||||||
block2poly::block2poly,
|
|
||||||
poly2block::{poly2block},
|
|
||||||
sea128::sea128,
|
|
||||||
};
|
|
||||||
|
|
||||||
use anyhow::{anyhow, Result};
|
use anyhow::{anyhow, Result};
|
||||||
use serde_json::{json, Value};
|
use serde_json::{json, Value};
|
||||||
|
|
@ -37,20 +33,24 @@ pub fn task_deploy(testcase: &Testcase) -> Result<Value> {
|
||||||
let json = json!({"output" : result});
|
let json = json!({"output" : result});
|
||||||
Ok(json)
|
Ok(json)
|
||||||
}
|
}
|
||||||
_ => Err(anyhow!("Fatal. No compatible action found")),
|
_ => Err(anyhow!(
|
||||||
|
"Fatal. No compatible action found. Json data was {:?}. Arguments were; {:?}",
|
||||||
|
testcase,
|
||||||
|
args
|
||||||
|
)),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn task_distrubute(testcases: &Testcases) -> Responses {
|
pub fn task_distrubute(testcases: &Testcases) -> Result<Responses> {
|
||||||
let mut responses: HashMap<String, Value> = HashMap::new();
|
let mut responses: HashMap<String, Value> = HashMap::new();
|
||||||
|
|
||||||
for (id, testcase) in &testcases.testcases {
|
for (id, testcase) in &testcases.testcases {
|
||||||
responses.insert(id.to_owned(), task_deploy(testcase).unwrap());
|
responses.insert(id.to_owned(), task_deploy(testcase).unwrap());
|
||||||
}
|
}
|
||||||
|
|
||||||
Responses {
|
Ok(Responses {
|
||||||
responses: responses,
|
responses: responses,
|
||||||
}
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
|
|
@ -76,20 +76,22 @@ mod tests {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_task_distribution() {
|
fn test_task_distribution() -> Result<()> {
|
||||||
let json = fs::read_to_string("src/test_json/poly2block_example.json").unwrap();
|
let json = fs::read_to_string("src/test_json/poly2block_example.json").unwrap();
|
||||||
let parsed = parse_json(json).unwrap();
|
let parsed = parse_json(json).unwrap();
|
||||||
|
|
||||||
let expected = json!({ "responses": { "b856d760-023d-4b00-bad2-15d2b6da22fe": {"block": "ARIAAAAAAAAAAAAAAAAAgA=="}}});
|
let expected = json!({ "responses": { "b856d760-023d-4b00-bad2-15d2b6da22fe": {"block": "ARIAAAAAAAAAAAAAAAAAgA=="}}});
|
||||||
|
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
serde_json::to_value(task_distrubute(&parsed)).unwrap(),
|
serde_json::to_value(task_distrubute(&parsed)?).unwrap(),
|
||||||
serde_json::to_value(expected).unwrap()
|
serde_json::to_value(expected).unwrap()
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_task_sea128_task_full() {
|
fn test_task_sea128_task_full() -> Result<()> {
|
||||||
let json = fs::read_to_string("src/test_json/sea128.json").unwrap();
|
let json = fs::read_to_string("src/test_json/sea128.json").unwrap();
|
||||||
let parsed = parse_json(json).unwrap();
|
let parsed = parse_json(json).unwrap();
|
||||||
|
|
||||||
|
|
@ -105,8 +107,10 @@ mod tests {
|
||||||
});
|
});
|
||||||
|
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
serde_json::to_value(task_distrubute(&parsed)).unwrap(),
|
serde_json::to_value(task_distrubute(&parsed)?).unwrap(),
|
||||||
serde_json::to_value(expected).unwrap()
|
serde_json::to_value(expected).unwrap()
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Ok(())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue