mirror of
https://github.com/Stremio/stremio-shell-ng.git
synced 2026-04-21 16:01:56 +00:00
fix clippy warnings and tests
This commit is contained in:
parent
dc7e3cd294
commit
e15ba04454
2 changed files with 168 additions and 167 deletions
|
|
@ -132,7 +132,7 @@ impl MainWindow {
|
||||||
hide_splash_sender.notice();
|
hide_splash_sender.notice();
|
||||||
if let Some(arg) = msg.get_params() {
|
if let Some(arg) = msg.get_params() {
|
||||||
// TODO: Make this modal dialog
|
// TODO: Make this modal dialog
|
||||||
eprintln!("Web App Error: {}", arg.to_string());
|
eprintln!("Web App Error: {}", arg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Some("open-external") => {
|
Some("open-external") => {
|
||||||
|
|
|
||||||
|
|
@ -1,166 +1,167 @@
|
||||||
use crate::stremio_app::stremio_player::communication::{
|
use crate::stremio_app::stremio_player::communication::{
|
||||||
BoolProp, CmdVal, InMsg, InMsgArgs, InMsgFn, MpvCmd, PlayerEnded, PlayerProprChange, PropKey,
|
BoolProp, CmdVal, InMsg, InMsgArgs, InMsgFn, MpvCmd, PlayerEnded, PlayerProprChange, PropKey,
|
||||||
PropVal,
|
PropVal,
|
||||||
};
|
};
|
||||||
|
use libmpv::{events::PropertyData, mpv_end_file_reason};
|
||||||
use serde_test::{assert_tokens, Token};
|
|
||||||
|
use serde_test::{assert_tokens, Token};
|
||||||
#[test]
|
|
||||||
fn propr_change_tokens() {
|
#[test]
|
||||||
let prop = "test-prop";
|
fn propr_change_tokens() {
|
||||||
let tokens: [Token; 6] = [
|
let prop = "test-prop";
|
||||||
Token::Struct {
|
let tokens: [Token; 6] = [
|
||||||
name: "PlayerProprChange",
|
Token::Struct {
|
||||||
len: 2,
|
name: "PlayerProprChange",
|
||||||
},
|
len: 2,
|
||||||
Token::Str("name"),
|
},
|
||||||
Token::None,
|
Token::Str("name"),
|
||||||
Token::Str("data"),
|
Token::None,
|
||||||
Token::None,
|
Token::Str("data"),
|
||||||
Token::StructEnd,
|
Token::None,
|
||||||
];
|
Token::StructEnd,
|
||||||
|
];
|
||||||
fn tokens_by_type(tokens: &[Token; 6], name: &'static str, val: mpv::Format, token: Token) {
|
|
||||||
let mut typed_tokens = tokens.clone();
|
fn tokens_by_type(tokens: &[Token; 6], name: &'static str, val: PropertyData, token: Token) {
|
||||||
typed_tokens[2] = Token::Str(name);
|
let mut typed_tokens = tokens.clone();
|
||||||
typed_tokens[4] = token;
|
typed_tokens[2] = Token::Str(name);
|
||||||
assert_tokens(
|
typed_tokens[4] = token;
|
||||||
&PlayerProprChange::from_name_value(name.to_string(), val),
|
assert_tokens(
|
||||||
&typed_tokens,
|
&PlayerProprChange::from_name_value(name.to_string(), val),
|
||||||
);
|
&typed_tokens,
|
||||||
}
|
);
|
||||||
tokens_by_type(&tokens, prop, mpv::Format::Flag(true), Token::Bool(true));
|
}
|
||||||
tokens_by_type(&tokens, prop, mpv::Format::Int(1), Token::F64(1.0));
|
tokens_by_type(&tokens, prop, PropertyData::Flag(true), Token::Bool(true));
|
||||||
tokens_by_type(&tokens, prop, mpv::Format::Double(1.0), Token::F64(1.0));
|
tokens_by_type(&tokens, prop, PropertyData::Int64(1), Token::F64(1.0));
|
||||||
tokens_by_type(&tokens, prop, mpv::Format::OsdStr("ok"), Token::Str("ok"));
|
tokens_by_type(&tokens, prop, PropertyData::Double(1.0), Token::F64(1.0));
|
||||||
tokens_by_type(&tokens, prop, mpv::Format::Str("ok"), Token::Str("ok"));
|
tokens_by_type(&tokens, prop, PropertyData::OsdStr("ok"), Token::Str("ok"));
|
||||||
|
tokens_by_type(&tokens, prop, PropertyData::Str("ok"), Token::Str("ok"));
|
||||||
// JSON response
|
|
||||||
tokens_by_type(
|
// JSON response
|
||||||
&tokens,
|
tokens_by_type(
|
||||||
"track-list",
|
&tokens,
|
||||||
mpv::Format::Str(r#""ok""#),
|
"track-list",
|
||||||
Token::Str("ok"),
|
PropertyData::Str(r#""ok""#),
|
||||||
);
|
Token::Str("ok"),
|
||||||
tokens_by_type(
|
);
|
||||||
&tokens,
|
tokens_by_type(
|
||||||
"video-params",
|
&tokens,
|
||||||
mpv::Format::Str(r#""ok""#),
|
"video-params",
|
||||||
Token::Str("ok"),
|
PropertyData::Str(r#""ok""#),
|
||||||
);
|
Token::Str("ok"),
|
||||||
tokens_by_type(
|
);
|
||||||
&tokens,
|
tokens_by_type(
|
||||||
"metadata",
|
&tokens,
|
||||||
mpv::Format::Str(r#""ok""#),
|
"metadata",
|
||||||
Token::Str("ok"),
|
PropertyData::Str(r#""ok""#),
|
||||||
);
|
Token::Str("ok"),
|
||||||
}
|
);
|
||||||
|
}
|
||||||
#[test]
|
|
||||||
fn ended_tokens() {
|
#[test]
|
||||||
let tokens: [Token; 4] = [
|
fn ended_tokens() {
|
||||||
Token::Struct {
|
let tokens: [Token; 4] = [
|
||||||
name: "PlayerEnded",
|
Token::Struct {
|
||||||
len: 1,
|
name: "PlayerEnded",
|
||||||
},
|
len: 1,
|
||||||
Token::Str("reason"),
|
},
|
||||||
Token::None,
|
Token::Str("reason"),
|
||||||
Token::StructEnd,
|
Token::None,
|
||||||
];
|
Token::StructEnd,
|
||||||
let mut typed_tokens = tokens.clone();
|
];
|
||||||
typed_tokens[2] = Token::Str("error");
|
let mut typed_tokens = tokens.clone();
|
||||||
assert_tokens(
|
typed_tokens[2] = Token::Str("error");
|
||||||
&PlayerEnded::from_end_reason(mpv::EndFileReason::MPV_END_FILE_REASON_ERROR),
|
assert_tokens(
|
||||||
&typed_tokens,
|
&PlayerEnded::from_end_reason(mpv_end_file_reason::Error),
|
||||||
);
|
&typed_tokens,
|
||||||
let mut typed_tokens = tokens.clone();
|
);
|
||||||
typed_tokens[2] = Token::Str("quit");
|
let mut typed_tokens = tokens.clone();
|
||||||
assert_tokens(
|
typed_tokens[2] = Token::Str("quit");
|
||||||
&PlayerEnded::from_end_reason(mpv::EndFileReason::MPV_END_FILE_REASON_QUIT),
|
assert_tokens(
|
||||||
&typed_tokens,
|
&PlayerEnded::from_end_reason(mpv_end_file_reason::Quit),
|
||||||
);
|
&typed_tokens,
|
||||||
}
|
);
|
||||||
|
}
|
||||||
#[test]
|
|
||||||
fn ob_propr_tokens() {
|
#[test]
|
||||||
assert_tokens(
|
fn ob_propr_tokens() {
|
||||||
&InMsg(
|
assert_tokens(
|
||||||
InMsgFn::MpvObserveProp,
|
&InMsg(
|
||||||
InMsgArgs::ObProp(PropKey::Bool(BoolProp::Pause)),
|
InMsgFn::MpvObserveProp,
|
||||||
),
|
InMsgArgs::ObProp(PropKey::Bool(BoolProp::Pause)),
|
||||||
&[
|
),
|
||||||
Token::TupleStruct {
|
&[
|
||||||
name: "InMsg",
|
Token::TupleStruct {
|
||||||
len: 2,
|
name: "InMsg",
|
||||||
},
|
len: 2,
|
||||||
Token::Str("mpv-observe-prop"),
|
},
|
||||||
Token::Str("pause"),
|
Token::Str("mpv-observe-prop"),
|
||||||
Token::TupleStructEnd,
|
Token::Str("pause"),
|
||||||
],
|
Token::TupleStructEnd,
|
||||||
);
|
],
|
||||||
}
|
);
|
||||||
|
}
|
||||||
#[test]
|
|
||||||
fn set_propr_tokens() {
|
#[test]
|
||||||
assert_tokens(
|
fn set_propr_tokens() {
|
||||||
&InMsg(
|
assert_tokens(
|
||||||
InMsgFn::MpvSetProp,
|
&InMsg(
|
||||||
InMsgArgs::StProp(PropKey::Bool(BoolProp::Pause), PropVal::Bool(true)),
|
InMsgFn::MpvSetProp,
|
||||||
),
|
InMsgArgs::StProp(PropKey::Bool(BoolProp::Pause), PropVal::Bool(true)),
|
||||||
&[
|
),
|
||||||
Token::TupleStruct {
|
&[
|
||||||
name: "InMsg",
|
Token::TupleStruct {
|
||||||
len: 2,
|
name: "InMsg",
|
||||||
},
|
len: 2,
|
||||||
Token::Str("mpv-set-prop"),
|
},
|
||||||
Token::Tuple { len: 2 },
|
Token::Str("mpv-set-prop"),
|
||||||
Token::Str("pause"),
|
Token::Tuple { len: 2 },
|
||||||
Token::Bool(true),
|
Token::Str("pause"),
|
||||||
Token::TupleEnd,
|
Token::Bool(true),
|
||||||
Token::TupleStructEnd,
|
Token::TupleEnd,
|
||||||
],
|
Token::TupleStructEnd,
|
||||||
);
|
],
|
||||||
}
|
);
|
||||||
|
}
|
||||||
#[test]
|
|
||||||
fn command_stop_tokens() {
|
#[test]
|
||||||
assert_tokens(
|
fn command_stop_tokens() {
|
||||||
&InMsg(
|
assert_tokens(
|
||||||
InMsgFn::MpvCommand,
|
&InMsg(
|
||||||
InMsgArgs::Cmd(CmdVal::Single((MpvCmd::Stop,))),
|
InMsgFn::MpvCommand,
|
||||||
),
|
InMsgArgs::Cmd(CmdVal::Single((MpvCmd::Stop,))),
|
||||||
&[
|
),
|
||||||
Token::TupleStruct {
|
&[
|
||||||
name: "InMsg",
|
Token::TupleStruct {
|
||||||
len: 2,
|
name: "InMsg",
|
||||||
},
|
len: 2,
|
||||||
Token::Str("mpv-command"),
|
},
|
||||||
Token::Tuple { len: 1 },
|
Token::Str("mpv-command"),
|
||||||
Token::Str("stop"),
|
Token::Tuple { len: 1 },
|
||||||
Token::TupleEnd,
|
Token::Str("stop"),
|
||||||
Token::TupleStructEnd,
|
Token::TupleEnd,
|
||||||
],
|
Token::TupleStructEnd,
|
||||||
);
|
],
|
||||||
}
|
);
|
||||||
|
}
|
||||||
#[test]
|
|
||||||
fn command_loadfile_tokens() {
|
#[test]
|
||||||
assert_tokens(
|
fn command_loadfile_tokens() {
|
||||||
&InMsg(
|
assert_tokens(
|
||||||
InMsgFn::MpvCommand,
|
&InMsg(
|
||||||
InMsgArgs::Cmd(CmdVal::Double(MpvCmd::Loadfile, "some_file".to_string())),
|
InMsgFn::MpvCommand,
|
||||||
),
|
InMsgArgs::Cmd(CmdVal::Double(MpvCmd::Loadfile, "some_file".to_string())),
|
||||||
&[
|
),
|
||||||
Token::TupleStruct {
|
&[
|
||||||
name: "InMsg",
|
Token::TupleStruct {
|
||||||
len: 2,
|
name: "InMsg",
|
||||||
},
|
len: 2,
|
||||||
Token::Str("mpv-command"),
|
},
|
||||||
Token::Tuple { len: 2 },
|
Token::Str("mpv-command"),
|
||||||
Token::Str("loadfile"),
|
Token::Tuple { len: 2 },
|
||||||
Token::Str("some_file"),
|
Token::Str("loadfile"),
|
||||||
Token::TupleEnd,
|
Token::Str("some_file"),
|
||||||
Token::TupleStructEnd,
|
Token::TupleEnd,
|
||||||
],
|
Token::TupleStructEnd,
|
||||||
);
|
],
|
||||||
}
|
);
|
||||||
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue