Skip to content

Commit e8336bd

Browse files
authored
chore(rust): minor v1 cleanup v2 prep (#1510)
1 parent b6d687f commit e8336bd

4 files changed

Lines changed: 15 additions & 9 deletions

File tree

justfile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,12 @@ ci-extract-version language tag:
6969
mlt *args:
7070
cargo run --manifest-path {{join(justfile_directory(), 'rust', 'Cargo.toml')}} --package mlt -- "$@"
7171

72+
# Run the mlt CLI tool with the given arguments from current dir.
73+
[no-cd]
74+
[positional-arguments] # avoids shell expansions
75+
mlt-rel *args:
76+
cargo run --release --manifest-path {{join(justfile_directory(), 'rust', 'Cargo.toml')}} --package mlt -- "$@"
77+
7278
# Ensure a command is available
7379
assert-cmd command:
7480
#!/usr/bin/env bash

rust/mlt-core/src/decoder/layer.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ impl<'a> Layer<'a> {
3737
let (input, value) = take(input, size)?;
3838

3939
let layer = match tag {
40-
// For now, we only support tag 0x01 layers, but more will be added soon
4140
1 => Layer::Tag01(Layer01::from_bytes(value, parser)?),
4241
tag => Layer::Unknown(Unknown { tag, value }),
4342
};
@@ -51,7 +50,7 @@ impl<'a> Layer<'a> {
5150
/// `Layer::Tag01(lazy)` and call the individual methods on [`Layer01`].
5251
pub fn decode_all(self, dec: &mut Decoder) -> MltResult<ParsedLayer<'a>> {
5352
match self {
54-
Layer::Tag01(lazy) => Ok(Layer::Tag01(lazy.decode_all(dec)?)),
53+
Layer::Tag01(v) => Ok(Layer::Tag01(v.decode_all(dec)?)),
5554
Layer::Unknown(u) => Ok(Layer::Unknown(u)),
5655
}
5756
}

rust/mlt-core/src/utils/test_helpers.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ pub fn assert_empty<T>(result: MltRefResult<T>) -> T {
2626
#[must_use]
2727
pub fn into_layer01(layer: Layer) -> Layer01 {
2828
match layer {
29-
Layer::Tag01(layer01) => layer01,
30-
Layer::Unknown(_) => panic!("expected Tag01 layer"),
29+
Layer::Tag01(v) => v,
30+
Layer::Unknown(v) => panic!("expected Tag01 layer, got Tag{:02x}", v.tag),
3131
}
3232
}
3333

rust/mlt-core/tests/unknown_layer.rs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,10 @@ fn unknown_zero_length_body() {
7373

7474
#[test]
7575
fn multiple_layers_mixed_unknown_and_tag01() {
76-
// Build two unknown layers back-to-back (tags 2 and 3, since tag=1 is Tag01).
77-
let mut raw = unknown_layer_bytes(2, b"hello");
78-
raw.extend_from_slice(&unknown_layer_bytes(3, b"world"));
76+
// Build two unknown layers back-to-back.
77+
// so use tags 10 and 11 for these "unknown" tests.
78+
let mut raw = unknown_layer_bytes(10, b"hello");
79+
raw.extend_from_slice(&unknown_layer_bytes(11, b"world"));
7980

8081
let layers = Parser::default()
8182
.parse_layers(&raw)
@@ -86,12 +87,12 @@ fn multiple_layers_mixed_unknown_and_tag01() {
8687
let Layer::Unknown(u0) = &layers[0] else {
8788
panic!("expected Unknown at index 0");
8889
};
89-
assert_eq!(u0.tag(), 2u32);
90+
assert_eq!(u0.tag(), 10);
9091
assert_eq!(u0.data(), b"hello");
9192

9293
let Layer::Unknown(u1) = &layers[1] else {
9394
panic!("expected Unknown at index 1");
9495
};
95-
assert_eq!(u1.tag(), 3u32);
96+
assert_eq!(u1.tag(), 11);
9697
assert_eq!(u1.data(), b"world");
9798
}

0 commit comments

Comments
 (0)