View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *      https://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  package org.apache.commons.net.telnet;
18  
19  import static org.junit.jupiter.api.Assertions.assertEquals;
20  import static org.junit.jupiter.api.Assertions.assertNull;
21  
22  import org.junit.jupiter.api.BeforeEach;
23  import org.junit.jupiter.api.Test;
24  
25  /**
26   * JUnit test class for SimpleOptionHandler
27   */
28  class SimpleOptionHandlerTest extends AbstractTelnetOptionHandlerTest {
29  
30      /**
31       * setUp for the test.
32       */
33      @BeforeEach
34      protected void setUp() {
35          opthand1 = new SimpleOptionHandler(4);
36          opthand2 = new SimpleOptionHandler(8, true, true, true, true);
37          opthand3 = new SimpleOptionHandler(91, false, false, false, false);
38      }
39  
40      /**
41       * test of server-driven subnegotiation. Checks that no subnegotiation is made.
42       */
43      @Test
44      void testAnswerSubnegotiation() {
45          final int[] subn = { TelnetCommand.IAC, TelnetCommand.SB, 4, 1, TelnetCommand.IAC, TelnetCommand.SE, };
46  
47          final int[] resp1 = opthand1.answerSubnegotiation(subn, subn.length);
48  
49          assertNull(resp1);
50      }
51  
52      /**
53       * test of the constructors.
54       */
55      @Override
56      @Test
57      void testConstructors() {
58          assertEquals(4, opthand1.getOptionCode());
59          assertEquals(8, opthand2.getOptionCode());
60          assertEquals(91, opthand3.getOptionCode());
61          super.testConstructors();
62      }
63  
64      /**
65       * test of client-driven subnegotiation. Checks that no subnegotiation is made.
66       */
67      @Test
68      void testStartSubnegotiation() {
69  
70          final int[] resp1 = opthand1.startSubnegotiationLocal();
71          final int[] resp2 = opthand1.startSubnegotiationRemote();
72  
73          assertNull(resp1);
74          assertNull(resp2);
75      }
76  }