Search in sources :

Example 81 with Feed

use of org.olat.modules.webFeed.Feed in project openolat by klemens.

the class ItemDAOTest method loadItem.

@Test
public void loadItem() {
    OLATResource resource = JunitTestHelper.createRandomResource();
    Feed feed = feedDao.createFeedForResourcable(resource);
    dbInstance.commitAndCloseSession();
    // create an item
    Item item = itemDao.createItem(feed);
    dbInstance.commitAndCloseSession();
    // reload the item from the database
    Item reloaded = itemDao.loadItem(item.getKey());
    // check values
    assertThat(reloaded.getKey()).isEqualTo(item.getKey());
    assertThat(reloaded.getFeed()).isEqualTo(feed);
}
Also used : Item(org.olat.modules.webFeed.Item) OLATResource(org.olat.resource.OLATResource) Feed(org.olat.modules.webFeed.Feed) Test(org.junit.Test)

Example 82 with Feed

use of org.olat.modules.webFeed.Feed in project openolat by klemens.

the class ItemDAOTest method updateItem.

@Test
public void updateItem() {
    OLATResource resource = JunitTestHelper.createRandomResource();
    Feed feed = feedDao.createFeedForResourcable(resource);
    dbInstance.commitAndCloseSession();
    Identity author = JunitTestHelper.createAndPersistIdentityAsAuthor("user-1234");
    Item item = itemDao.createItem(feed);
    dbInstance.commitAndCloseSession();
    // update the item
    item.setAuthor("author");
    item.setAuthorKey(1L);
    item.setContent("content");
    item.setDescription("description");
    item.setDraft(true);
    item.setExternalLink("https://example.com/");
    item.setGuid("guid-2");
    item.setHeight(3);
    item.setModifierKey(author.getKey());
    item.setPublishDate(new Date());
    item.setTitle("tile");
    item.setWidth(5);
    Enclosure enclosure = new EnclosureImpl();
    enclosure.setExternalUrl("http://exterla.url/abc.jpg");
    enclosure.setFileName("Filename.jpg");
    enclosure.setLength(9L);
    enclosure.setType("type");
    item.setEnclosure(enclosure);
    Item updated = itemDao.updateItem(item);
    // check values
    assertThat(updated.getAuthor()).isEqualTo(item.getAuthor());
    assertThat(updated.getAuthorKey()).isEqualTo(item.getAuthorKey());
    assertThat(updated.getContent()).isEqualTo(item.getContent());
    assertThat(updated.getDescription()).isEqualTo(item.getDescription());
    assertThat(updated.isDraft()).isEqualTo(item.isDraft());
    assertThat(updated.getExternalLink()).isEqualTo(item.getExternalLink());
    assertThat(updated.getGuid()).isEqualTo(item.getGuid());
    assertThat(updated.getHeight()).isEqualTo(item.getHeight());
    assertThat(updated.getModifierKey()).isEqualTo(item.getModifierKey());
    assertThat(updated.getPublishDate()).isEqualTo(item.getPublishDate());
    assertThat(updated.getTitle()).isEqualTo(item.getTitle());
    assertThat(updated.getWidth()).isEqualTo(item.getWidth());
    assertThat(updated.getEnclosure().getExternalUrl()).isEqualTo(item.getEnclosure().getExternalUrl());
    assertThat(updated.getEnclosure().getFileName()).isEqualTo(item.getEnclosure().getFileName());
    assertThat(updated.getEnclosure().getLength()).isEqualTo(item.getEnclosure().getLength());
    assertThat(updated.getEnclosure().getType()).isEqualTo(item.getEnclosure().getType());
}
Also used : Item(org.olat.modules.webFeed.Item) OLATResource(org.olat.resource.OLATResource) Enclosure(org.olat.modules.webFeed.Enclosure) EnclosureImpl(org.olat.modules.webFeed.model.EnclosureImpl) Identity(org.olat.core.id.Identity) Date(java.util.Date) LocalDate(java.time.LocalDate) Feed(org.olat.modules.webFeed.Feed) Test(org.junit.Test)

Example 83 with Feed

use of org.olat.modules.webFeed.Feed in project openolat by klemens.

the class ItemDAOTest method loadItemByGuid_notExisting.

