Пример #1
0
 /**
  *    Fetches a page or a single frame if that is the current
  *    focus.
  *    @param SimpleUrl $url                   Target to fetch.
  *    @param SimpleEncoding $parameters       GET/POST parameters.
  *    @return string                          Raw content of page.
  *    @access private
  */
 protected function load($url, $parameters)
 {
     $frame = $url->getTarget();
     if (!$frame || !$this->page->hasFrames() || strtolower($frame) == '_top') {
         return $this->loadPage($url, $parameters);
     }
     return $this->loadFrame(array($frame), $url, $parameters);
 }
Пример #2
0
 function testInterfaceOnEmptyPage()
 {
     $page = new SimplePage();
     $this->assertEqual($page->getTransportError(), 'No page fetched yet');
     $this->assertIdentical($page->getRaw(), false);
     $this->assertIdentical($page->getHeaders(), false);
     $this->assertIdentical($page->getMimeType(), false);
     $this->assertIdentical($page->getResponseCode(), false);
     $this->assertIdentical($page->getAuthentication(), false);
     $this->assertIdentical($page->getRealm(), false);
     $this->assertFalse($page->hasFrames());
     $this->assertIdentical($page->getUrls(), array());
     $this->assertIdentical($page->getTitle(), false);
 }
Пример #3
0
 function testNamedFramesInPage()
 {
     $response = new MockSimpleHttpResponse();
     $response->setReturnValue('getUrl', new SimpleUrl('http://here'));
     $page = new SimplePage($response);
     $page->acceptFramesetStart(new SimpleTag('frameset', array()));
     $page->acceptFrame(new SimpleFrameTag(array('src' => '1.html')));
     $page->acceptFrame(new SimpleFrameTag(array('src' => '2.html', 'name' => 'A')));
     $page->acceptFrame(new SimpleFrameTag(array('src' => '3.html', 'name' => 'B')));
     $page->acceptFrame(new SimpleFrameTag(array('src' => '4.html')));
     $page->acceptFramesetEnd();
     $this->assertTrue($page->hasFrames());
     $this->assertIdentical($page->getFrameset(), array(1 => new SimpleUrl('http://here/1.html'), 'A' => new SimpleUrl('http://here/2.html'), 'B' => new SimpleUrl('http://here/3.html'), 4 => new SimpleUrl('http://here/4.html')));
 }