def test_list_clients__filtered(self):
        url = (
            "{}/accounting/account/{}/users/clients?search[userids][]=1&search[userids][]=2"
            "&search[date_min]=2010-10-17&search[date_max]=2012-11-21").format(
                API_BASE_URL, self.account_id)
        httpretty.register_uri(httpretty.GET,
                               url,
                               body=json.dumps(
                                   get_fixture("list_clients_response")),
                               status=200)

        date_min = datetime(year=2010, month=10, day=17, hour=5, minute=47)
        date_max = datetime(year=2012, month=11, day=21, hour=12, minute=34)
        filter = FilterBuilder()
        filter.in_list("userid", [1, 2])

        filter.between("date", min=date_min, max=date_max)
        self.freshBooksClient.clients.list(self.account_id, builders=[filter])

        expected_params = {
            "search[date_max]": ["2012-11-21"],
            "search[date_min]": ["2010-10-17"],
            "search[userids][]": ["1", "2"]
        }
        assert httpretty.last_request().querystring == expected_params
    def test_in_list__pluralized(self):
        filter = FilterBuilder()
        filter.in_list("userid", [1, 2])

        assert filter.build() == "&search[userids][]=1&search[userids][]=2"