forked from wallabag/wallabag
Allow other fields to be send using API
Entry API can now have these new fields: - content - language - preview_picture - published_at Re-use the ContentProxy to be able to do the same using the web UI (in the future). htmLawed is used to clean stuff from content, I hope it’ll be enough to avoid security breach. Lower content validation when we want to update an entry with content already defined. Before, language & content_type were required. If there weren’t provided, we re-fetched the content using graby. I think these fields aren’t required for an entry to be created. So I removed them. Which means some import from the v1 export won’t be re-fetched since they provide content, url & title. Also, remove liberation link from Readability import to avoid overlaping import (from wallabag v1, which had the same link)
This commit is contained in:
@ -112,16 +112,16 @@ class WallabagV1ControllerTest extends WallabagCoreTestCase
|
||||
->get('doctrine.orm.entity_manager')
|
||||
->getRepository('WallabagCoreBundle:Entry')
|
||||
->findByUrlAndUserId(
|
||||
'https://framablog.org/2014/02/05/framabag-service-libre-gratuit-interview-developpeur/',
|
||||
'http://www.framablog.org/index.php/post/2014/02/05/Framabag-service-libre-gratuit-interview-developpeur',
|
||||
$this->getLoggedInUserId()
|
||||
);
|
||||
|
||||
$this->assertGreaterThan(1, $body = $crawler->filter('body')->extract(['_text']));
|
||||
$this->assertContains('flashes.import.notice.summary', $body[0]);
|
||||
|
||||
$this->assertNotEmpty($content->getMimetype(), 'Mimetype for http://www.framablog.org is ok');
|
||||
$this->assertNotEmpty($content->getPreviewPicture(), 'Preview picture for http://www.framablog.org is ok');
|
||||
$this->assertNotEmpty($content->getLanguage(), 'Language for http://www.framablog.org is ok');
|
||||
$this->assertEmpty($content->getMimetype(), 'Mimetype for http://www.framablog.org is empty');
|
||||
$this->assertEmpty($content->getPreviewPicture(), 'Preview picture for http://www.framablog.org is empty');
|
||||
$this->assertEmpty($content->getLanguage(), 'Language for http://www.framablog.org is empty');
|
||||
|
||||
$tags = $content->getTags();
|
||||
$this->assertContains('foot', $tags, 'It includes the "foot" tag');
|
||||
|
||||
@ -119,9 +119,9 @@ class WallabagV2ControllerTest extends WallabagCoreTestCase
|
||||
$this->getLoggedInUserId()
|
||||
);
|
||||
|
||||
$this->assertNotEmpty($content->getMimetype(), 'Mimetype for http://www.liberation.fr is ok');
|
||||
$this->assertNotEmpty($content->getPreviewPicture(), 'Preview picture for http://www.liberation.fr is ok');
|
||||
$this->assertNotEmpty($content->getLanguage(), 'Language for http://www.liberation.fr is ok');
|
||||
$this->assertEmpty($content->getMimetype(), 'Mimetype for http://www.liberation.fr is empty');
|
||||
$this->assertEmpty($content->getPreviewPicture(), 'Preview picture for http://www.liberation.fr is empty');
|
||||
$this->assertEmpty($content->getLanguage(), 'Language for http://www.liberation.fr is empty');
|
||||
|
||||
$tags = $content->getTags();
|
||||
$this->assertContains('foot', $tags, 'It includes the "foot" tag');
|
||||
|
||||
@ -67,14 +67,14 @@ class ReadabilityImportTest extends \PHPUnit_Framework_TestCase
|
||||
|
||||
public function testImport()
|
||||
{
|
||||
$readabilityImport = $this->getReadabilityImport(false, 24);
|
||||
$readabilityImport = $this->getReadabilityImport(false, 23);
|
||||
$readabilityImport->setFilepath(__DIR__.'/../fixtures/readability.json');
|
||||
|
||||
$entryRepo = $this->getMockBuilder('Wallabag\CoreBundle\Repository\EntryRepository')
|
||||
->disableOriginalConstructor()
|
||||
->getMock();
|
||||
|
||||
$entryRepo->expects($this->exactly(24))
|
||||
$entryRepo->expects($this->exactly(23))
|
||||
->method('findByUrlAndUserId')
|
||||
->willReturn(false);
|
||||
|
||||
@ -88,14 +88,14 @@ class ReadabilityImportTest extends \PHPUnit_Framework_TestCase
|
||||
->getMock();
|
||||
|
||||
$this->contentProxy
|
||||
->expects($this->exactly(24))
|
||||
->expects($this->exactly(23))
|
||||
->method('updateEntry')
|
||||
->willReturn($entry);
|
||||
|
||||
$res = $readabilityImport->import();
|
||||
|
||||
$this->assertTrue($res);
|
||||
$this->assertEquals(['skipped' => 0, 'imported' => 24, 'queued' => 0], $readabilityImport->getSummary());
|
||||
$this->assertEquals(['skipped' => 0, 'imported' => 23, 'queued' => 0], $readabilityImport->getSummary());
|
||||
}
|
||||
|
||||
public function testImportAndMarkAllAsRead()
|
||||
@ -165,7 +165,7 @@ class ReadabilityImportTest extends \PHPUnit_Framework_TestCase
|
||||
->getMock();
|
||||
|
||||
$producer
|
||||
->expects($this->exactly(24))
|
||||
->expects($this->exactly(23))
|
||||
->method('publish');
|
||||
|
||||
$readabilityImport->setProducer($producer);
|
||||
@ -173,7 +173,7 @@ class ReadabilityImportTest extends \PHPUnit_Framework_TestCase
|
||||
$res = $readabilityImport->setMarkAsRead(true)->import();
|
||||
|
||||
$this->assertTrue($res);
|
||||
$this->assertEquals(['skipped' => 0, 'imported' => 0, 'queued' => 24], $readabilityImport->getSummary());
|
||||
$this->assertEquals(['skipped' => 0, 'imported' => 0, 'queued' => 23], $readabilityImport->getSummary());
|
||||
}
|
||||
|
||||
public function testImportWithRedis()
|
||||
@ -211,7 +211,7 @@ class ReadabilityImportTest extends \PHPUnit_Framework_TestCase
|
||||
$res = $readabilityImport->setMarkAsRead(true)->import();
|
||||
|
||||
$this->assertTrue($res);
|
||||
$this->assertEquals(['skipped' => 0, 'imported' => 0, 'queued' => 24], $readabilityImport->getSummary());
|
||||
$this->assertEquals(['skipped' => 0, 'imported' => 0, 'queued' => 23], $readabilityImport->getSummary());
|
||||
|
||||
$this->assertNotEmpty($redisMock->lpop('readability'));
|
||||
}
|
||||
|
||||
@ -10,13 +10,6 @@
|
||||
"article__title": "We Looked At 167,943 Tweets & Found Out Hashtags Are Worthless",
|
||||
"archive": false
|
||||
},
|
||||
{
|
||||
"article__title": "Réfugiés: l'UE va créer 100 000 places d'accueil dans les Balkans",
|
||||
"article__url": "http://www.liberation.fr/planete/2015/10/26/refugies-l-ue-va-creer-100-000-places-d-accueil-dans-les-balkans_1408867",
|
||||
"archive": false,
|
||||
"date_added": "2016-09-08T11:55:58+0200",
|
||||
"favorite": false
|
||||
},
|
||||
{
|
||||
"article__title": "No title found",
|
||||
"article__url": "http://news.nationalgeographic.com/2016/02/160211-albatrosses-mothers-babies-animals-science/&sf20739758=1",
|
||||
|
||||
Reference in New Issue
Block a user