let mut query = all_joins(private_message::table.into_boxed()).select(selection);
// If its unread, I only want the ones to me
- if options.unread_only.unwrap_or(false) {
+ if options.unread_only {
query = query.filter(private_message::read.eq(false));
if let Some(i) = options.creator_id {
query = query.filter(private_message::creator_id.eq(i))
#[derive(Default)]
pub struct PrivateMessageQuery {
- pub unread_only: Option<bool>,
+ pub unread_only: bool,
pub page: Option<i64>,
pub limit: Option<i64>,
pub creator_id: Option<PersonId>,
.unwrap();
let timmy_messages = PrivateMessageQuery {
- unread_only: Some(false),
+ unread_only: false,
creator_id: Option::None,
..Default::default()
}
assert_eq!(timmy_messages[2].recipient.id, timmy.id);
let timmy_unread_messages = PrivateMessageQuery {
- unread_only: Some(true),
+ unread_only: true,
creator_id: Option::None,
..Default::default()
}
assert_eq!(timmy_unread_messages[1].recipient.id, timmy.id);
let timmy_sara_messages = PrivateMessageQuery {
- unread_only: Some(false),
+ unread_only: false,
creator_id: Some(sara.id),
..Default::default()
}
assert_eq!(timmy_sara_messages[1].recipient.id, timmy.id);
let timmy_sara_unread_messages = PrivateMessageQuery {
- unread_only: Some(true),
+ unread_only: true,
creator_id: Some(sara.id),
..Default::default()
}