Skip to content

Commit f88e0ad

Browse files
committed
clippy
1 parent def0da2 commit f88e0ad

8 files changed

+293
-64
lines changed
Lines changed: 61 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
1-
use kube::CustomResource;
1+
use std::{fs::File, path::Path};
2+
3+
use insta::{assert_snapshot, glob};
4+
use kube::{
5+
CustomResource,
6+
core::{conversion::ConversionReview, response::StatusSummary},
7+
};
28
use schemars::JsonSchema;
39
use serde::{Deserialize, Serialize};
410
use stackable_versioned_macros::versioned;
@@ -57,15 +63,16 @@ pub enum Gender {
5763
Female,
5864
}
5965

60-
impl Into<String> for Gender {
61-
fn into(self) -> String {
62-
match self {
66+
impl From<Gender> for String {
67+
fn from(value: Gender) -> Self {
68+
match value {
6369
Gender::Unknown => "Unknown".to_string(),
6470
Gender::Male => "Male".to_string(),
6571
Gender::Female => "Female".to_string(),
6672
}
6773
}
6874
}
75+
6976
impl From<String> for Gender {
7077
fn from(value: String) -> Self {
7178
match value.as_str() {
@@ -76,67 +83,57 @@ impl From<String> for Gender {
7683
}
7784
}
7885

79-
#[cfg(test)]
80-
mod tests {
81-
use std::{fs::File, path::Path};
82-
83-
use insta::{assert_snapshot, glob};
84-
use kube::core::{conversion::ConversionReview, response::StatusSummary};
85-
86-
use super::Person;
87-
88-
#[test]
89-
fn pass() {
90-
glob!("./fixtures/inputs/pass/", "*.json", |path| {
91-
let (request, response) = run_for_file(path);
92-
93-
let formatted = serde_json::to_string_pretty(&response)
94-
.expect("Failed to serialize ConversionResponse");
95-
assert_snapshot!(formatted);
96-
97-
let response = response
98-
.response
99-
.expect("ConversionReview had no response!");
100-
101-
assert_eq!(
102-
response.result.status,
103-
Some(StatusSummary::Success),
104-
"File {path:?} should be converted successfully"
105-
);
106-
assert_eq!(request.request.unwrap().uid, response.uid);
107-
})
108-
}
86+
#[test]
87+
fn pass() {
88+
glob!("./fixtures/inputs/pass/", "*.json", |path| {
89+
let (request, response) = run_for_file(path);
90+
91+
let formatted = serde_json::to_string_pretty(&response)
92+
.expect("Failed to serialize ConversionResponse");
93+
assert_snapshot!(formatted);
94+
95+
let response = response
96+
.response
97+
.expect("ConversionReview had no response!");
98+
99+
assert_eq!(
100+
response.result.status,
101+
Some(StatusSummary::Success),
102+
"File {path:?} should be converted successfully"
103+
);
104+
assert_eq!(request.request.unwrap().uid, response.uid);
105+
})
106+
}
109107

110-
#[test]
111-
fn fail() {
112-
glob!("./fixtures/inputs/fail/", "*.json", |path| {
113-
let (request, response) = run_for_file(path);
114-
115-
let formatted = serde_json::to_string_pretty(&response)
116-
.expect("Failed to serialize ConversionResponse");
117-
assert_snapshot!(formatted);
118-
119-
let response = response
120-
.response
121-
.expect("ConversionReview had no response!");
122-
123-
assert_eq!(
124-
response.result.status,
125-
Some(StatusSummary::Failure),
126-
"File {path:?} should *not* be converted successfully"
127-
);
128-
if let Some(request) = &request.request {
129-
assert_eq!(request.uid, response.uid);
130-
}
131-
})
132-
}
108+
#[test]
109+
fn fail() {
110+
glob!("./fixtures/inputs/fail/", "*.json", |path| {
111+
let (request, response) = run_for_file(path);
112+
113+
let formatted = serde_json::to_string_pretty(&response)
114+
.expect("Failed to serialize ConversionResponse");
115+
assert_snapshot!(formatted);
116+
117+
let response = response
118+
.response
119+
.expect("ConversionReview had no response!");
120+
121+
assert_eq!(
122+
response.result.status,
123+
Some(StatusSummary::Failure),
124+
"File {path:?} should *not* be converted successfully"
125+
);
126+
if let Some(request) = &request.request {
127+
assert_eq!(request.uid, response.uid);
128+
}
129+
})
130+
}
133131

134-
fn run_for_file(path: &Path) -> (ConversionReview, ConversionReview) {
135-
let request: ConversionReview =
136-
serde_json::from_reader(File::open(path).expect("failed to open test file"))
137-
.expect("failed to parse ConversionReview from test file");
138-
let response = Person::try_convert(request.clone());
132+
fn run_for_file(path: &Path) -> (ConversionReview, ConversionReview) {
133+
let request: ConversionReview =
134+
serde_json::from_reader(File::open(path).expect("failed to open test file"))
135+
.expect("failed to parse ConversionReview from test file");
136+
let response = Person::try_convert(request.clone());
139137

140-
(request, response)
141-
}
138+
(request, response)
142139
}

crates/stackable-versioned/src/tests/snapshots/stackable_versioned__tests__fail@request_missing.json.snap

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/stackable-versioned/src/tests/snapshots/stackable_versioned__tests__fail@unkown_current_version.json.snap

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/stackable-versioned/src/tests/snapshots/stackable_versioned__tests__fail@unkown_desired_version.json.snap

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/stackable-versioned/src/tests/snapshots/stackable_versioned__tests__fail@unparseable_missing_field.json.snap

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/stackable-versioned/src/tests/snapshots/stackable_versioned__tests__fail@wrong_kind.json.snap

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/stackable-versioned/src/tests/snapshots/stackable_versioned__tests__pass@persons_to_v1alpha1.json.snap

Lines changed: 61 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/stackable-versioned/src/tests/snapshots/stackable_versioned__tests__pass@persons_to_v3.json.snap

Lines changed: 76 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)