function test_get_returns_empty_datatableresult_on_http_error() { $fake_request_factory = new FakeRequestFactory(); $fake_response = new HttpResponse(); $fake_response->status_code = 500; $fake_response->body = "error"; $dt = new DataTable("http://example.org/store", null, $fake_request_factory); $dt->map('http://example.org/name', 'name'); $dt->select('name'); $query = $dt->get_sparql(); $fake_request = new FakeHttpRequest($fake_response); $fake_request_factory->register('GET', "http://example.org/store/services/sparql?query=" . urlencode($query) . '&output=json', $fake_request); $response = $dt->get(); $this->assertTrue(is_a($response, 'DataTableResult')); }