use of java.util.concurrent.atomic.AtomicIntegerArray in project iep by Netflix.
the class RxHttpTest method postWithCustomHeader.
@Test
public void postWithCustomHeader() throws Exception {
int code = 200;
statusCode.set(code);
AtomicIntegerArray expected = copy(statusCounts);
expected.addAndGet(code, 1);
rxHttp.submit(HttpClientRequest.createPost(uri("/empty").toString()).withHeader("k", "v"), "{}").toBlocking().toFuture().get();
assertEquals(expected, statusCounts);
}
use of java.util.concurrent.atomic.AtomicIntegerArray in project iep by Netflix.
the class RxHttpTest method gzipPost.
@Test
public void gzipPost() throws Exception {
// set(client + ".niws.client.ReadTimeout", "1000");
int code = 200;
statusCode.set(code);
AtomicIntegerArray expected = copy(statusCounts);
expected.addAndGet(code, 1);
StringBuilder content = new StringBuilder();
for (int i = 0; i < 500; ++i) {
content.append(i).append(", ");
}
String body = content.toString();
final StringBuilder builder = new StringBuilder();
rxHttp.post(uri("/echo"), "text/plain", body.getBytes()).flatMap(res -> {
Assert.assertEquals(200, res.getStatus().code());
return res.getContent();
}).toBlocking().forEach(byteBuf -> builder.append(byteBuf.toString(Charset.defaultCharset())));
Assert.assertEquals(body, builder.toString());
assertEquals(expected, statusCounts);
}
use of java.util.concurrent.atomic.AtomicIntegerArray in project iep by Netflix.
the class RxHttpTest method redirectResponseMissingLocation.
@Test
public void redirectResponseMissingLocation() throws Exception {
int code = 302;
statusCode.set(code);
redirects.set(2);
AtomicIntegerArray expected = copy(statusCounts);
expected.addAndGet(code, 1);
final CountDownLatch latch = new CountDownLatch(1);
final AtomicReference<Throwable> throwable = new AtomicReference<>();
rxHttp.get(uri("/redirectNoLocation")).subscribe(Actions.empty(), t -> {
throwable.set(t);
latch.countDown();
}, latch::countDown);
latch.await();
assertEquals(expected, statusCounts);
Assert.assertNotNull(throwable.get());
}
use of java.util.concurrent.atomic.AtomicIntegerArray in project iep by Netflix.
the class RxHttpTest method readTimeout.
@Test
public void readTimeout() throws Exception {
// set(client + ".niws.client.ReadTimeout", "100");
int code = 200;
statusCode.set(code);
AtomicIntegerArray expected = copy(statusCounts);
expected.addAndGet(code, 3);
final CountDownLatch latch = new CountDownLatch(1);
final AtomicReference<Throwable> throwable = new AtomicReference<>();
rxHttp.get(uri("/readTimeout")).subscribe(Actions.empty(), t -> {
throwable.set(t);
latch.countDown();
}, latch::countDown);
latch.await();
Assert.assertTrue(throwable.get() instanceof ReadTimeoutException);
assertEquals(expected, statusCounts);
}
use of java.util.concurrent.atomic.AtomicIntegerArray in project LanternServer by LanternPowered.
the class AtomicPerformanceTests method testSetPerformance0.
// @Test
public void testSetPerformance0() {
AtomicIntegerArray array0 = new AtomicIntegerArray(TESTS);
long time = System.currentTimeMillis();
for (int i = 0; i < TESTS; i++) {
array0.set(i, i);
}
System.out.println(String.format(MESSAGE, "AtomicIntegerArray", TESTS, System.currentTimeMillis() - time));
int[] parray0 = new int[TESTS];
time = System.currentTimeMillis();
for (int i = 0; i < TESTS; i++) {
parray0[i] = i;
}
System.out.println(String.format(MESSAGE, "int[]", TESTS, System.currentTimeMillis() - time));
AtomicShortArray array1 = new AtomicShortArray(TESTS);
time = System.currentTimeMillis();
for (int i = 0; i < TESTS; i++) {
array1.set(i, (short) i);
}
System.out.println(String.format(MESSAGE, "AtomicShortArray", TESTS, System.currentTimeMillis() - time));
short[] parray1 = new short[TESTS];
time = System.currentTimeMillis();
for (int i = 0; i < TESTS; i++) {
parray1[i] = (short) i;
}
System.out.println(String.format(MESSAGE, "short[]", TESTS, System.currentTimeMillis() - time));
AtomicByteArray array2 = new AtomicByteArray(TESTS);
time = System.currentTimeMillis();
for (int i = 0; i < TESTS; i++) {
array2.set(i, (byte) (i % 255));
}
System.out.println(String.format(MESSAGE, "AtomicByteArray", TESTS, System.currentTimeMillis() - time));
byte[] parray3 = new byte[TESTS];
time = System.currentTimeMillis();
for (int i = 0; i < TESTS; i++) {
parray3[i] = (byte) (i % 255);
}
System.out.println(String.format(MESSAGE, "byte[]", TESTS, System.currentTimeMillis() - time));
AtomicNibbleArray array3 = new AtomicNibbleArray(TESTS);
time = System.currentTimeMillis();
for (int i = 0; i < TESTS; i++) {
array3.set(i, (byte) (i % 15));
}
System.out.println(String.format(MESSAGE, "AtomicNibbleArray", TESTS, System.currentTimeMillis() - time));
}
Aggregations