Skip to content

Commit 7270467

Browse files
authored
Merge pull request #596 from jannispinter/593-unittest
Add unit tests requested in issue #593
2 parents 5fbbb81 + 5c73bad commit 7270467

File tree

2 files changed

+107
-0
lines changed

2 files changed

+107
-0
lines changed
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
/**
2+
* TLS-Attacker - A Modular Penetration Testing Framework for TLS
3+
*
4+
* Copyright 2014-2017 Ruhr University Bochum / Hackmanit GmbH
5+
*
6+
* Licensed under Apache License 2.0
7+
* http://www.apache.org/licenses/LICENSE-2.0
8+
*/
9+
package de.rub.nds.tlsattacker.core.https;
10+
11+
import de.rub.nds.tlsattacker.core.constants.ProtocolVersion;
12+
import de.rub.nds.tlsattacker.core.state.TlsContext;
13+
import org.junit.Before;
14+
import org.junit.Test;
15+
16+
import java.nio.charset.Charset;
17+
18+
import static org.junit.Assert.assertEquals;
19+
import static org.junit.Assert.assertTrue;
20+
21+
public class HttpsRequestHandlerTest {
22+
23+
private TlsContext context;
24+
private HttpsRequestMessage message;
25+
private HttpsRequestHandler handler;
26+
27+
@Before
28+
public void setUp() {
29+
context = new TlsContext();
30+
31+
String rawMessage = "GET /index.html HTTP/1.1\r\nUser-Agent: Test\r\nHost: www.rub.de\r\n\r\n";
32+
HttpsRequestParser parser = new HttpsRequestParser(0, rawMessage.getBytes(Charset.forName("UTF-8")),
33+
ProtocolVersion.TLS12);
34+
message = parser.parse();
35+
36+
handler = new HttpsRequestHandler(context);
37+
}
38+
39+
@Test
40+
public void testGetParser() {
41+
assertTrue(handler.getParser(new byte[1], 0) instanceof HttpsRequestParser);
42+
}
43+
44+
@Test
45+
public void testGetPreparator() {
46+
assertTrue(handler.getPreparator(new HttpsRequestMessage()) instanceof HttpsRequestPreparator);
47+
}
48+
49+
@Test
50+
public void testGetSerializer() {
51+
assertTrue(handler.getSerializer(new HttpsRequestMessage()) instanceof HttpsRequestSerializer);
52+
}
53+
54+
@Test
55+
public void testAdjustTLSContext() {
56+
handler.adjustTLSContext(message);
57+
assertEquals(context.getHttpContext().getLastRequestPath(), message.getRequestPath().getValue());
58+
}
59+
}
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
/**
2+
* TLS-Attacker - A Modular Penetration Testing Framework for TLS
3+
*
4+
* Copyright 2014-2017 Ruhr University Bochum / Hackmanit GmbH
5+
*
6+
* Licensed under Apache License 2.0
7+
* http://www.apache.org/licenses/LICENSE-2.0
8+
*/
9+
package de.rub.nds.tlsattacker.core.https;
10+
11+
import de.rub.nds.tlsattacker.core.constants.ProtocolVersion;
12+
import de.rub.nds.tlsattacker.core.state.TlsContext;
13+
import org.junit.Before;
14+
import org.junit.Test;
15+
16+
import java.nio.charset.Charset;
17+
18+
import static org.junit.Assert.*;
19+
20+
public class HttpsRequestPreparatorTest {
21+
22+
private TlsContext context;
23+
private HttpsRequestMessage message;
24+
private HttpsRequestPreparator preparator;
25+
26+
@Before
27+
public void setUp() {
28+
context = new TlsContext();
29+
30+
String rawMessage = "GET /index.html HTTP/1.1\r\nUser-Agent: Test\r\nHost: www.rub.de\r\n\r\n";
31+
HttpsRequestParser parser = new HttpsRequestParser(0, rawMessage.getBytes(Charset.forName("UTF-8")),
32+
ProtocolVersion.TLS12);
33+
message = parser.parse();
34+
35+
preparator = new HttpsRequestPreparator(context.getChooser(), message);
36+
}
37+
38+
@Test
39+
public void testPrepareProtocolMessageContents() {
40+
preparator.prepareProtocolMessageContents();
41+
42+
assertEquals("/", message.getRequestPath().getOriginalValue());
43+
assertEquals("HTTP/1.1", message.getRequestProtocol().getOriginalValue());
44+
assertEquals("GET", message.getRequestType().getOriginalValue());
45+
assertEquals(2, message.getHeader().size());
46+
47+
}
48+
}

0 commit comments

Comments
 (0)