/******************************************************************************* * Copyright (c) Jan 30, 2011 Zend Technologies Ltd. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html *******************************************************************************/ package org.zend.webapi.test.connection; import java.net.MalformedURLException; import junit.framework.Assert; import org.junit.Test; import org.zend.webapi.core.WebApiException; import org.zend.webapi.core.connection.request.IRequest; import org.zend.webapi.core.connection.request.IRequestInitializer; import org.zend.webapi.core.connection.response.IResponse; import org.zend.webapi.core.connection.response.ResponseCode; import org.zend.webapi.core.service.WebApiMethodType; import org.zend.webapi.internal.core.connection.request.AbstractRequest; import org.zend.webapi.internal.core.connection.request.ApplicationGetStatusRequest; import org.zend.webapi.internal.core.connection.request.ClusterGetServerStatusRequest; import org.zend.webapi.internal.core.connection.request.RestartPhpRequest; import org.zend.webapi.test.AbstractTestServer; import org.zend.webapi.test.Configuration; public class TestCommonRequestParams extends AbstractTestServer { @Test public void testClusterGetServerStatus() throws WebApiException, MalformedURLException { initMock(handler.clusterGetServerStatus(), "clusterGetServerStatus", ResponseCode.OK); IResponse response = Configuration.getClient().handle( WebApiMethodType.CLUSTER_GET_SERVER_STATUS, new IRequestInitializer() { public void init(IRequest request) throws WebApiException { ClusterGetServerStatusRequest r = (ClusterGetServerStatusRequest) request; r.setServers("my-server", "your-server"); } }); final AbstractRequest request = (AbstractRequest) response.getRequest(); Assert.assertEquals( "servers%5B0%5D=my-server&servers%5B1%5D=your-server", request.getParametersAsString()); } @Test public void testRestartPhpParams() throws WebApiException, MalformedURLException { initMock(handler.restartPhp(), "restartPhp", ResponseCode.ACCEPTED); IResponse response = Configuration.getClient().handle( WebApiMethodType.RESTART_PHP, new IRequestInitializer() { public void init(IRequest request) throws WebApiException { RestartPhpRequest r = (RestartPhpRequest) request; r.setParallelRestart(true); r.setServers("my-server"); } }); final AbstractRequest request = (AbstractRequest) response.getRequest(); Assert.assertEquals("parallelRestart=TRUE&servers%5B0%5D=my-server", request.getParametersAsString()); } @Test public void testApplicationGetStatus() throws WebApiException, MalformedURLException { initMock(handler.applicationGetStatus(), "applicationGetStatus", ResponseCode.OK); IResponse response = Configuration.getClient().handle( WebApiMethodType.APPLICATION_GET_STATUS, new IRequestInitializer() { public void init(IRequest request) throws WebApiException { ApplicationGetStatusRequest r = (ApplicationGetStatusRequest) request; r.setApplications("test1", "test2"); } }); final AbstractRequest request = (AbstractRequest) response.getRequest(); Assert.assertEquals( "applications%5B0%5D=test1&applications%5B1%5D=test2", request.getParametersAsString()); } }