Skip to content

Commit 325d881

Browse files
committed
Performance test
1 parent f62c44f commit 325d881

File tree

4 files changed

+90
-15
lines changed

4 files changed

+90
-15
lines changed

pom.xml

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,13 @@
5252
</ciManagement>
5353

5454
<dependencies>
55+
56+
<dependency>
57+
<groupId>com.google.code.findbugs</groupId>
58+
<artifactId>jsr305</artifactId>
59+
<version>3.0.1</version>
60+
<type>jar</type>
61+
</dependency>
5562

5663
<!-- Tests -->
5764
<dependency>
@@ -67,18 +74,23 @@
6774
<version>1.7.1</version>
6875
<scope>test</scope>
6976
</dependency>
70-
<dependency>
71-
<groupId>com.google.code.findbugs</groupId>
72-
<artifactId>jsr305</artifactId>
73-
<version>3.0.1</version>
74-
<type>jar</type>
75-
</dependency>
7677
<dependency>
7778
<groupId>org.hamcrest</groupId>
78-
<artifactId>hamcrest-all</artifactId>
79+
<artifactId>hamcrest-core</artifactId>
7980
<version>1.3</version>
8081
<scope>test</scope>
81-
<type>jar</type>
82+
</dependency>
83+
<dependency>
84+
<groupId>org.openjdk.jmh</groupId>
85+
<artifactId>jmh-core</artifactId>
86+
<version>1.11.3</version>
87+
<scope>test</scope>
88+
</dependency>
89+
<dependency>
90+
<groupId>org.openjdk.jmh</groupId>
91+
<artifactId>jmh-generator-annprocess</artifactId>
92+
<version>1.11.3</version>
93+
<scope>test</scope>
8294
</dependency>
8395

8496
</dependencies>
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
package pl.wavesoftware.eid.exceptions;
2+
3+
import org.junit.Test;
4+
import org.openjdk.jmh.annotations.Benchmark;
5+
import org.openjdk.jmh.annotations.Mode;
6+
import org.openjdk.jmh.annotations.Threads;
7+
import org.openjdk.jmh.infra.Blackhole;
8+
import org.openjdk.jmh.results.RunResult;
9+
import org.openjdk.jmh.runner.Runner;
10+
import org.openjdk.jmh.runner.options.Options;
11+
import org.openjdk.jmh.runner.options.OptionsBuilder;
12+
import org.openjdk.jmh.runner.options.TimeValue;
13+
14+
import java.util.Collection;
15+
import java.util.Date;
16+
import java.util.concurrent.TimeUnit;
17+
18+
import static org.assertj.core.api.Assertions.assertThat;
19+
20+
/**
21+
* @author Krzysztof Suszyński <krzysztof.suszynski@wavesoftware.pl>
22+
* @since 2016-03-24
23+
*/
24+
public class EidIT {
25+
26+
private static final int OPERATIONS = 1000;
27+
28+
@Test
29+
public void doBenckmarking() throws Exception {
30+
Options opt = new OptionsBuilder()
31+
.include(this.getClass().getName() + ".*")
32+
.mode(Mode.Throughput)
33+
.timeUnit(TimeUnit.MICROSECONDS)
34+
.operationsPerInvocation(OPERATIONS)
35+
.warmupTime(TimeValue.seconds(1))
36+
.warmupIterations(2)
37+
.measurementTime(TimeValue.seconds(1))
38+
.measurementIterations(5)
39+
.threads(Threads.MAX)
40+
.forks(1)
41+
.shouldFailOnError(true)
42+
.shouldDoGC(true)
43+
.build();
44+
45+
Runner runner = new Runner(opt);
46+
Collection<RunResult> results = runner.run();
47+
assertThat(results).hasSize(2);
48+
}
49+
50+
@Benchmark
51+
public void control(Blackhole bh) {
52+
for (int i = 0; i < OPERATIONS; i++) {
53+
bh.consume(new Date());
54+
}
55+
}
56+
57+
@Benchmark
58+
public void eid(Blackhole bh) {
59+
for (int i = 0; i < OPERATIONS; i++) {
60+
bh.consume(new Eid("20160324:223837"));
61+
}
62+
}
63+
}

src/test/java/pl/wavesoftware/eid/exceptions/EidRuntimeExceptionTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
import javax.xml.bind.JAXBException;
99
import java.util.UnknownFormatConversionException;
1010

11-
import static org.hamcrest.Matchers.containsString;
12-
import static org.hamcrest.Matchers.is;
11+
import static org.hamcrest.CoreMatchers.containsString;
12+
import static org.hamcrest.CoreMatchers.is;
1313
import static org.junit.internal.matchers.ThrowableMessageMatcher.hasMessage;
1414

1515
/**

src/test/java/pl/wavesoftware/eid/utils/EidPreconditionsTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@
1515
*/
1616
package pl.wavesoftware.eid.utils;
1717

18+
import org.hamcrest.CoreMatchers;
1819
import org.hamcrest.CustomMatcher;
1920
import org.hamcrest.Matcher;
20-
import org.hamcrest.Matchers;
2121
import org.junit.Rule;
2222
import org.junit.Test;
2323
import org.junit.rules.ExpectedException;
@@ -34,9 +34,9 @@
3434
import java.text.ParseException;
3535

3636
import static org.assertj.core.api.Assertions.assertThat;
37-
import static org.hamcrest.Matchers.containsString;
38-
import static org.hamcrest.Matchers.equalTo;
39-
import static org.hamcrest.Matchers.isA;
37+
import static org.hamcrest.CoreMatchers.containsString;
38+
import static org.hamcrest.CoreMatchers.equalTo;
39+
import static org.hamcrest.CoreMatchers.isA;
4040
import static org.junit.internal.matchers.ThrowableMessageMatcher.hasMessage;
4141

4242
/**
@@ -197,7 +197,7 @@ public void testCheckElementIndex_Nulls() {
197197
// given
198198
Integer index = nullyValue();
199199
Integer size = nullyValue();
200-
Matcher<String> m = Matchers.equalTo(null);
200+
Matcher<String> m = CoreMatchers.equalTo(null);
201201
// then
202202
thrown.expect(NullPointerException.class);
203203
thrown.expectMessage(m);

0 commit comments

Comments
 (0)