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 }