use of org.apache.jmeter.protocol.http.curl.BasicCurlParser in project jmeter by apache.
the class ParseCurlCommandActionTest method testCanAddDnsServerInHttpRequest.
@Test
public void testCanAddDnsServerInHttpRequest() throws Exception {
ParseCurlCommandAction p = new ParseCurlCommandAction();
DNSCacheManager dnsCacheManager = new DNSCacheManager();
dnsCacheManager.addServer("0.0.0.0");
BasicCurlParser basicCurlParser = new BasicCurlParser();
Request request = basicCurlParser.parse("curl 'http://jmeter.apache.org/' --dns-servers '0.0.0.0'");
Method method = getMethodFor("canAddDnsServerInHttpRequest", Request.class, DNSCacheManager.class);
assertFalse((boolean) method.invoke(p, request, dnsCacheManager), "When the Dns servers are the same, shouldn't add the DnsCacheManager in Http Request");
request = basicCurlParser.parse("curl 'http://jmeter.apache.org/' --dns-servers '1.1.1.1'");
assertTrue((boolean) method.invoke(p, request, dnsCacheManager), "When the Dns servers aren't the same, should add the DnsCacheManager in Http Request");
}
use of org.apache.jmeter.protocol.http.curl.BasicCurlParser in project jmeter by apache.
the class ParseCurlCommandActionTest method testCreateAuthManager.
@Test
public void testCreateAuthManager() throws Exception {
ParseCurlCommandAction p = new ParseCurlCommandAction();
AuthManager authManager = new AuthManager();
BasicCurlParser basicCurlParser = new BasicCurlParser();
Request request = basicCurlParser.parse("curl 'http://jmeter.apache.org/' -u 'user:passwd'");
Method method = getMethodFor("createAuthManager", Request.class, AuthManager.class);
method.invoke(p, request, authManager);
assertEquals("user", authManager.get(0).getUser());
assertEquals("passwd", authManager.get(0).getPass());
}
use of org.apache.jmeter.protocol.http.curl.BasicCurlParser in project jmeter by apache.
the class ParseCurlCommandActionTest method testCreateHttpRequestWithQuotedFilenameAsData.
@Test
public void testCreateHttpRequestWithQuotedFilenameAsData() throws Exception {
ParseCurlCommandAction p = new ParseCurlCommandAction();
BasicCurlParser basicCurlParser = new BasicCurlParser();
ThreadGroup threadGroup = new ThreadGroup();
TestPlan testPlan = new TestPlan();
HashTree tree = new HashTree();
HashTree testPlanHT = tree.add(testPlan);
HashTree threadGroupHT = testPlanHT.add(threadGroup);
Request request = basicCurlParser.parse("curl 'http://jmeter.apache.org/' -X POST --form 'pic=@\"/some/file.jpg\"'");
Method method = getMethodFor("createHttpRequest", Request.class, HashTree.class, String.class);
HTTPSamplerProxy httpSampler = (HTTPSamplerProxy) method.invoke(p, request, threadGroupHT, "comment");
assertEquals("/", httpSampler.getPath(), "path should be set in httpsampler");
assertEquals("jmeter.apache.org", httpSampler.getDomain(), "domain should be set in httpsampler");
assertEquals(80, httpSampler.getPort(), "port should be 80 in httpsampler");
assertEquals("POST", httpSampler.getMethod(), "method should be set in httpsampler");
HTTPFileArg fileArg = httpSampler.getHTTPFiles()[0];
assertEquals("pic", fileArg.getParamName());
assertEquals("/some/file.jpg", fileArg.getPath());
assertEquals("image/jpeg", fileArg.getMimeType());
}
use of org.apache.jmeter.protocol.http.curl.BasicCurlParser in project jmeter by apache.
the class BasicCurlParserTest method testChromeParsingNoHeaders.
@Test
public void testChromeParsingNoHeaders() {
String cmdLine = "curl 'https://jmeter.apache.org/'";
BasicCurlParser basicCurlParser = new BasicCurlParser();
BasicCurlParser.Request request = basicCurlParser.parse(cmdLine);
assertEquals("https://jmeter.apache.org/", request.getUrl());
assertTrue(request.getHeaders().isEmpty());
assertFalse(request.isCompressed());
assertEquals("GET", request.getMethod());
}
use of org.apache.jmeter.protocol.http.curl.BasicCurlParser in project jmeter by apache.
the class BasicCurlParserTest method testFormWithQuotedValueWithQuotes.
@Test
public void testFormWithQuotedValueWithQuotes() {
String cmdLine = "curl 'https://www.exaple.invalid/' " + "--form 'test=\"something \\\"quoted\\\"\"'";
BasicCurlParser basicCurlParser = new BasicCurlParser();
BasicCurlParser.Request request = basicCurlParser.parse(cmdLine);
List<Pair<String, ArgumentHolder>> res = request.getFormData();
assertTrue(res.contains(Pair.of("test", StringArgumentHolder.of("something \"quoted\""))), "With method 'form', we should post form data");
}
Aggregations