Skip to content

Commit e1199e0

Browse files
committed
fix tests & clippy
1 parent 8363016 commit e1199e0

16 files changed

+48
-68
lines changed

svd-parser/src/cpu.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,6 @@ impl Parse for Cpu {
2020
.nvic_priority_bits(tree.get_child_u32("nvicPrioBits")?)
2121
.has_vendor_systick(tree.get_child_bool("vendorSystickConfig")?)
2222
.build(config.validate_level)
23-
.map_err(|e| SVDError::from(e).at(tree.id()).into())
23+
.map_err(|e| SVDError::from(e).at(tree.id()))
2424
}
2525
}

svd-parser/src/elementext.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ impl<'a, 'input> ElementExt for Node<'a, 'input> {
6969
{
7070
let k = k.as_ref();
7171
self.get_child_text_opt(k)?
72-
.ok_or_else(|| SVDError::MissingTag(format!("{}", k)).at(self.id()))
72+
.ok_or_else(|| SVDError::MissingTag(k.to_string()).at(self.id()))
7373
}
7474

7575
/// Get text contained by an XML Element

svd-parser/src/lib.rs

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,7 @@ pub fn parse(xml: &str) -> anyhow::Result<Device> {
8282
pub fn parse_with_config(xml: &str, config: &Config) -> anyhow::Result<Device> {
8383
fn get_name<'a>(node: &'a Node) -> Option<&'a str> {
8484
node.children()
85-
.filter(|t| t.has_tag_name("name"))
86-
.next()
85+
.find(|t| t.has_tag_name("name"))
8786
.and_then(|t| t.text())
8887
}
8988

@@ -103,12 +102,10 @@ pub fn parse_with_config(xml: &str, config: &Config) -> anyhow::Result<Device> {
103102
let mut res = Err(e.into());
104103
if tagname.is_empty() {
105104
res = res.with_context(|| format!("at {}", pos))
105+
} else if let Some(name) = get_name(&node) {
106+
res = res.with_context(|| format!("Parsing {} `{}` at {}", tagname, name, pos))
106107
} else {
107-
if let Some(name) = get_name(&node) {
108-
res = res.with_context(|| format!("Parsing {} `{}` at {}", tagname, name, pos))
109-
} else {
110-
res = res.with_context(|| format!("Parsing unknown {} at {}", tagname, pos))
111-
}
108+
res = res.with_context(|| format!("Parsing unknown {} at {}", tagname, pos))
112109
}
113110
for parent in node.ancestors().skip(1) {
114111
if parent.id() == NodeId::new(0) {

svd-rs/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ optional = true
3131

3232
[dev-dependencies]
3333
serde_json = "1.0"
34+
svd-parser = { version = "0.10.2", path = "../svd-parser"}
3435

3536
[[example]]
3637
name = "svd2json"

tests/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,5 @@ svd-rs = { version = "0.10.2", path = "../svd-rs"}
1111
svd-parser = { version = "0.10.2", path = "../svd-parser"}
1212
svd-encoder = { version = "0.10.2", path = "../svd-encoder"}
1313
roxmltree = "0.14.1"
14-
xmltree = "0.8"
14+
xmltree = "0.10.3"
1515
anyhow = "1.0.19"

tests/src/addressblock.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
use super::run_test;
2-
use crate::svd::AddressBlock;
2+
use crate::svd::{AddressBlock, AddressBlockUsage};
33

44
#[test]
55
fn decode_encode() {
66
let tests = vec![(
77
AddressBlock {
88
offset: 0,
99
size: 0x00000800,
10-
usage: String::from("registers"),
10+
usage: AddressBlockUsage::Registers,
1111
},
1212
"<addressBlock>
1313
<offset>0x0</offset>

tests/src/bitrange.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
use crate::new_element;
21
use crate::parse::Parse;
32
use crate::svd::{BitRange, BitRangeType};
43
use xmltree::Element;
@@ -48,7 +47,7 @@ fn decode_encode() {
4847
let tree1 = Element::parse(s.as_bytes()).unwrap();
4948
let value = BitRange::parse(&tree1).unwrap();
5049
assert_eq!(value, a, "Parsing `{}` expected `{:?}`", s, a);
51-
let mut tree2 = new_element("fake", None);
50+
let mut tree2 = Element::new("fake");
5251
tree2.children = value.encode().unwrap();
5352
assert_eq!(tree1, tree2, "Encoding {:?} expected {}", a, s);
5453
}

tests/src/cpu.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use super::run_test;
2-
use crate::svd::{Cpu, Endian};
2+
use crate::svd::{Cpu, Endian, ValidateLevel};
33

44
#[test]
55
fn decode_encode() {
@@ -12,7 +12,7 @@ fn decode_encode() {
1212
.fpu_present(true)
1313
.nvic_priority_bits(8)
1414
.has_vendor_systick(false)
15-
.build()
15+
.build(ValidateLevel::Strict)
1616
.unwrap(),
1717
"
1818
<cpu>

tests/src/dimelement.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use super::run_test;
2-
use crate::svd::DimElement;
2+
use crate::svd::{DimElement, ValidateLevel};
33

44
#[test]
55
fn decode_encode() {
@@ -8,7 +8,7 @@ fn decode_encode() {
88
.dim(100)
99
.dim_increment(4)
1010
.dim_index(Some(vec!["10".to_string(), "20".to_string()]))
11-
.build()
11+
.build(ValidateLevel::Strict)
1212
.unwrap(),
1313
"<dimElement>
1414
<dim>100</dim>

tests/src/enumeratedvalue.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use super::run_test;
2-
use crate::svd::EnumeratedValue;
2+
use crate::svd::{EnumeratedValue, ValidateLevel};
33

44
#[test]
55
fn decode_encode() {
@@ -10,7 +10,7 @@ fn decode_encode() {
1010
"Zero wait-states inserted in fetch or read transfers".to_string(),
1111
))
1212
.value(Some(0))
13-
.build()
13+
.build(ValidateLevel::Strict)
1414
.unwrap(),
1515
"
1616
<enumeratedValue>

0 commit comments

Comments
 (0)