def __init__(self, meetup_url):
     self.http_client = HttpClient
     self.meetup_url_builder = MeetupUrlBuilder(meetup_url)
     self.response_parser = MeetupApiResponseParser
     self.request_components = self.meetup_url_builder.build_authorization_components(
     )
     self.meetup_url = self.meetup_url_builder.build_api_url()
class MeetupClient():
  def __init__(self, meetup_url):
    self.http_client = HttpClient
    self.meetup_url_builder = MeetupUrlBuilder(meetup_url)
    self.response_parser = MeetupApiResponseParser
    self.request_components = self.meetup_url_builder.build_authorization_components()
    self.meetup_url = self.meetup_url_builder.build_api_url()

  def get_meetup_info(self):
    response = self.http_client.get_response(self.meetup_url, self.request_components)
    parsed_response = self.response_parser(response).parse()
    return parsed_response

  def exists(self):
    response = self.http_client.get_response(self.meetup_url, self.request_components)
    return response.status_code == 200
class MeetupClient():
    def __init__(self, meetup_url):
        self.http_client = HttpClient
        self.meetup_url_builder = MeetupUrlBuilder(meetup_url)
        self.response_parser = MeetupApiResponseParser
        self.request_components = self.meetup_url_builder.build_authorization_components(
        )
        self.meetup_url = self.meetup_url_builder.build_api_url()

    def get_meetup_info(self):
        response = self.http_client.get_response(self.meetup_url,
                                                 self.request_components)
        parsed_response = self.response_parser(response).parse()
        return parsed_response

    def exists(self):
        response = self.http_client.get_response(self.meetup_url,
                                                 self.request_components)
        return response.status_code == 200
 def __init__(self, meetup_url):
   self.http_client = HttpClient
   self.meetup_url_builder = MeetupUrlBuilder(meetup_url)
   self.response_parser = MeetupApiResponseParser
   self.request_components = self.meetup_url_builder.build_authorization_components()
   self.meetup_url = self.meetup_url_builder.build_api_url()
 def test_builds_authorization_hash(self, mock_settings):
   mock_settings.MEETUP_KEY = "FAKE KEY"
   components = MeetupUrlBuilder(valid_meetup_url).build_authorization_components()
   expected_params = {'key': "FAKE KEY"}
   self.assertEquals(expected_params, components['params'])
 def test_build_api_url(self):
   api_url = MeetupUrlBuilder(valid_meetup_url).build_api_url()
   self.assertEquals('https://api.meetup.com/papers-we-love/events', api_url)