diff options
author | Simon Willnauer <simonw@apache.org> | 2016-07-05 11:23:26 +0200 |
---|---|---|
committer | Simon Willnauer <simonw@apache.org> | 2016-07-05 11:23:43 +0200 |
commit | d08812d8394629ed1a7a0a75aafcf88e1774d39b (patch) | |
tree | 7aac2fdcc7c9950325ecd9bad2daf9bc1237f060 /core/src/test/java/org/elasticsearch/common/bytes | |
parent | a4ec0ac22f153750b80a9b1de9788c2fb80cd67e (diff) |
[TEST] fix test to account for internal empyt reference optimization
Diffstat (limited to 'core/src/test/java/org/elasticsearch/common/bytes')
-rw-r--r-- | core/src/test/java/org/elasticsearch/common/bytes/AbstractBytesReferenceTestCase.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/core/src/test/java/org/elasticsearch/common/bytes/AbstractBytesReferenceTestCase.java b/core/src/test/java/org/elasticsearch/common/bytes/AbstractBytesReferenceTestCase.java index c998146ed7..9a9e2a4e61 100644 --- a/core/src/test/java/org/elasticsearch/common/bytes/AbstractBytesReferenceTestCase.java +++ b/core/src/test/java/org/elasticsearch/common/bytes/AbstractBytesReferenceTestCase.java @@ -462,9 +462,16 @@ public abstract class AbstractBytesReferenceTestCase extends ESTestCase { // get a BytesRef from a slice int sliceOffset = randomIntBetween(0, pbr.length()); int sliceLength = randomIntBetween(0, pbr.length() - sliceOffset); + BytesRef sliceRef = pbr.slice(sliceOffset, sliceLength).toBytesRef(); - // note that these are only true if we have <= than a page, otherwise offset/length are shifted - assertEquals(sliceOffset, sliceRef.offset); + + if (sliceLength == 0 && sliceOffset != sliceRef.offset) { + // some impls optimize this to an empty instance then the offset will be 0 + assertEquals(0, sliceRef.offset); + } else { + // note that these are only true if we have <= than a page, otherwise offset/length are shifted + assertEquals(sliceOffset, sliceRef.offset); + } assertEquals(sliceLength, sliceRef.length); } |