1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.jci.stores;
19
20 import org.apache.commons.jci.AbstractTestCase;
21 import org.apache.commons.lang.ArrayUtils;
22
23
24
25
26
27
28 public final class ResourceStoreTestCase extends AbstractTestCase {
29
30 public void testMemoryResourceStore() {
31 checkReadWrite(new MemoryResourceStore());
32 checkRemove(new MemoryResourceStore());
33 }
34
35 public void testFileResourceStore() {
36 checkReadWrite(new FileResourceStore(directory));
37 checkRemove(new FileResourceStore(directory));
38 }
39
40 public void testTransactionalFileResourceStore() {
41 checkReadWrite(new TransactionalResourceStore(new FileResourceStore(directory)));
42 checkRemove(new TransactionalResourceStore(new FileResourceStore(directory)));
43 }
44
45 private void checkReadWrite( final ResourceStore pStore ) {
46 final byte[] data = { 1, 2, 3 };
47 pStore.write("key", data);
48
49 final byte[] read = pStore.read("key");
50
51 assertTrue(read != null);
52 assertTrue(ArrayUtils.isEquals(data, read));
53 }
54
55 private void checkRemove( final ResourceStore pStore ) {
56 final byte[] data = { 1, 2, 3 };
57 pStore.write("key", data);
58
59 final byte[] read = pStore.read("key");
60
61 assertTrue(read != null);
62 assertTrue(ArrayUtils.isEquals(data, read));
63
64 pStore.remove("key");
65
66 final byte[] empty = pStore.read("key");
67
68 assertTrue(empty == null);
69 }
70 }