18653796de8a99b3efc5172825320e05d0e77154echrismair/*
28653796de8a99b3efc5172825320e05d0e77154echrismair * Copyright 2009 the original author or authors.
38653796de8a99b3efc5172825320e05d0e77154echrismair *
48653796de8a99b3efc5172825320e05d0e77154echrismair * Licensed under the Apache License, Version 2.0 (the "License");
58653796de8a99b3efc5172825320e05d0e77154echrismair * you may not use this file except in compliance with the License.
68653796de8a99b3efc5172825320e05d0e77154echrismair * You may obtain a copy of the License at
78653796de8a99b3efc5172825320e05d0e77154echrismair *
88653796de8a99b3efc5172825320e05d0e77154echrismair *      http://www.apache.org/licenses/LICENSE-2.0
98653796de8a99b3efc5172825320e05d0e77154echrismair *
108653796de8a99b3efc5172825320e05d0e77154echrismair * Unless required by applicable law or agreed to in writing, software
118653796de8a99b3efc5172825320e05d0e77154echrismair * distributed under the License is distributed on an "AS IS" BASIS,
128653796de8a99b3efc5172825320e05d0e77154echrismair * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
138653796de8a99b3efc5172825320e05d0e77154echrismair * See the License for the specific language governing permissions and
148653796de8a99b3efc5172825320e05d0e77154echrismair * limitations under the License.
158653796de8a99b3efc5172825320e05d0e77154echrismair */
168653796de8a99b3efc5172825320e05d0e77154echrismairpackage org.mockftpserver.stub
178653796de8a99b3efc5172825320e05d0e77154echrismair
185303c6ae1dde5f399fe48803e677942fc4326344chrismairimport org.mockftpserver.test.AbstractGroovyTestCase
198653796de8a99b3efc5172825320e05d0e77154echrismairimport org.apache.commons.net.ftp.FTPClient
208653796de8a99b3efc5172825320e05d0e77154echrismairimport org.mockftpserver.test.PortTestUtil
218653796de8a99b3efc5172825320e05d0e77154echrismair
228653796de8a99b3efc5172825320e05d0e77154echrismair/**
238653796de8a99b3efc5172825320e05d0e77154echrismair * Integration tests for restart of an StubFtpServer.
248653796de8a99b3efc5172825320e05d0e77154echrismair *
253e469b93fd10bc09ea2c088516168bf6a5cbaa43chrismair * @version $Revision$ - $Date$
268653796de8a99b3efc5172825320e05d0e77154echrismair *
278653796de8a99b3efc5172825320e05d0e77154echrismair * @author Chris Mair
288653796de8a99b3efc5172825320e05d0e77154echrismair */
295303c6ae1dde5f399fe48803e677942fc4326344chrismairclass StubFtpServer_RestartTest extends AbstractGroovyTestCase {
308653796de8a99b3efc5172825320e05d0e77154echrismair    static final SERVER = "localhost"
318653796de8a99b3efc5172825320e05d0e77154echrismair    private stubFtpServer
328653796de8a99b3efc5172825320e05d0e77154echrismair    private ftpClient
338653796de8a99b3efc5172825320e05d0e77154echrismair
348653796de8a99b3efc5172825320e05d0e77154echrismair    void testRestart() {
358653796de8a99b3efc5172825320e05d0e77154echrismair        stubFtpServer.start()
368653796de8a99b3efc5172825320e05d0e77154echrismair        ftpClient.connect(SERVER, PortTestUtil.getFtpServerControlPort())
378653796de8a99b3efc5172825320e05d0e77154echrismair        assert ftpClient.changeWorkingDirectory("dir1")
388653796de8a99b3efc5172825320e05d0e77154echrismair
398653796de8a99b3efc5172825320e05d0e77154echrismair        stubFtpServer.stop()
408653796de8a99b3efc5172825320e05d0e77154echrismair        LOG.info("Restarting...")
418653796de8a99b3efc5172825320e05d0e77154echrismair
428653796de8a99b3efc5172825320e05d0e77154echrismair        stubFtpServer.start()
438653796de8a99b3efc5172825320e05d0e77154echrismair        ftpClient.connect(SERVER, PortTestUtil.getFtpServerControlPort())
448653796de8a99b3efc5172825320e05d0e77154echrismair        assert ftpClient.changeWorkingDirectory("dir1")
458653796de8a99b3efc5172825320e05d0e77154echrismair    }
468653796de8a99b3efc5172825320e05d0e77154echrismair
478653796de8a99b3efc5172825320e05d0e77154echrismair    void setUp() {
488653796de8a99b3efc5172825320e05d0e77154echrismair        super.setUp()
498653796de8a99b3efc5172825320e05d0e77154echrismair        stubFtpServer = new StubFtpServer()
508653796de8a99b3efc5172825320e05d0e77154echrismair        stubFtpServer.setServerControlPort(PortTestUtil.getFtpServerControlPort())
518653796de8a99b3efc5172825320e05d0e77154echrismair        ftpClient = new FTPClient()
528653796de8a99b3efc5172825320e05d0e77154echrismair    }
538653796de8a99b3efc5172825320e05d0e77154echrismair
548653796de8a99b3efc5172825320e05d0e77154echrismair    void tearDown() {
558653796de8a99b3efc5172825320e05d0e77154echrismair        super.tearDown()
568653796de8a99b3efc5172825320e05d0e77154echrismair        stubFtpServer.stop()
578653796de8a99b3efc5172825320e05d0e77154echrismair    }
588653796de8a99b3efc5172825320e05d0e77154echrismair}