📄 webdavlistenertest.java
字号:
// ========================================================================// Copyright 2006-2007 Mort Bay Consulting Pty. Ltd.// ------------------------------------------------------------------------// Licensed under the Apache License, Version 2.0 (the "License");// you may not use this file except in compliance with the License.// You may obtain a copy of the License at// http://www.apache.org/licenses/LICENSE-2.0// Unless required by applicable law or agreed to in writing, software// distributed under the License is distributed on an "AS IS" BASIS,// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.// See the License for the specific language governing permissions and// limitations under the License.// ========================================================================package org.mortbay.jetty.client;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import junit.framework.TestCase;import org.mortbay.io.Buffer;import org.mortbay.jetty.Connector;import org.mortbay.jetty.HttpMethods;import org.mortbay.jetty.Server;import org.mortbay.jetty.client.security.HashRealmResolver;import org.mortbay.jetty.client.security.Realm;import org.mortbay.jetty.client.security.SimpleRealmResolver;import org.mortbay.jetty.client.webdav.WebdavListener;/** * Functional testing for HttpExchange. * * @author Matthew Purland * @author Greg Wilkins */public class WebdavListenerTest extends TestCase//extends HttpExchangeTest{ protected String _scheme = "http://"; protected Server _server; protected int _port; protected HttpClient _httpClient; protected Connector _connector; private String _username = "janb"; private String _password = "xxxxx"; private String _singleFileURL; private String _dirFileURL; private String _dirURL; protected void setUp() throws Exception { _singleFileURL = "https://dav.codehaus.org/user/" + _username + "/foo.txt"; _dirURL = "https://dav.codehaus.org/user/" + _username + "/ttt/"; _dirFileURL = _dirURL+"foo.txt"; _scheme="https://"; _httpClient=new HttpClient(); _httpClient.setConnectorType(HttpClient.CONNECTOR_SELECT_CHANNEL); //_httpClient.setMaxConnectionsPerAddress(4); _httpClient.setRealmResolver( new SimpleRealmResolver ( new Realm(){ public String getId() { return _username + "'s webspace"; //To change body of implemented methods use File | Settings | File Templates. } public String getPrincipal() { return _username; //To change body of implemented methods use File | Settings | File Templates. } public String getCredentials() { return _password; //To change body of implemented methods use File | Settings | File Templates. } } )); _httpClient.registerListener( "org.mortbay.jetty.client.webdav.WebdavListener"); _httpClient.start(); } public void tearDown () throws Exception { _httpClient.stop(); } public void testPUTandDELETEwithSSL() throws Exception { File file = new File("src/test/resources/foo.txt"); assertTrue(file.exists()); /* * UNCOMMENT TO TEST WITH REAL DAV SERVER * Remember to set _username and _password to a real user's account. * */ /* //PUT a FILE ContentExchange singleFileExchange = new ContentExchange(); singleFileExchange.setURL(_singleFileURL); singleFileExchange.setMethod( HttpMethods.PUT ); singleFileExchange.setFileForUpload(file); singleFileExchange.setRequestHeader( "Content-Type", "application/octet-stream"); singleFileExchange.setRequestHeader("Content-Length", String.valueOf( file.length() )); _httpClient.send(singleFileExchange); singleFileExchange.waitForDone(); String result = singleFileExchange.getResponseContent(); assertEquals(201, singleFileExchange.getResponseStatus()); //PUT a FILE in a directory hierarchy ContentExchange dirFileExchange = new ContentExchange(); dirFileExchange.setURL(_dirFileURL); dirFileExchange.setMethod( HttpMethods.PUT ); dirFileExchange.setFileForUpload(file); dirFileExchange.setRequestHeader( "Content-Type", "application/octet-stream"); dirFileExchange.setRequestHeader("Content-Length", String.valueOf( file.length() )); _httpClient.send(dirFileExchange); dirFileExchange.waitForDone(); result = dirFileExchange.getResponseContent(); assertEquals(201, singleFileExchange.getResponseStatus()); //DELETE the single file HttpExchange del = new HttpExchange(); del.setURL(_singleFileURL); del.setMethod(HttpMethods.DELETE); _httpClient.send(del); del.waitForCompletion(); //DELETE the whole dir del.setURL(_dirURL); del.setMethod(HttpMethods.DELETE); del.setRequestHeader("Depth", "infinity"); _httpClient.send(del); del.waitForCompletion(); */ } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -