View Javadoc

1   // Copyright (C) 2000 - 2011 Philip Aston
2   // All rights reserved.
3   //
4   // This file is part of The Grinder software distribution. Refer to
5   // the file LICENSE which is part of The Grinder distribution for
6   // licensing details. The Grinder distribution is available on the
7   // Internet at http://grinder.sourceforge.net/
8   //
9   // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
10  // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
11  // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
12  // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
13  // COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
14  // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
15  // (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
16  // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
17  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
18  // STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
19  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
20  // OF THE POSSIBILITY OF SUCH DAMAGE.
21  
22  package net.grinder.messages.agent;
23  
24  import java.io.File;
25  
26  import net.grinder.common.GrinderProperties;
27  import net.grinder.testutility.AbstractFileTestCase;
28  import net.grinder.testutility.Serializer;
29  import net.grinder.util.FileContents;
30  
31  import org.junit.Test;
32  
33  
34  /**
35   * Unit test case for messages that are sent to the agent processes.
36   *
37   * @author Philip Aston
38   */
39  public class TestAgentMessages extends AbstractFileTestCase {
40  
41    @Test public void testResetGrinderMessage() throws Exception {
42      Serializer.serialize(new ResetGrinderMessage());
43    }
44  
45    @Test public void testStartGrinderMessage() throws Exception {
46      final GrinderProperties properties = new GrinderProperties();
47      properties.setProperty("foo", "bah");
48      properties.setInt("lah", 123);
49  
50      final StartGrinderMessage received =
51        Serializer.serialize(new StartGrinderMessage(properties, -1));
52  
53      assertEquals(properties, received.getProperties());
54    }
55  
56    @Test public void testStopGrinderMessage() throws Exception {
57      Serializer.serialize(new StopGrinderMessage());
58    }
59  
60    @Test public void testDistributeFileMessage() throws Exception {
61      final File file = new File("test");
62      assertTrue(new File(getDirectory(), file.getPath()).createNewFile());
63  
64      final FileContents fileContents = new FileContents(getDirectory(), file);
65  
66      final DistributeFileMessage received =
67        Serializer.serialize(new DistributeFileMessage(fileContents));
68  
69      assertEquals(fileContents.toString(),
70                   received.getFileContents().toString());
71    }
72  
73    @Test public void testClearCacheMessage() throws Exception {
74      Serializer.serialize(new ClearCacheMessage());
75    }
76  }