Beispiel #1
0
 public function testOnlyGettingFieldFromFocusedFrame()
 {
     $frame1 = new MockSimplePage();
     $frame1->returnsByValue('getField', 'f', array(new SelectByName('a')));
     $frame2 = new MockSimplePage();
     $frame2->expectNever('getField');
     $frameset = new SimpleFrameset(new MockSimplePage());
     $frameset->addFrame($frame1, 'A');
     $frameset->addFrame($frame2, 'B');
     $frameset->setFrameFocus('A');
     $this->assertIdentical($frameset->getField(new SelectByName('a')), 'f');
 }
Beispiel #2
0
 /**
  *    Parses the raw content into a page. Will load further
  *    frame pages unless frames are disabled.
  *    @param SimpleHttpResponse $response    Response from fetch.
  *    @param integer $depth                  Nested frameset depth.
  *    @return SimplePage                     Parsed HTML.
  *    @access private
  */
 function &_parse($response, $depth = 0) {
     $page = &$this->_buildPage($response);
     if ($this->_ignore_frames || ! $page->hasFrames() || ($depth > $this->_maximum_nested_frames)) {
         return $page;
     }
     $frameset = new SimpleFrameset($page);
     foreach ($page->getFrameset() as $key => $url) {
         $frame = &$this->_fetch($url, new SimpleGetEncoding(), $depth + 1);
         $frameset->addFrame($frame, $key);
     }
     return $frameset;
 }