1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.hadoop.hbase.client;
21
22 import java.util.Arrays;
23
24 import org.apache.hadoop.hbase.testclassification.SmallTests;
25 import org.apache.hadoop.hbase.util.Bytes;
26 import org.junit.Assert;
27 import org.junit.Test;
28 import org.junit.experimental.categories.Category;
29
30 @Category(SmallTests.class)
31 public class TestAttributes {
32 private static final byte [] ROW = new byte [] {'r'};
33 @Test
34 public void testPutAttributes() {
35 Put put = new Put(ROW);
36 Assert.assertTrue(put.getAttributesMap().isEmpty());
37 Assert.assertNull(put.getAttribute("absent"));
38
39 put.setAttribute("absent", null);
40 Assert.assertTrue(put.getAttributesMap().isEmpty());
41 Assert.assertNull(put.getAttribute("absent"));
42
43
44 put.setAttribute("attribute1", Bytes.toBytes("value1"));
45 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value1"), put.getAttribute("attribute1")));
46 Assert.assertEquals(1, put.getAttributesMap().size());
47 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value1"), put.getAttributesMap().get("attribute1")));
48
49
50 put.setAttribute("attribute1", Bytes.toBytes("value12"));
51 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value12"), put.getAttribute("attribute1")));
52 Assert.assertEquals(1, put.getAttributesMap().size());
53 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value12"), put.getAttributesMap().get("attribute1")));
54
55
56 put.setAttribute("attribute2", Bytes.toBytes("value2"));
57 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value2"), put.getAttribute("attribute2")));
58 Assert.assertEquals(2, put.getAttributesMap().size());
59 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value2"), put.getAttributesMap().get("attribute2")));
60
61
62 put.setAttribute("attribute2", null);
63 Assert.assertNull(put.getAttribute("attribute2"));
64 Assert.assertEquals(1, put.getAttributesMap().size());
65 Assert.assertNull(put.getAttributesMap().get("attribute2"));
66
67
68 put.setAttribute("attribute2", null);
69 Assert.assertNull(put.getAttribute("attribute2"));
70 Assert.assertEquals(1, put.getAttributesMap().size());
71 Assert.assertNull(put.getAttributesMap().get("attribute2"));
72
73
74 put.setAttribute("attribute1", null);
75 Assert.assertNull(put.getAttribute("attribute1"));
76 Assert.assertTrue(put.getAttributesMap().isEmpty());
77 Assert.assertNull(put.getAttributesMap().get("attribute1"));
78 }
79
80
81 @Test
82 public void testDeleteAttributes() {
83 Delete del = new Delete(new byte [] {'r'});
84 Assert.assertTrue(del.getAttributesMap().isEmpty());
85 Assert.assertNull(del.getAttribute("absent"));
86
87 del.setAttribute("absent", null);
88 Assert.assertTrue(del.getAttributesMap().isEmpty());
89 Assert.assertNull(del.getAttribute("absent"));
90
91
92 del.setAttribute("attribute1", Bytes.toBytes("value1"));
93 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value1"), del.getAttribute("attribute1")));
94 Assert.assertEquals(1, del.getAttributesMap().size());
95 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value1"), del.getAttributesMap().get("attribute1")));
96
97
98 del.setAttribute("attribute1", Bytes.toBytes("value12"));
99 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value12"), del.getAttribute("attribute1")));
100 Assert.assertEquals(1, del.getAttributesMap().size());
101 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value12"), del.getAttributesMap().get("attribute1")));
102
103
104 del.setAttribute("attribute2", Bytes.toBytes("value2"));
105 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value2"), del.getAttribute("attribute2")));
106 Assert.assertEquals(2, del.getAttributesMap().size());
107 Assert.assertTrue(Arrays.equals(Bytes.toBytes("value2"), del.getAttributesMap().get("attribute2")));
108
109
110 del.setAttribute("attribute2", null);
111 Assert.assertNull(del.getAttribute("attribute2"));
112 Assert.assertEquals(1, del.getAttributesMap().size());
113 Assert.assertNull(del.getAttributesMap().get("attribute2"));
114
115
116 del.setAttribute("attribute2", null);
117 Assert.assertNull(del.getAttribute("attribute2"));
118 Assert.assertEquals(1, del.getAttributesMap().size());
119 Assert.assertNull(del.getAttributesMap().get("attribute2"));
120
121
122 del.setAttribute("attribute1", null);
123 Assert.assertNull(del.getAttribute("attribute1"));
124 Assert.assertTrue(del.getAttributesMap().isEmpty());
125 Assert.assertNull(del.getAttributesMap().get("attribute1"));
126 }
127
128 @Test
129 public void testGetId() {
130 Get get = new Get(ROW);
131 Assert.assertNull("Make sure id is null if unset", get.toMap().get("id"));
132 get.setId("myId");
133 Assert.assertEquals("myId", get.toMap().get("id"));
134 }
135
136 @Test
137 public void testAppendId() {
138 Append append = new Append(ROW);
139 Assert.assertNull("Make sure id is null if unset", append.toMap().get("id"));
140 append.setId("myId");
141 Assert.assertEquals("myId", append.toMap().get("id"));
142 }
143
144 @Test
145 public void testDeleteId() {
146 Delete delete = new Delete(ROW);
147 Assert.assertNull("Make sure id is null if unset", delete.toMap().get("id"));
148 delete.setId("myId");
149 Assert.assertEquals("myId", delete.toMap().get("id"));
150 }
151
152 @Test
153 public void testPutId() {
154 Put put = new Put(ROW);
155 Assert.assertNull("Make sure id is null if unset", put.toMap().get("id"));
156 put.setId("myId");
157 Assert.assertEquals("myId", put.toMap().get("id"));
158 }
159
160 @Test
161 public void testScanId() {
162 Scan scan = new Scan();
163 Assert.assertNull("Make sure id is null if unset", scan.toMap().get("id"));
164 scan.setId("myId");
165 Assert.assertEquals("myId", scan.toMap().get("id"));
166 }
167 }