From d6aec5da313ee871689b3b5c550afb7f1b166443 Mon Sep 17 00:00:00 2001 From: David Pursehouse Date: Fri, 1 Sep 2017 13:33:57 +0900 Subject: [PATCH] ObjectCheckerTest: Factor duplicate instances out to constants The tests: - testCheckBlobNotCorrupt - testCheckBlobCorrupt create instances of ObjectChecker that are the same. The tests: - testCheckBlobWithBlobObjectCheckerNotCorrupt - testCheckBlobWithBlobObjectCheckerCorrupt also create instances of ObjectChecker that are the same. Factor these instances out to constants instead of creating them in the tests. The `checker` member is still created anew in each test, since some of the tests change its state. Change-Id: I2d90263829d01d208632185b1ec2f678ae1a3f4c Signed-off-by: David Pursehouse --- .../eclipse/jgit/lib/ObjectCheckerTest.java | 114 +++++++----------- 1 file changed, 42 insertions(+), 72 deletions(-) diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ObjectCheckerTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ObjectCheckerTest.java index 7f783536a..7475d69f6 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ObjectCheckerTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/ObjectCheckerTest.java @@ -79,6 +79,42 @@ import org.junit.Test; import org.junit.rules.ExpectedException; public class ObjectCheckerTest { + private static final ObjectChecker SECRET_KEY_CHECKER = new ObjectChecker() { + @Override + public void checkBlob(byte[] raw) throws CorruptObjectException { + String in = decode(raw); + if (in.contains("secret_key")) { + throw new CorruptObjectException("don't add a secret key"); + } + } + }; + + private static final ObjectChecker SECRET_KEY_BLOB_CHECKER = new ObjectChecker() { + @Override + public BlobObjectChecker newBlobObjectChecker() { + return new BlobObjectChecker() { + private boolean containSecretKey; + + @Override + public void update(byte[] in, int offset, int len) { + String str = decode(in, offset, offset + len); + if (str.contains("secret_key")) { + containSecretKey = true; + } + } + + @Override + public void endBlob(AnyObjectId id) + throws CorruptObjectException { + if (containSecretKey) { + throw new CorruptObjectException( + "don't add a secret key"); + } + } + }; + } + }; + private ObjectChecker checker; @Rule @@ -109,94 +145,28 @@ public class ObjectCheckerTest { @Test public void testCheckBlobNotCorrupt() throws CorruptObjectException { - checker = new ObjectChecker() { - @Override - public void checkBlob(byte[] raw) throws CorruptObjectException { - String in = decode(raw); - if (in.contains("secret_key")) { - throw new CorruptObjectException("don't add a secret key"); - } - } - }; - checker.check(OBJ_BLOB, encodeASCII("key = \"public_key\"")); + SECRET_KEY_CHECKER.check(OBJ_BLOB, encodeASCII("key = \"public_key\"")); } @Test public void testCheckBlobCorrupt() throws CorruptObjectException { - checker = new ObjectChecker() { - @Override - public void checkBlob(byte[] raw) throws CorruptObjectException { - String in = decode(raw); - if (in.contains("secret_key")) { - throw new CorruptObjectException("don't add a secret key"); - } - } - }; thrown.expect(CorruptObjectException.class); - checker.check(OBJ_BLOB, encodeASCII("key = \"secret_key\"")); + SECRET_KEY_CHECKER.check(OBJ_BLOB, encodeASCII("key = \"secret_key\"")); } @Test public void testCheckBlobWithBlobObjectCheckerNotCorrupt() throws CorruptObjectException { - checker = new ObjectChecker() { - @Override - public BlobObjectChecker newBlobObjectChecker() { - return new BlobObjectChecker() { - private boolean containSecretKey; - - @Override - public void update(byte[] in, int offset, int len) { - String str = decode(in, offset, offset + len); - if (str.contains("secret_key")) { - containSecretKey = true; - } - } - - @Override - public void endBlob(AnyObjectId id) - throws CorruptObjectException { - if (containSecretKey) { - throw new CorruptObjectException( - "don't add a secret key"); - } - } - }; - } - }; - checker.check(OBJ_BLOB, encodeASCII("key = \"public_key\"")); + SECRET_KEY_BLOB_CHECKER.check(OBJ_BLOB, + encodeASCII("key = \"public_key\"")); } @Test public void testCheckBlobWithBlobObjectCheckerCorrupt() throws CorruptObjectException { - checker = new ObjectChecker() { - @Override - public BlobObjectChecker newBlobObjectChecker() { - return new BlobObjectChecker() { - private boolean containSecretKey; - - @Override - public void update(byte[] in, int offset, int len) { - String str = decode(in, offset, offset + len); - if (str.contains("secret_key")) { - containSecretKey = true; - } - } - - @Override - public void endBlob(AnyObjectId id) - throws CorruptObjectException { - if (containSecretKey) { - throw new CorruptObjectException( - "don't add a secret key"); - } - } - }; - } - }; thrown.expect(CorruptObjectException.class); - checker.check(OBJ_BLOB, encodeASCII("key = \"secret_key\"")); + SECRET_KEY_BLOB_CHECKER.check(OBJ_BLOB, + encodeASCII("key = \"secret_key\"")); } @Test