aboutsummaryrefslogtreecommitdiffstats
path: root/meetup
diff options
context:
space:
mode:
Diffstat (limited to 'meetup')
-rw-r--r--meetup/src/client.rs13
-rw-r--r--meetup/src/event.rs10
2 files changed, 22 insertions, 1 deletions
diff --git a/meetup/src/client.rs b/meetup/src/client.rs
index 23bf6df..9fa66dd 100644
--- a/meetup/src/client.rs
+++ b/meetup/src/client.rs
@@ -62,6 +62,7 @@ fn parse_json(json: String) -> Result<Vec<Event>> {
#[cfg(test)]
mod tests {
use super::*;
+ use event::Venue;
#[test]
fn test_parse_json_parses_event_json() {
@@ -79,6 +80,12 @@ mod tests {
link: "https://www.meetup.com/Cambridge-Hackspace/events/249620800/".to_owned(),
local_date: Some("2018-04-17".to_owned()),
local_time: Some("18:30".to_owned()),
+ venue: Some(Venue {
+ name: "Cambridge Hackspace".to_owned(),
+ address_1: "438 Somerville Avenue".to_owned(),
+ city: "Somerville".to_owned(),
+ localized_country_name: "USA".to_owned(),
+ }),
},
Event {
name: "PyCon Rehearsal Night #1".to_owned(),
@@ -86,6 +93,12 @@ mod tests {
link: "https://www.meetup.com/bostonpython/events/247552529/".to_owned(),
local_date: Some("2018-04-25".to_owned()),
local_time: Some("19:00".to_owned()),
+ venue: Some(Venue {
+ name: "VMWare".to_owned(),
+ address_1: "2 Ave de Lafayette".to_owned(),
+ city: "Boston".to_owned(),
+ localized_country_name: "USA".to_owned(),
+ }),
},
]
);
diff --git a/meetup/src/event.rs b/meetup/src/event.rs
index d25c1d2..30b3fca 100644
--- a/meetup/src/event.rs
+++ b/meetup/src/event.rs
@@ -5,7 +5,15 @@ pub struct Event {
pub link: String,
pub local_date: Option<String>,
pub local_time: Option<String>,
- // venue struct
+ pub venue: Option<Venue>,
+}
+
+#[derive(Debug, Deserialize, PartialEq)]
+pub struct Venue {
+ pub name: String,
+ pub address_1: String,
+ pub city: String,
+ pub localized_country_name: String,
}