Commit Graph

223 Commits

Author SHA1 Message Date
Shinokuni c26a2da6a7 Refactor and update gradle dependencies 2020-10-06 22:45:19 +02:00
Shinokuni b8219b5dde Clean LibUtils class 2020-10-06 22:20:53 +02:00
Shinokuni b6d4f9296d Move isRSSType() method to LocalRSSHelper 2020-10-06 22:15:19 +02:00
Shinokuni 6874ef2452 If a response doesn't have a content-type header, throw UnknownFormatException instead of ParseException 2020-10-05 22:24:47 +02:00
Shinokuni ec53cbd683 Fix content-type not being parsed when getting url rss type 2020-10-05 22:18:02 +02:00
Shinokuni cc17c8884b Add tests for JsonReaderExtensions 2020-10-04 23:13:37 +02:00
Shinokuni 8304e7709f Add tests for method LocalRSSDataSource.handleSpecialCases() 2020-10-04 22:53:00 +02:00
Shinokuni 63497bd049 Always parse feed and items in the same time to detect malformed feeds 2020-10-04 22:17:52 +02:00
Shinokuni 101753a1a7 Improve some RSS2 items tests 2020-10-03 16:29:15 +02:00
Shinokuni ca3efd4509 Add support for media:content element type attribute 2020-10-02 19:46:40 +02:00
Shinokuni 6733890c16 Improve jsonfeed items tests and fallback to current date time if it is missing 2020-10-02 19:08:12 +02:00
Shinokuni 5c4cc81628 Fallback to current date time if it is missing for RSS1 and ATOM items 2020-10-02 18:53:52 +02:00
Shinokuni 10a7b99e59 Fallback to current date time if a RSS2 item doesn't have any date 2020-10-01 21:17:51 +02:00
Shinokuni e41ab29264 Rename DateUtils.stringToLocalDateTime() to parse() 2020-10-01 19:38:48 +02:00
Shinokuni d4e546b6c1 Fix rss url parsing bug 2020-10-01 19:29:59 +02:00
Shinokuni 6f2ff36ece Add tests for Konsumer.nullableTextRecursively() 2020-09-30 18:10:18 +02:00
Shinokuni 872a894db0 Replace RSS2 atom:link element value by response url, as atom:link element is unreliable 2020-09-29 23:30:51 +02:00
Shinokuni 7eecbc8e8b Check item link nullabilty before validateItem() in RSS1ItemsAdapter as item link is used as guid 2020-09-29 23:16:26 +02:00
Shinokuni 9027a1c140 Add tests for Konsume-xml extensions 2020-09-29 23:08:22 +02:00
Shinokuni 2bfb061f48 Treat empty strings as null values in jsonfeed adapters 2020-09-29 22:37:16 +02:00
Shinokuni d958dcbf04 Simplify ATOMItemsAdapter fromXml method 2020-09-29 22:23:54 +02:00
Shinokuni 2bbc8c3e10 Add test for RSS2 media:group element 2020-09-29 22:18:56 +02:00
Shinokuni f6f5f27dd4 Fix RSS2 items tests 2020-09-29 11:29:22 +02:00
Shinokuni 3c68fafd8e Set a global limit for the authors concatenation 2020-09-28 14:34:06 +02:00
Shinokuni bcedd025ba Add xml content type detection for RSS1 2020-09-26 13:32:30 +02:00
Shinokuni a4d6139848 Parse content:encoded element in RSS1 items 2020-09-25 14:34:19 +02:00
Shinokuni de383d5e7d Parse recursively items content/description 2020-09-25 13:50:00 +02:00
Shinokuni 847739c559 Rename rss assets folder to rss2 2020-09-23 22:39:12 +02:00
Shinokuni 22fe77d5cf Concatenate jsonfeed authors when they are several 2020-09-23 22:29:47 +02:00
Shinokuni c742c4fbf2 Add adapter for RSS1 items 2020-09-23 22:02:41 +02:00
Shinokuni 694d684223 Add adapter for RSS1 feed 2020-09-23 18:57:53 +02:00
Shinokuni 963350d1dd Prepare files for the addition of RSS1 adapters 2020-09-20 19:00:49 +02:00
Shinokuni cb41f3c7ac Catch JSONFeedAdapter exceptions 2020-09-20 18:48:43 +02:00
Shinokuni 694ff6331e Add tests for XmlAdapter 2020-09-20 18:44:55 +02:00
Shinokuni de21a308b6 Fix LocalRSSHelper unit tests 2020-09-20 18:22:53 +02:00
Shinokuni 5998fa9126 Delete unused code 2020-09-20 18:17:43 +02:00
Shinokuni 6a1ddaeabb Use LocalRSSDataSource isUrlRSSResource 2020-09-20 18:12:05 +02:00
Shinokuni 581de2e1dd Use nullable attributes in ATOM adapters 2020-09-19 18:50:23 +02:00
Shinokuni 0eb518d692 Ignore media content sub elements 2020-09-19 17:25:36 +02:00
Shinokuni ccce0a810d Fix some RSS2 parsing issues 2020-09-18 14:12:07 +02:00
Shinokuni f6f8807b3a Preserve feeds elements whitespaces 2020-09-17 22:17:58 +02:00
Shinokuni 82c29d0732 Use new LocalRSSDataSource in LocalFeedRepository 2020-09-17 22:15:33 +02:00
Shinokuni 838768800a Handle the absence of some tags in RSS2 and ATOM feeds 2020-09-17 22:11:05 +02:00
Shinokuni 4b999e9fd6 Add jsonfeed parsing in LocalRSSDataSource 2020-09-16 13:57:45 +02:00
Shinokuni ca29c4acb0 Add adapter for jsonfeed items 2020-09-15 23:30:56 +02:00
Shinokuni 592fa4603a Add support for jsonfeed new mime-type : application/feed+json 2020-09-15 13:51:17 +02:00
Shinokuni c9c316b579 Add adapter for parsing jsonfeed feed 2020-09-15 13:48:52 +02:00
Shinokuni 0c48bd2adb Add adapter for parsing atom entries 2020-09-14 19:41:10 +02:00
Shinokuni 5c342a45b6 Add adapter for parsing atom feed 2020-09-14 17:56:25 +02:00
Shinokuni 8b4b7b0f1c Fix opml parser tests 2020-09-13 15:33:06 +02:00
Shinokuni 156601e0c5 Use multiple streams based on a byteArray for parsing the body response 2020-09-13 15:15:42 +02:00
Shinokuni 15e1723893 Move cleanText method to api package 2020-09-13 12:38:51 +02:00
Shinokuni 8e5900833b Support multiple creator elements in RSS items 2020-09-13 12:28:33 +02:00
Shinokuni 20e814f36d Add adapter for RSS item parsing 2020-09-12 19:34:03 +02:00
Shinokuni 4bf56b8f7f Use UnknownFormatException instead of ParseException for some cases 2020-09-12 12:02:03 +02:00
Shinokuni 8089d9ae6c Start replacing simplexml with konsume-xml by parsing RSS feed channel with it 2020-09-11 22:53:50 +02:00
Shinokuni 752135621d Move DateUtils in api package 2020-08-30 16:39:08 +02:00
Shinokuni 4e27a0b86f Add some unit tests for RSS type and content guess methods 2020-08-28 22:50:53 +02:00
Shinokuni 51cea7c4c2 Add data source for local rss, with tests 2020-08-25 23:35:19 +02:00
Shinokuni 355b5a4375 Add new helper class to get RSS feed type, with tests 2020-08-24 21:38:46 +02:00
Shinokuni 594a0a67fa Use more mime types to open opml files 2020-08-16 23:04:26 +02:00
Shinokuni 3657f740df Add another read OPML test 2020-08-10 23:31:10 +02:00
Shinokuni ab86bcbcc2 Add write opml test 2020-08-08 22:40:23 +02:00
Shinokuni 5fe10a848c Close streams at end of tests 2020-08-04 15:23:57 +02:00
Shinokuni 7976140834 Test opml version before parsing 2020-08-04 14:08:21 +02:00
Shinokuni e92367bbc1 Add test for OPML read case 2020-08-03 23:45:21 +02:00
Shinokuni b3dd60e1fb Add support for OPML sub outlines 2020-08-03 23:43:55 +02:00
Shinokuni f6cfa52bc0 OPML head tag isn't required 2020-08-03 23:41:37 +02:00
Shinokuni ea9739a19a Delete :api sample tests 2020-08-03 23:23:31 +02:00
Shinokuni f014284316 Merge OPMLMatcher code into OPMLParser 2020-08-02 15:16:05 +02:00
Shinokuni 1695c3baf6 Fix webview crash in lollipop 2020-07-28 14:09:27 +02:00
Shinokuni 4956a7f3b9 Forgot changed imports 2020-07-19 11:16:24 +02:00
Shinokuni 295a34203e Rename module readropslibrary to api 2020-07-19 10:40:53 +02:00