Skip to content

Commit 65fb9ea

Browse files
committed
chore(config): skip e2e config deser test in nix builds
1 parent 5a6d7e9 commit 65fb9ea

File tree

1 file changed

+22
-12
lines changed

1 file changed

+22
-12
lines changed

src/config.rs

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,8 @@ fn project_directory() -> Option<ProjectDirs> {
137137
#[optimize(speed)]
138138
fn private_key_deserialize<'de, D>(deserializer: D) -> Result<Vec<PrivateKey>, D::Error>
139139
where
140-
D: Deserializer<'de>, {
140+
D: Deserializer<'de>,
141+
{
141142
let keys = HashMap::<String, String>::deserialize(deserializer)?
142143
.into_iter()
143144
.map(|(pem_type, pem_or_path)| {
@@ -194,7 +195,8 @@ pub struct KeyBindings(pub HashMap<Mode, HashMap<Vec<KeyEvent>, Action>>);
194195
impl<'de> Deserialize<'de> for KeyBindings {
195196
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
196197
where
197-
D: Deserializer<'de>, {
198+
D: Deserializer<'de>,
199+
{
198200
let parsed_map = HashMap::<Mode, HashMap<String, Action>>::deserialize(deserializer)?;
199201

200202
let keybindings = parsed_map
@@ -389,7 +391,8 @@ pub struct Styles(pub HashMap<Mode, HashMap<String, Style>>);
389391
impl<'de> Deserialize<'de> for Styles {
390392
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
391393
where
392-
D: Deserializer<'de>, {
394+
D: Deserializer<'de>,
395+
{
393396
let parsed_map = HashMap::<Mode, HashMap<String, String>>::deserialize(deserializer)?;
394397

395398
let styles = parsed_map
@@ -557,15 +560,22 @@ mod tests {
557560

558561
#[test]
559562
fn test_config() -> Result<()> {
560-
let c = Config::new()?;
561-
assert_eq!(
562-
c.keybindings
563-
.get(&Mode::Home)
564-
.unwrap()
565-
.get(&parse_key_sequence("<q>").unwrap_or_default())
566-
.unwrap(),
567-
&Action::Quit
568-
);
563+
if option_env!("NIX_BUILD_TOP").is_none() {
564+
// Only run this test when not in a nix build environment, since
565+
// the key deserialization / generation process depends on reading
566+
// or writing to paths which there are no perms to access
567+
568+
let c = Config::new()?;
569+
assert_eq!(
570+
c.keybindings
571+
.get(&Mode::Home)
572+
.unwrap()
573+
.get(&parse_key_sequence("<q>").unwrap_or_default())
574+
.unwrap(),
575+
&Action::Quit
576+
);
577+
}
578+
569579
Ok(())
570580
}
571581

0 commit comments

Comments
 (0)