Browse Source

Implement Proto{De,En}code for WishlistIntervalResponse.

wip
Titouan Rigoudy 7 years ago
parent
commit
1848872ccc
1 changed files with 28 additions and 0 deletions
  1. +28
    -0
      src/proto/server/response.rs

+ 28
- 0
src/proto/server/response.rs View File

@ -165,6 +165,10 @@ impl ProtoEncode for ServerResponse {
encoder.encode_u32(CODE_USER_STATUS)?;
response.encode(encoder)?;
}
ServerResponse::WishlistIntervalResponse(ref response) => {
encoder.encode_u32(CODE_WISHLIST_INTERVAL)?;
response.encode(encoder)?;
}
_ => {
unimplemented!();
}
@ -241,6 +245,10 @@ impl ProtoDecode for ServerResponse {
let response = UserStatusResponse::decode(decoder)?;
ServerResponse::UserStatusResponse(response)
}
CODE_WISHLIST_INTERVAL => {
let response = WishlistIntervalResponse::decode(decoder)?;
ServerResponse::WishlistIntervalResponse(response)
}
_ => {
return Err(DecodeError::UnknownCodeError(code));
}
@ -1306,6 +1314,19 @@ impl ReadFromPacket for WishlistIntervalResponse {
}
}
impl ProtoEncode for WishlistIntervalResponse {
fn encode(&self, encoder: &mut ProtoEncoder) -> io::Result<()> {
encoder.encode_u32(self.seconds)
}
}
impl ProtoDecode for WishlistIntervalResponse {
fn decode(decoder: &mut ProtoDecoder) -> Result<Self, DecodeError> {
let seconds = decoder.decode_u32()?;
Ok(Self { seconds })
}
}
/*=======*
* TESTS *
*=======*/
@ -1525,4 +1546,11 @@ mod tests {
is_privileged: true,
}))
}
#[test]
fn roundtrip_wishlist_interval() {
roundtrip(ServerResponse::WishlistIntervalResponse(
WishlistIntervalResponse { seconds: 1337 },
))
}
}

Loading…
Cancel
Save