Skip to content

Commit 20bd545

Browse files
committed
add tests later
1 parent 968a387 commit 20bd545

1 file changed

Lines changed: 0 additions & 102 deletions

File tree

src/model/endpoint.rs

Lines changed: 0 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -212,105 +212,3 @@ pub fn encode_header<T: Serialize>(v: T, schema: EndpointSchema) -> Result<Strin
212212
}
213213
Ok(s)
214214
}
215-
216-
#[cfg(test)]
217-
mod tests {
218-
use super::*;
219-
use crate::libs::error_code::ErrorCode;
220-
use std::str::FromStr;
221-
222-
#[test]
223-
fn endpoint_schema_defaults_errors() {
224-
let schema: EndpointSchema = serde_json::from_value(serde_json::json!({
225-
"name": "Login",
226-
"code": 10001,
227-
"parameters": [],
228-
"returns": [],
229-
"roles": []
230-
}))
231-
.unwrap();
232-
233-
assert!(schema.errors.is_empty());
234-
}
235-
236-
#[test]
237-
fn endpoint_schema_reads_error_definitions() {
238-
let schema: EndpointSchema = serde_json::from_value(serde_json::json!({
239-
"name": "Login",
240-
"code": 10001,
241-
"parameters": [],
242-
"returns": [],
243-
"roles": [],
244-
"errors": [
245-
{
246-
"name": "WrongPassword",
247-
"code": "ErrorCode::Unauthorized",
248-
"message": "Wrong password",
249-
"fields": []
250-
},
251-
{
252-
"name": "PasswordTooShort",
253-
"code": "ErrorCode::BadRequest",
254-
"message": "Password too short",
255-
"fields": [
256-
{ "name": "min_length", "ty": "Int32" }
257-
]
258-
}
259-
]
260-
}))
261-
.unwrap();
262-
263-
assert_eq!(schema.errors.len(), 2);
264-
assert_eq!(schema.errors[0].code.variant(), "Unauthorized");
265-
assert_eq!(schema.errors[1].fields[0].name, "min_length");
266-
}
267-
268-
#[test]
269-
fn endpoint_error_code_ref_serializes_as_typed_ref() {
270-
let value = serde_json::to_value(EndpointErrorCodeRef::new("BadRequest")).unwrap();
271-
272-
assert_eq!(
273-
value,
274-
serde_json::json!({
275-
"ty": {
276-
"EnumRef": {
277-
"name": "ErrorCode"
278-
}
279-
},
280-
"variant": "BadRequest"
281-
})
282-
);
283-
284-
let parsed: EndpointErrorCodeRef = serde_json::from_value(value).unwrap();
285-
assert_eq!(parsed.variant(), "BadRequest");
286-
}
287-
288-
#[test]
289-
fn endpoint_error_code_ref_rejects_wrong_paths() {
290-
assert!(
291-
serde_json::from_value::<EndpointErrorCodeRef>(serde_json::json!("BadRequest"))
292-
.is_err()
293-
);
294-
assert!(
295-
serde_json::from_value::<EndpointErrorCodeRef>(serde_json::json!("UserRole::Admin"))
296-
.is_err()
297-
);
298-
}
299-
300-
#[test]
301-
fn error_code_parses_names_and_numeric_codes() {
302-
assert_eq!(
303-
ErrorCode::from_str("BadRequest").unwrap(),
304-
ErrorCode::BAD_REQUEST
305-
);
306-
assert_eq!(
307-
ErrorCode::from_str("BAD_REQUEST").unwrap(),
308-
ErrorCode::BAD_REQUEST
309-
);
310-
assert_eq!(
311-
ErrorCode::from_str("100777").unwrap(),
312-
ErrorCode::new(100777)
313-
);
314-
assert!(ErrorCode::from_str("not a code").is_err());
315-
}
316-
}

0 commit comments

Comments
 (0)