function test_findOneBySlug() { RemoteSyncPlugin::instance()->syncers = array(new SRTestSyncer("testType")); RemoteSyncPlugin::instance()->install(); $syncResource = new SyncResource("testType", "slug1"); $syncResource->save(); $syncResource = SyncResource::findOneForType("testType", "slug1"); $this->assertEquals($syncResource->getSlug(), "slug1"); $syncResource = SyncResource::findOneForType("testType", "otherslug"); $this->assertEquals($syncResource->getSlug(), "otherslug"); $syncResource = SyncResource::findOneForType("testType", "does_not_exist"); $this->assertEquals($syncResource, NULL); }
/** * Delete. */ public function del($args) { if (!isset($args["type"]) || !$args["type"]) { throw new Exception("Expected parameter type"); } if (!isset($args["slug"]) || !$args["slug"]) { throw new Exception("Expected parameter slug"); } $resource = SyncResource::findOneForType($args["type"], $args["slug"]); if (!$resource) { throw new Exception("Doesn't exist locally"); } $syncer = $resource->getSyncer(); $syncer->deleteResource($resource->getSlug()); if (!$resource->getBaseRevision() && $resource->id) { $resource->delete(); } return array("ok" => 1); }