@Test
public void loadItemByGuid_notExisting() {
    OLATResource resource = JunitTestHelper.createRandomResource();
    Feed feed = feedDao.createFeedForResourcable(resource);
    dbInstance.commitAndCloseSession();
    // load item for a non existing guid
    Item item = itemDao.loadItemByGuid(feed.getKey(), "guid-no");
    // the item should be null
    assertThat(item).isNull();
}
Also used : Item(org.olat.modules.webFeed.Item) OLATResource(org.olat.resource.OLATResource) Feed(org.olat.modules.webFeed.Feed) Test(org.junit.Test)

Example 84 with Feed

use of org.olat.modules.webFeed.Feed in project openolat by klemens.

the class ItemDAOTest method removeItem.

@Test
public void removeItem() {
    OLATResource resource = JunitTestHelper.createRandomResource();
    Feed feed = feedDao.createFeedForResourcable(resource);
    dbInstance.commitAndCloseSession();
    // create three items
    Item item1 = itemDao.createItem(feed);
    Item item2 = itemDao.createItem(feed);
    Item item3 = itemDao.createItem(feed);
    dbInstance.commitAndCloseSession();
    // delete one item
    int numberOfDeletedItems = itemDao.removeItem(item2);
    dbInstance.commitAndCloseSession();
    // one item should be deleted
    assertThat(numberOfDeletedItems).isEqualTo(1);
    // check if one item is deleted and the two other items are still in
    // the database
    assertThat(itemDao.loadItem(item1.getKey())).isNotNull();
    assertThat(itemDao.loadItem(item2.getKey())).isNull();
    assertThat(itemDao.loadItem(item3.getKey())).isNotNull();
}
Also used : Item(org.olat.modules.webFeed.Item) OLATResource(org.olat.resource.OLATResource) Feed(org.olat.modules.webFeed.Feed) Test(org.junit.Test)

Example 85 with Feed

use of org.olat.modules.webFeed.Feed in project openolat by klemens.

the class ItemDAOTest method removeItems_Feed.

@Test
public void removeItems_Feed() {
    OLATResource resource = JunitTestHelper.createRandomResource();
    Feed feed = feedDao.createFeedForResourcable(resource);
    dbInstance.commitAndCloseSession();
    // create three items
    Item item1 = itemDao.createItem(feed);
    Item item2 = itemDao.createItem(feed);
    Item item3 = itemDao.createItem(feed);
    dbInstance.commitAndCloseSession();
    // delete all items of the feed
    int numberOfDeletedItems = itemDao.removeItems(feed);
    dbInstance.commitAndCloseSession();
    // three item should be deleted
    assertThat(numberOfDeletedItems).isEqualTo(3);
    // check if items are deleted
    assertThat(itemDao.loadItem(item1.getKey())).isNull();
    assertThat(itemDao.loadItem(item2.getKey())).isNull();
    assertThat(itemDao.loadItem(item3.getKey())).isNull();
    // the feed should still exist
    assertThat(feedDao.loadFeed(resource)).isNotNull();
}
Also used : Item(org.olat.modules.webFeed.Item) OLATResource(org.olat.resource.OLATResource) Feed(org.olat.modules.webFeed.Feed) Test(org.junit.Test)

Aggregations

Feed (org.olat.modules.webFeed.Feed)216 Test (org.junit.Test)162 Item (org.olat.modules.webFeed.Item)98 FeedImpl (org.olat.modules.webFeed.model.FeedImpl)76 OLATResource (org.olat.resource.OLATResource)72 BlogFileResource (org.olat.fileresource.types.BlogFileResource)60 ItemImpl (org.olat.modules.webFeed.model.ItemImpl)52 SyndFeed (com.rometools.rome.feed.synd.SyndFeed)36 VFSContainer (org.olat.core.util.vfs.VFSContainer)28 RSSFeed (org.olat.modules.webFeed.RSSFeed)24 Date (java.util.Date)22 RepositoryEntry (org.olat.repository.RepositoryEntry)12 OLATResourceable (org.olat.core.id.OLATResourceable)8 Path (java.nio.file.Path)6 LocalDate (java.time.LocalDate)6 VFSItem (org.olat.core.util.vfs.VFSItem)6 VFSLeaf (org.olat.core.util.vfs.VFSLeaf)6 FeedItemDocument (org.olat.modules.webFeed.search.document.FeedItemDocument)6 OlatDocument (org.olat.search.model.OlatDocument)6 IOException (java.io.IOException)4