#1237 - ENH: Add ProfileLocation - support for relating performance metrics for queries and transactions back to source line of code

This commit is contained in:
Rob Bygrave
2018-01-18 18:10:03 +13:00
parent 82f5c21d26
commit b9ae76d465
23 changed files with 359 additions and 11 deletions
@@ -0,0 +1,17 @@
package io.ebeaninternal.server.profile;
import org.junit.Test;
import static org.assertj.core.api.Assertions.assertThat;
public class BasicProfileLocationTest {
@Test
public void obtain() {
DProfileLocation loc = new DProfileLocation(12);
String obtain = loc.obtain();
assertThat(obtain).endsWith(":12)");
}
}
@@ -35,8 +35,9 @@ public class CustomerFinder extends Finder<Integer, Customer> {
* Find customer by unique name.
*/
public Customer byName(String name) {
return query().where().eq("name", name).findOne();
return query().where()
.eq("name", name)
.findOne();
}
public List<Customer> byNameStatus(String nameStartsWith, Customer.Status status) {
@@ -0,0 +1,21 @@
package org.tests.profile;
import io.ebean.ProfileLocation;
import org.junit.Test;
import static org.assertj.core.api.Assertions.assertThat;
public class ProfileLocationTest {
private static ProfileLocation loc = ProfileLocation.create(12);
@Test
public void test() {
assertThat(doIt()).isEqualTo("org.tests.profile.ProfileLocationTest.doIt(ProfileLocationTest.java:19)");
}
private String doIt() {
return loc.obtain();
}
}