Code Monkey home page Code Monkey logo

google-news-reader's People

Contributors

jalsnipe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

enterstudio

google-news-reader's Issues

Tests

The first step of any TDD project is to write the test cases. I figured the best place to start with Unit Tests should be the Model and Network manager.

Network Manager

  • func fetchAllArticles()
    • Should hit the Google News RSS endpoint (http://news.google.com/?output=rss), check if the request was successful (check for success, client errors, server errors, no internet) and return an NSData representation of the RSS Feed.
  • func parseRawArticle()
    • Should take in data from fetchAllArticles() and begin to parse the data into an Article object using NSXMLParser.
  • Article model
    • Image: UIImage
    • Title: String
    • Description: String
    • Content: String
    • read: Bool
  • Part of this function should create a new Article as part of a Core Data context (main or side thread for work), and store the completed article, or fail on error.
  • There should be a method to retrieve the Article objects from Core Data (or use an NSFetchedResultsController to automatically update the table view.

[More TODO]

Article XML Model

Prototype:

<item>
    <title>Title</title>
    <link>URL</link>
    <guid isPermaLink="false">[sometag]</guid>
    <category>Category</category>
    <pubDate>[Date]</pubDate>
    <description>[HTML table]</description>
</item>

Example:

<item>
    <title>President Barack Obama Makes Birth Certificate Joke on Kenya Trip - NBCNews.com</title>
     <link>http://news.google.com/news/url?sa=t&amp;fd=R&amp;ct2=us&amp;usg=AFQjCNGohCh57MwTVufdRZDxeu5OASDb0w&amp;clid=c3a7d30bb8a4878e06b80cf16b898331&amp;cid=52778905004468&amp;ei=LSa0VaCZAoGB3gGNxoHYDQ&amp;url=http://www.nbcnews.com/politics/barack-obama/obama-makes-birth-certificate-joke-kenya-trip-n398381</link>
    <guid isPermaLink="false">tag:news.google.com,2005:cluster=52778905004468</guid>
    <category>Top Stories</category>
    <pubDate>Sat, 25 Jul 2015 21:32:00 GMT</pubDate>
    <description>&lt;table border="0" cellpadding="2" cellspacing="7" style="vertical-align:top;"&gt;&lt;tr&gt;&lt;td width="80" align="center" valign="top"&gt;&lt;font style="font-size:85%;font-family:arial,sans-serif"&gt;&lt;a href="http://news.google.com/news/url?sa=t&amp;amp;fd=R&amp;amp;ct2=us&amp;amp;usg=AFQjCNGohCh57MwTVufdRZDxeu5OASDb0w&amp;amp;clid=c3a7d30bb8a4878e06b80cf16b898331&amp;amp;cid=52778905004468&amp;amp;ei=LSa0VaCZAoGB3gGNxoHYDQ&amp;amp;url=http://www.nbcnews.com/politics/barack-obama/obama-makes-birth-certificate-joke-kenya-trip-n398381"&gt;&lt;img src="//t1.gstatic.com/images?q=tbn:ANd9GcTECW1n6u9hKEN39yJlSihz_--TJ4LmRFjGCOg97tzZakEgBvNzuF9hSvZ3cDpn0AttU4CYFrM" alt="" border="1" width="80" height="80"&gt;&lt;br&gt;&lt;font size="-2"&gt;NBCNews.com&lt;/font&gt;&lt;/a&gt;&lt;/font&gt;&lt;/td&gt;&lt;td valign="top" class="j"&gt;&lt;font style="font-size:85%;font-family:arial,sans-serif"&gt;&lt;br&gt;&lt;div style="padding-top:0.8em;"&gt;&lt;img alt="" height="1" width="1"&gt;&lt;/div&gt;&lt;div class="lh"&gt;&lt;a href="http://news.google.com/news/url?sa=t&amp;amp;fd=R&amp;amp;ct2=us&amp;amp;usg=AFQjCNGohCh57MwTVufdRZDxeu5OASDb0w&amp;amp;clid=c3a7d30bb8a4878e06b80cf16b898331&amp;amp;cid=52778905004468&amp;amp;ei=LSa0VaCZAoGB3gGNxoHYDQ&amp;amp;url=http://www.nbcnews.com/politics/barack-obama/obama-makes-birth-certificate-joke-kenya-trip-n398381"&gt;&lt;b&gt;President Barack Obama Makes Birth Certificate Joke on Kenya Trip&lt;/b&gt;&lt;/a&gt;&lt;br&gt;&lt;font size="-1"&gt;&lt;b&gt;&lt;font color="#6f6f6f"&gt;NBCNews.com&lt;/font&gt;&lt;/b&gt;&lt;/font&gt;&lt;br&gt;&lt;font size="-1"&gt;If you can&amp;#39;t beat members of the &amp;quot;birther&amp;quot; movement, join &amp;#39;em. That&amp;#39;s the approach President Barack Obama took on Saturday night in Kenya, his father&amp;#39;s homeland, when he made a wisecrack about his birthplace &#xE2;&#x20AC;&#x201D; which suspicious critics have harped on &lt;b&gt;...&lt;/b&gt;&lt;/font&gt;&lt;br&gt;&lt;font size="-1"&gt;&lt;a href="http://news.google.com/news/url?sa=t&amp;amp;fd=R&amp;amp;ct2=us&amp;amp;usg=AFQjCNEO4V8Nci6yqSLKp0MNYpgoCJcevw&amp;amp;clid=c3a7d30bb8a4878e06b80cf16b898331&amp;amp;cid=52778905004468&amp;amp;ei=LSa0VaCZAoGB3gGNxoHYDQ&amp;amp;url=http://www.haaretz.com/news/world/1.667808"&gt;In first presidential visit to Kenya, Obama chides Nairobi on gay rights &lt;b&gt;...&lt;/b&gt;&lt;/a&gt;&lt;font size="-1" color="#6f6f6f"&gt;&lt;nobr&gt;Haaretz&lt;/nobr&gt;&lt;/font&gt;&lt;/font&gt;&lt;br&gt;&lt;font size="-1"&gt;&lt;a href="http://news.google.com/news/url?sa=t&amp;amp;fd=R&amp;amp;ct2=us&amp;amp;usg=AFQjCNFzOwi_7xeH7M2f5nEtz_Y3liedQQ&amp;amp;clid=c3a7d30bb8a4878e06b80cf16b898331&amp;amp;cid=52778905004468&amp;amp;ei=LSa0VaCZAoGB3gGNxoHYDQ&amp;amp;url=http://www.nytimes.com/2015/07/26/world/africa/in-kenya-obama-hails-africas-growth-and-potential.html"&gt;Obama in Kenya: An Upbeat Tone, but Notes of Discord, Too&lt;/a&gt;&lt;font size="-1" color="#6f6f6f"&gt;&lt;nobr&gt;New York Times&lt;/nobr&gt;&lt;/font&gt;&lt;/font&gt;&lt;br&gt;&lt;font size="-1"&gt;&lt;a href="http://news.google.com/news/url?sa=t&amp;amp;fd=R&amp;amp;ct2=us&amp;amp;usg=AFQjCNHJwVR6vBEdWunKKX8LAqJGetN8Pw&amp;amp;clid=c3a7d30bb8a4878e06b80cf16b898331&amp;amp;cid=52778905004468&amp;amp;ei=LSa0VaCZAoGB3gGNxoHYDQ&amp;amp;url=http://www.cnn.com/2015/07/25/politics/obama-kenyatta-kenya-fathers/"&gt;Obama, Kenyatta&amp;#39;s fathers were political adversaries&lt;/a&gt;&lt;font size="-1" color="#6f6f6f"&gt;&lt;nobr&gt;CNN&lt;/nobr&gt;&lt;/font&gt;&lt;/font&gt;&lt;br&gt;&lt;font size="-1" class="p"&gt;&lt;a href="http://news.google.com/news/url?sa=t&amp;amp;fd=R&amp;amp;ct2=us&amp;amp;usg=AFQjCNEhoN0Qb07sfOPBZ3b5RgzCvK01ow&amp;amp;clid=c3a7d30bb8a4878e06b80cf16b898331&amp;amp;cid=52778905004468&amp;amp;ei=LSa0VaCZAoGB3gGNxoHYDQ&amp;amp;url=http://www.theguardian.com/commentisfree/2015/jul/26/barack-obama-potential-legacy"&gt;&lt;nobr&gt;The Guardian&lt;/nobr&gt;&lt;/a&gt;&amp;nbsp;-&lt;a href="http://news.google.com/news/url?sa=t&amp;amp;fd=R&amp;amp;ct2=us&amp;amp;usg=AFQjCNEtXndHeYi-iStIydo4nNfoDPXikQ&amp;amp;clid=c3a7d30bb8a4878e06b80cf16b898331&amp;amp;cid=52778905004468&amp;amp;ei=LSa0VaCZAoGB3gGNxoHYDQ&amp;amp;url=http://www.washingtonpost.com/blogs/post-politics/wp/2015/07/25/obama-africa-is-on-the-move/"&gt;&lt;nobr&gt;Washington Post (blog)&lt;/nobr&gt;&lt;/a&gt;&amp;nbsp;-&lt;a href="http://news.google.com/news/url?sa=t&amp;amp;fd=R&amp;amp;ct2=us&amp;amp;usg=AFQjCNGmcY3FOKQzksMioRwdpJHQ-_PMzw&amp;amp;clid=c3a7d30bb8a4878e06b80cf16b898331&amp;amp;cid=52778905004468&amp;amp;ei=LSa0VaCZAoGB3gGNxoHYDQ&amp;amp;url=http://timesofindia.indiatimes.com/world/rest-of-world/In-Kenya-Obama-blends-blunt-messages-with-warm-reflections/articleshow/48221045.cms"&gt;&lt;nobr&gt;Times of India&lt;/nobr&gt;&lt;/a&gt;&lt;/font&gt;&lt;br&gt;&lt;font class="p" size="-1"&gt;&lt;a class="p" href="http://news.google.com/news/more?ncl=d8MIO_8-FnWisUMUNX1BfIYTR4aVM&amp;amp;authuser=0&amp;amp;ned=us&amp;amp;topic=h"&gt;&lt;nobr&gt;&lt;b&gt;all 4,315 news articles&amp;nbsp;&amp;raquo;&lt;/b&gt;&lt;/nobr&gt;&lt;/a&gt;&lt;/font&gt;&lt;/div&gt;&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</description>
</item>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.