title: Jasmine error: Expected false to be true
body: <p>When I test the ability to hide the menu, I get an error saying "Expected false to be true" while toggling off the menu. Displaying the menu works alright but the other one does not. I need to pass all tests. Here is the code. If necessary I will upload the rest of the project. Don't mind the comments please.</p>
  
  <pre><code>/* feedreader.js
  *
  * This is the spec file that Jasmine will read and contains
  * all of the tests that will be run against your application.
  */
  
  /* We're placing all of our tests within the $() function,
  * since some of these tests may require DOM elements. We want
  * to ensure they don't run until the DOM is ready.
  */
  
  $(function() {
  /* This is our first test suite - a test suite just contains
  * a related set of tests. This suite is all about the RSS
  * feeds definitions, the allFeeds variable in our application.
  */
  describe('RSS Feeds', function() {
      /* This is our first test - it tests to make sure that the
       * allFeeds variable has been defined and that it is not
       * empty. Experiment with this before you get started on
       * the rest of this project. What happens when you change
       * allFeeds in app.js to be an empty array and refresh the
       * page?
       */
      it('are defined', function() {
          expect(allFeeds).toBeDefined();
          expect(allFeeds.length).not.toBe(0);
      });
  
  
      /* TODO: Write a test that loops through each feed
       * in the allFeeds object and ensures it has a URL defined
       * and that the URL is not empty.
       */
       it('url is defined', function() {
          allFeeds.forEach(function(feed) {
          feedLink = feed.url;
          expect(feedLink).toBeDefined();
          expect(feedLink.length).not.toBe(0);
        });
     });
  
  
      /* TODO: Write a test that loops through each feed
       * in the allFeeds object and ensures it has a name defined
       * and that the name is not empty.
       */
       it('name is defined', function() {
          allFeeds.forEach(function(feed) {
          feedName = feed.name;
          expect(feedName).toBeDefined();
          expect(feedName.length).not.toBe(0);
        });
     });
  });
  
  
  /* TODO: Write a new test suite named "The menu" */
      /* TODO: Write a test that ensures the menu element is
       * hidden by default. You'll have to analyze the HTML and
       * the CSS to determine how we're performing the
       * hiding/showing of the menu element.
       */
  
       describe('Menu', function () {
         it('menu hidden', function () {
           expect($('.menu-hidden').is(':visible')).toBe(true);
         });
  
       /* TODO: Write a test that ensures the menu changes
        * visibility when the menu icon is clicked. This test
        * should have two expectations: does the menu display when
        * clicked and does it hide when clicked again.
        */
          it('toggle on', function () {
            $('.menu-icon-link').trigger('click');
            expect($('.menu-hidden').is(':visible')).toBe(false);
          });
  
          it('toggle off', function () {
            $('.menu-icon-link').trigger('click');
            expect($('.menu-hidden').is(':visible')).toBe(true);
          });
  
        });
  
  /* TODO: Write a new test suite named "Initial Entries" */
  
      /* TODO: Write a test that ensures when the loadFeed
       * function is called and completes its work, there is at least
       * a single .entry element within the .feed container.
       * Remember, loadFeed() is asynchronous so this test will require
       * the use of Jasmine's beforeEach and asynchronous done() function.
       */
       describe('Initial Entries', function() {
         beforeEach(function (done) {
            loadFeed(0, function() {
              done();
            });
         });
  
         it('entry element', function () {
           expect($('.feed .entry').length).toBeGreaterThan(0);
         });
       });
  
  /* TODO: Write a new test suite named "New Feed Selection" */
  
      describe('New Feed Selection', function() {
          var testFeed;
  
      /* TODO: Write a test that ensures when a new feed is loaded
       * by the loadFeed function that the content actually changes.
       * Remember, loadFeed() is asynchronous.
       */
  
       beforeEach(function(done) {
         loadFeed(0, function() {
           testFeed = $('.feed').html();
           loadFeed(1, done);
         });
       });
  
       it('if the feeds are different', function() {
         expect($('.feed').html()).not.toEqual(testFeed);
       });
      });
  }());
  </code></pre>