コード例 #1
0
    public function testRenderJsContainerBounds()
    {
        $map = new Map();
        $map->setJavascriptVariable('map');
        $map->getBound()->setJavascriptVariable('map_bound');
        $map->addGroundOverlay($groundOverlay = new GroundOverlay());
        $groundOverlay->getBound()->setJavascriptVariable('ground_overlay_bound');
        $groundOverlay->getBound()->getSouthWest()->setJavascriptVariable('ground_overlay_coordinate_south_west');
        $groundOverlay->getBound()->getNorthEast()->setJavascriptVariable('ground_overlay_coordinate_north_east');
        $map->addRectangle($rectangle = new Rectangle());
        $rectangle->getBound()->setJavascriptVariable('rectangle_bound');
        $rectangle->getBound()->getSouthWest()->setJavascriptVariable('rectangle_coordinate_south_west');
        $rectangle->getBound()->getNorthEast()->setJavascriptVariable('rectangle_coordinate_north_east');
        $map->setAutoZoom(true);
        $expected = <<<EOF
map_container.bounds.map_bound = map_bound = new google.maps.LatLngBounds();
map_container.bounds.ground_overlay_bound = ground_overlay_bound = new google.maps.LatLngBounds(ground_overlay_coordinate_south_west, ground_overlay_coordinate_north_east);
map_container.bounds.rectangle_bound = rectangle_bound = new google.maps.LatLngBounds(rectangle_coordinate_south_west, rectangle_coordinate_north_east);

EOF;
        $this->assertSame($expected, $this->mapHelper->renderJsContainerBounds($map));
    }