def testSearchUserFromLandingPage(self):
    """Test that search displays user results within the landing page."""
    landing_page = LandingPage(self.driver)
    landing_page.add_test_user(BaseTest.TEST_USER_AS_DICT['name'],
                               BaseTest.TEST_USER_AS_DICT['email'],
                               self.args.server_url)
    self.assertTestUserPresenceOnPage(True)

    landing_page.searchForTestItem(BaseTest.TEST_USER_AS_DICT['name'])

    self.assertTestUserPresenceOnPage(True, False)
    landing_url = self.args.server_url + flask.url_for('landing')
    self.assertEquals(landing_url, self.driver.current_url)
  def testSearchServerFromLandingPage(self):
    """Test that search displays server results within the landing page."""
    landing_page = LandingPage(self.driver)
    landing_page.add_test_server(
        BaseTest.TEST_SERVER_AS_DICT['ip'],
        BaseTest.TEST_SERVER_AS_DICT['name'],
        BaseTest.TEST_SERVER_AS_DICT['ssh_private_key'],
        BaseTest.TEST_SERVER_AS_DICT['host_public_key'],
        self.args.server_url)
    self.assertTestServerPresenceOnPage(True)

    landing_page.searchForTestItem(BaseTest.TEST_SERVER_AS_DICT['name'])

    self.assertTestServerPresenceOnPage(True, False)
    landing_url = self.args.server_url + flask.url_for('landing')
    self.assertEquals(landing_url, self.driver.current_url)
  def testRepeatedSearchesFromLandingPage(self):
    """Test that search displays results within the landing page."""
    landing_url = self.args.server_url + flask.url_for('landing')

    # Add user and server.
    landing_page = LandingPage(self.driver)
    landing_page.add_test_user(BaseTest.TEST_USER_AS_DICT['name'],
                               BaseTest.TEST_USER_AS_DICT['email'],
                               self.args.server_url)
    landing_page.add_test_server(
        BaseTest.TEST_SERVER_AS_DICT['ip'],
        BaseTest.TEST_SERVER_AS_DICT['name'],
        BaseTest.TEST_SERVER_AS_DICT['ssh_private_key'],
        BaseTest.TEST_SERVER_AS_DICT['host_public_key'],
        self.args.server_url)

    # Verify they both show up.
    self.assertTestUserPresenceOnPage(True)
    self.assertTestServerPresenceOnPage(True)

    # Search for a server.
    landing_page.searchForTestItem(BaseTest.TEST_SERVER_AS_DICT['name'])

    # Verify the server was found and the user was not.
    self.assertTestUserPresenceOnPage(False, False)
    self.assertTestServerPresenceOnPage(True, False)

    # Verify we are still on the landing page.
    self.assertEquals(landing_url, self.driver.current_url)

    # Search for a user.
    landing_page.searchForTestItem(BaseTest.TEST_USER_AS_DICT['name'])

    # Verify the user was found and the server was not.
    self.assertTestUserPresenceOnPage(True, False)
    self.assertTestServerPresenceOnPage(False, False)

    # Verify we are still on the landing page.
    self.assertEquals(landing_url, self.driver.current_url)