This is a test suite for Udacity's Feed Reader
- Jasmine 2.1.2 - for running the tests.
- NodeJS
- NPM
- GulpJS - for the automated workflow.
- gulp-eslint - for linting with Gulp.
- browser-sync - to load and auto-reload the feed reader and tests.
- An internet connection for the RSS Feeds.
To use the Feed Reader and run/view the tests:
- Clone or download this repository.
- Note the location where it is saved!
- Open
index.html
in your favorite browser.- All tests will run when the page loads. The Jasmine test summary can be viewed at the bottom of the page, below the loaded feeds.
- Individual tests can be run by clicking on the description.
- RSS Feeds
- The
allFeeds
variable is defined. - The
feeds
withinallFeeds
have aurl
property that is notundefined
and is not empty.
- The
- The Menu
- Is hidden when the page loads.
- Can be toggled appropriately.
- Initial Entries
- There is at least 1 entry when the page loads.
- News Feed Selection
- The content changes when a new feed loads.
- Loading Feeds
- The
id
of the feed specified must be:- Defined.
- Greater than or equal to zero.
- Less than the total number of entries.
- Must convert to a
number
type.
- The
To use the automated workflow defined in gulpfile.js
:
- Clone this repository.
- Note the location where it is stored!
- Ensure
npm
andnodejs
are installed, and install them if they are not. - Install this project with
npm
:$ cd project4_feedreader $ npm install .
- Inspect the
gulp --tasks
exposed bygulpfile.js
:$ gulp --tasks [19:30:56] Tasks for project4_feedreader/gulpfile.js [19:30:56] ├── default [19:30:56] └─┬ run [19:30:56] └─┬ <series> [19:30:56] ├── lint [19:30:56] └─┬ <parallel> [19:30:56] ├── watch [19:30:56] └── initServer
- Run the desired task:
# for code style / format checking, run gulp $ gulp # for browser auto-reloading when your javascript changes, run gulp run $ gulp run