function test_update_with_zero_removals_becomes_an_insert() { $fake_request_factory = new FakeRequestFactory(); $fake_response = new HttpResponse(); $fake_response->status_code = 200; $fake_response->body = $this->_select_result_zero_results; $query = "select ?_uri ?name where { optional {?_uri <http://example.org/name> ?name. } }"; $fake_request = new FakeHttpRequest($fake_response); $fake_request_factory->register('GET', "http://example.org/store/services/sparql?query=" . urlencode($query) . '&output=json', $fake_request); $fake_request_post = new FakeHttpRequest(new HttpResponse()); $fake_request_factory->register('POST', "http://example.org/store/meta", $fake_request_post); $dt = new DataTable("http://example.org/store", null, $fake_request_factory); $dt->map('http://example.org/name', 'name'); $dt->set('name', 'foo'); $dt->update(); $g = $dt->get_insert_graph(); $this->assertEquals($g->to_turtle(), $fake_request_post->get_body()); }