private function getAnalyticsServiceMock()
{
$analyticsService = new Google_Service_Analytics(new Google_Client());
$dataGateway = $this->getMockBuilder('Google_Service_Analytics_DataGa_Resource')->disableOriginalConstructor()->getMock();
$metricsReturnMock = array('totalsForAllResults' => array('ga:pageviews' => 1, 'ga:users' => 2, 'ga:pageviewsPerSession' => 3.14, 'ga:avgSessionDuration' => 1.02, 'ga:percentNewSessions' => 78.23, 'ga:bounceRate' => 23.25));
$visitGraphDataMock = array('rows' => array(array('20150511', '0', '0'), array('20150512', '1', '1')), 'columnHeaders' => array(array('name' => 'ga:date'), array('name' => 'ga:pageviews'), array('name' => 'ga:users')));
$sourceGraphDataMock = array('rows' => array(array('(none)', '8'), array('organic', '6')), 'columnHeaders' => array(array('name' => 'ga:medium'), array('name' => 'ga:pageviews')));
$pageViewsDataMock = array('rows' => array(array('/en', '15'), array('/en/blog', '8')), 'columnHeaders' => array(array('name' => 'ga:pagePath'), array('name' => 'ga:pageviews')));
$dataGateway->method('get')->will(self::onConsecutiveCalls($metricsReturnMock, $visitGraphDataMock, $pageViewsDataMock, $sourceGraphDataMock));
$analyticsService->data_ga = $dataGateway;
return $analyticsService;
}