|
1 | 1 | package uk.gov.objecthash; |
2 | 2 | import org.junit.Test; |
3 | 3 |
|
| 4 | +import java.time.Instant; |
| 5 | +import java.time.LocalDate; |
| 6 | +import java.time.ZoneId; |
| 7 | + |
4 | 8 | import static org.junit.Assert.*; |
5 | 9 |
|
6 | 10 |
|
7 | 11 | public class ObjectHashTest { |
| 12 | + |
8 | 13 | @Test |
9 | 14 | public void hashesStrings() { |
10 | | - assertEquals(ObjectHash.stringToHexDigest("Hello, Ruby!"), "c92765c1350e6df6800dbadedb3420f398d5f3c7e38a3da48aadb3332280f85f"); |
| 15 | + assertEquals(ObjectHash.toHexDigest("Hello, Ruby!"), "c92765c1350e6df6800dbadedb3420f398d5f3c7e38a3da48aadb3332280f85f"); |
11 | 16 | } |
12 | 17 |
|
13 | 18 | @Test |
14 | 19 | public void normalisesStrings() { |
15 | | - assertEquals(ObjectHash.stringToHexDigest("\u03d3"), "f72826713a01881404f34975447bd6edcb8de40b191dc57097ebf4f5417a554d" ); |
16 | | - assertEquals(ObjectHash.stringToHexDigest("\u03d2\u0301"), "f72826713a01881404f34975447bd6edcb8de40b191dc57097ebf4f5417a554d" ); |
| 20 | + assertEquals(ObjectHash.toHexDigest("\u03d3"), "f72826713a01881404f34975447bd6edcb8de40b191dc57097ebf4f5417a554d" ); |
| 21 | + assertEquals(ObjectHash.toHexDigest("\u03d2\u0301"), "f72826713a01881404f34975447bd6edcb8de40b191dc57097ebf4f5417a554d" ); |
17 | 22 | } |
18 | 23 |
|
19 | 24 | @Test |
20 | 25 | public void hashesIntegers() { |
21 | | - assertEquals(ObjectHash.integerToHexDigest(-1), "f105b11df43d5d321f5c773ef904af979024887b4d2b0fab699387f59e2ff01e" ); |
22 | | - assertEquals(ObjectHash.integerToHexDigest(0), "a4e167a76a05add8a8654c169b07b0447a916035aef602df103e8ae0fe2ff390" ); |
23 | | - assertEquals(ObjectHash.integerToHexDigest(10), "73f6128db300f3751f2e509545be996d162d20f9e030864632f85e34fd0324ce" ); |
24 | | - assertEquals(ObjectHash.integerToHexDigest(1000), "a3346d18105ef801c3598fec426dcc5d4be9d0374da5343f6c8dcbdf24cb8e0b" ); |
| 26 | + assertEquals(ObjectHash.toHexDigest(-1), "f105b11df43d5d321f5c773ef904af979024887b4d2b0fab699387f59e2ff01e" ); |
| 27 | + assertEquals(ObjectHash.toHexDigest(0), "a4e167a76a05add8a8654c169b07b0447a916035aef602df103e8ae0fe2ff390" ); |
| 28 | + assertEquals(ObjectHash.toHexDigest(10), "73f6128db300f3751f2e509545be996d162d20f9e030864632f85e34fd0324ce" ); |
| 29 | + assertEquals(ObjectHash.toHexDigest(1000), "a3346d18105ef801c3598fec426dcc5d4be9d0374da5343f6c8dcbdf24cb8e0b" ); |
| 30 | + } |
| 31 | + |
| 32 | + @Test |
| 33 | + public void hashesTimestamps() { |
| 34 | + LocalDate date = LocalDate.parse("2000-01-01"); |
| 35 | + Instant instant = date.atStartOfDay(ZoneId.of("UTC")).toInstant(); |
| 36 | + assertEquals(ObjectHash.toHexDigest(instant), "cb34961d3d1a44386a73c37eb64c72a2b61ff40fc108abca92ef07c4954a1645" ); |
25 | 37 | } |
26 | 38 | } |
0 commit comments