質問編集履歴
8
fix title
test
CHANGED
File without changes
|
test
CHANGED
@@ -14,15 +14,13 @@
|
|
14
14
|
|
15
15
|
類似した質問は下記Stackoverflowで確認しているものの、答えが出ておらず解決できていない状況となります。
|
16
16
|
|
17
|
-
Easier DynamoDB local testing
|
18
|
-
|
19
|
-
https://stackoverflow.com/questions/26901613/easier-dynamodb-local-testing
|
17
|
+
[a Easier DynamoDB local testing](https://stackoverflow.com/questions/26901613/easier-dynamodb-local-testing)
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
18
|
+
|
24
|
-
|
19
|
+
|
20
|
+
|
25
|
-
https://github.com/awslabs/dynamodb-lock-client/blob/master/src/test/java/com/amazonaws/services/dynamodbv2/AmazonDynamoDBLockClientTest.java
|
21
|
+
[実装例](https://github.com/awslabs/dynamodb-lock-client/blob/master/src/test/java/com/amazonaws/services/dynamodbv2/AmazonDynamoDBLockClientTest.java)としては以下のようなものとなります。
|
22
|
+
|
23
|
+
|
26
24
|
|
27
25
|
|
28
26
|
|
7
fix overview
test
CHANGED
File without changes
|
test
CHANGED
@@ -20,6 +20,12 @@
|
|
20
20
|
|
21
21
|
|
22
22
|
|
23
|
+
実装例としては以下のようなものとなります。
|
24
|
+
|
25
|
+
https://github.com/awslabs/dynamodb-lock-client/blob/master/src/test/java/com/amazonaws/services/dynamodbv2/AmazonDynamoDBLockClientTest.java
|
26
|
+
|
27
|
+
|
28
|
+
|
23
29
|
|
24
30
|
|
25
31
|
### 発生している問題・エラーメッセージ
|
6
fix overview
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,9 +6,9 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
ローカルDynamoDBによるテストではなく、
|
9
|
+
ローカルDynamoDBによるテストではなく、Mockを使った実装をしたいと考えています。
|
10
|
-
|
11
|
-
|
10
|
+
|
11
|
+
|
12
12
|
|
13
13
|
|
14
14
|
|
5
fix overview
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,6 +6,22 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
+
ローカルDynamoDBによるテストではなく、DynamoDB-mockのようにMockを使った実装をしたいと考えています。
|
10
|
+
|
11
|
+
https://ddbmock.readthedocs.io/en/latest/pages/getting_started.html#using-ddbmock-for-tests
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
類似した質問は下記Stackoverflowで確認しているものの、答えが出ておらず解決できていない状況となります。
|
16
|
+
|
17
|
+
Easier DynamoDB local testing
|
18
|
+
|
19
|
+
https://stackoverflow.com/questions/26901613/easier-dynamodb-local-testing
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
|
9
25
|
### 発生している問題・エラーメッセージ
|
10
26
|
|
11
27
|
|
@@ -393,19 +409,3 @@
|
|
393
409
|
</dependency>
|
394
410
|
|
395
411
|
```
|
396
|
-
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
ローカルDynamoDBによるテストではなく、DynamoDB-mockのようにMockを使った実装をしたいと考えています。
|
402
|
-
|
403
|
-
https://ddbmock.readthedocs.io/en/latest/pages/getting_started.html#using-ddbmock-for-tests
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
類似した質問は下記Stackoverflowで確認しているものの、答えが出ておらず解決できていない状況となります。
|
408
|
-
|
409
|
-
Easier DynamoDB local testing
|
410
|
-
|
411
|
-
https://stackoverflow.com/questions/26901613/easier-dynamodb-local-testing
|
4
add background
test
CHANGED
File without changes
|
test
CHANGED
@@ -393,3 +393,19 @@
|
|
393
393
|
</dependency>
|
394
394
|
|
395
395
|
```
|
396
|
+
|
397
|
+
|
398
|
+
|
399
|
+
|
400
|
+
|
401
|
+
ローカルDynamoDBによるテストではなく、DynamoDB-mockのようにMockを使った実装をしたいと考えています。
|
402
|
+
|
403
|
+
https://ddbmock.readthedocs.io/en/latest/pages/getting_started.html#using-ddbmock-for-tests
|
404
|
+
|
405
|
+
|
406
|
+
|
407
|
+
類似した質問は下記Stackoverflowで確認しているものの、答えが出ておらず解決できていない状況となります。
|
408
|
+
|
409
|
+
Easier DynamoDB local testing
|
410
|
+
|
411
|
+
https://stackoverflow.com/questions/26901613/easier-dynamodb-local-testing
|
3
fix title
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
JUnitでMockitoによるDynamoDBのstubを作成してもjava.lang.NullPointerExceptionが発生。テストを通す方法について
|
test
CHANGED
File without changes
|
2
fix code
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
JUnitでMockitoによるDynamoDBのstubを作成してもjava.lang.NullPointerExceptionが発生するのですが、テストを通す方法について
|
1
|
+
fixJUnitでMockitoによるDynamoDBのstubを作成してもjava.lang.NullPointerExceptionが発生するのですが、テストを通す方法について
|
test
CHANGED
@@ -228,17 +228,31 @@
|
|
228
228
|
|
229
229
|
final static String valCol = "meaning";
|
230
230
|
|
231
|
-
|
231
|
+
String testKey;
|
232
|
+
|
232
|
-
|
233
|
+
String testValue;
|
234
|
+
|
235
|
+
|
236
|
+
|
237
|
+
|
238
|
+
|
239
|
+
|
240
|
+
|
233
|
-
|
241
|
+
@InjectMocks
|
234
|
-
|
242
|
+
|
235
|
-
|
243
|
+
private MyDic mydic;
|
236
|
-
|
237
|
-
|
238
|
-
|
244
|
+
|
245
|
+
|
246
|
+
|
239
|
-
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
|
247
|
+
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
|
248
|
+
|
240
|
-
|
249
|
+
private DynamoDbClient ddb;
|
250
|
+
|
241
|
-
|
251
|
+
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
|
252
|
+
|
253
|
+
private Map<String,AttributeValue> map;
|
254
|
+
|
255
|
+
|
242
256
|
|
243
257
|
|
244
258
|
|
@@ -246,61 +260,75 @@
|
|
246
260
|
|
247
261
|
public void setUp() throws Exception {
|
248
262
|
|
263
|
+
byte[] array = new byte[7];
|
264
|
+
|
265
|
+
new Random().nextBytes(array);
|
266
|
+
|
267
|
+
String generatedString = new String(array, Charset.forName("UTF-8"));
|
268
|
+
|
269
|
+
testKey = "foo" + generatedString;
|
270
|
+
|
271
|
+
testValue = "bar" + generatedString;
|
272
|
+
|
273
|
+
|
274
|
+
|
249
|
-
|
275
|
+
MockitoAnnotations.initMocks(this);
|
250
276
|
|
251
277
|
}
|
252
278
|
|
253
279
|
|
254
280
|
|
281
|
+
|
282
|
+
|
255
|
-
|
283
|
+
@Test
|
256
|
-
|
284
|
+
|
257
|
-
|
285
|
+
public void testGetSpecifiedWords() {
|
258
|
-
|
286
|
+
|
259
|
-
|
287
|
+
MyDic m = new MyDic();
|
260
|
-
|
288
|
+
|
261
|
-
|
289
|
+
Word word = m.new Word("foo3");
|
262
|
-
|
290
|
+
|
263
|
-
|
291
|
+
List<Word> dic = new ArrayList<Word>();
|
264
|
-
|
292
|
+
|
265
|
-
|
293
|
+
dic.add(word);
|
266
|
-
|
267
|
-
|
268
|
-
|
294
|
+
|
295
|
+
|
296
|
+
|
269
|
-
|
297
|
+
Map<String,AttributeValue> keyToGet = new HashMap<String,AttributeValue>();
|
270
|
-
|
298
|
+
|
271
|
-
|
299
|
+
keyToGet.put(keyCol, AttributeValue.builder()
|
272
|
-
|
300
|
+
|
273
|
-
|
301
|
+
.s("foo3").build());
|
274
|
-
|
302
|
+
|
275
|
-
|
303
|
+
GetItemRequest request = GetItemRequest.builder()
|
276
|
-
|
304
|
+
|
277
|
-
|
305
|
+
.key(keyToGet)
|
278
|
-
|
306
|
+
|
279
|
-
|
307
|
+
.tableName(tableName)
|
280
|
-
|
308
|
+
|
281
|
-
|
309
|
+
.build();
|
282
|
-
|
283
|
-
|
284
|
-
|
310
|
+
|
311
|
+
|
312
|
+
|
285
|
-
|
313
|
+
Mockito.when(ddb.getItem(request).item()).thenReturn(map);
|
286
|
-
|
314
|
+
|
287
|
-
|
315
|
+
Mockito.when(map.keySet().isEmpty()).thenReturn(false);
|
288
|
-
|
316
|
+
|
289
|
-
|
317
|
+
Mockito.when(map.get(keyCol).s()).thenReturn("foo3");
|
290
|
-
|
318
|
+
|
291
|
-
|
319
|
+
Mockito.when(map.get(valCol).s()).thenReturn("bar3");
|
292
|
-
|
293
|
-
|
294
|
-
|
320
|
+
|
321
|
+
|
322
|
+
|
295
|
-
|
323
|
+
List<Word> ans = mydic.getSpecifiedWords(dic);
|
296
|
-
|
324
|
+
|
297
|
-
|
325
|
+
List<Word> target = new ArrayList<Word>(Arrays.asList(m.new Word("foo3", "bar3")));
|
298
|
-
|
299
|
-
|
300
|
-
|
326
|
+
|
327
|
+
|
328
|
+
|
301
|
-
|
329
|
+
assertTrue(ans.get(0).equals(target.get(0)));
|
302
|
-
|
330
|
+
|
303
|
-
|
331
|
+
}
|
304
332
|
|
305
333
|
}
|
306
334
|
|
1
fix code
test
CHANGED
File without changes
|
test
CHANGED
@@ -252,55 +252,55 @@
|
|
252
252
|
|
253
253
|
|
254
254
|
|
255
|
-
|
255
|
+
@Test
|
256
|
-
|
256
|
+
|
257
|
-
|
257
|
+
public void testGetSpecifiedWords() {
|
258
|
-
|
258
|
+
|
259
|
-
|
259
|
+
MyDic m = new MyDic();
|
260
|
-
|
260
|
+
|
261
|
-
|
261
|
+
Word word = m.new Word("foo3");
|
262
|
-
|
262
|
+
|
263
|
-
|
263
|
+
List<Word> dic = new ArrayList<Word>();
|
264
|
-
|
264
|
+
|
265
|
-
|
265
|
+
dic.add(word);
|
266
|
-
|
267
|
-
|
268
|
-
|
266
|
+
|
267
|
+
|
268
|
+
|
269
|
-
|
269
|
+
Map<String,AttributeValue> keyToGet = new HashMap<String,AttributeValue>();
|
270
|
-
|
270
|
+
|
271
|
-
|
271
|
+
keyToGet.put(keyCol, AttributeValue.builder()
|
272
|
-
|
272
|
+
|
273
|
-
|
273
|
+
.s("foo3").build());
|
274
|
-
|
274
|
+
|
275
|
-
|
275
|
+
GetItemRequest request = GetItemRequest.builder()
|
276
|
-
|
276
|
+
|
277
|
-
|
277
|
+
.key(keyToGet)
|
278
|
-
|
278
|
+
|
279
|
-
|
279
|
+
.tableName(tableName)
|
280
|
-
|
280
|
+
|
281
|
-
|
281
|
+
.build();
|
282
|
-
|
283
|
-
|
284
|
-
|
282
|
+
|
283
|
+
|
284
|
+
|
285
|
-
|
285
|
+
Mockito.when(ddb.getItem(request).item()).thenReturn(map);
|
286
|
-
|
286
|
+
|
287
|
-
|
287
|
+
Mockito.when(map.keySet().isEmpty()).thenReturn(false);
|
288
|
-
|
288
|
+
|
289
|
-
|
289
|
+
Mockito.when(map.get(keyCol).s()).thenReturn("foo3");
|
290
|
-
|
290
|
+
|
291
|
-
|
291
|
+
Mockito.when(map.get(valCol).s()).thenReturn("bar3");
|
292
|
-
|
293
|
-
|
294
|
-
|
292
|
+
|
293
|
+
|
294
|
+
|
295
|
-
|
295
|
+
List<Word> ans = mydic.getSpecifiedWords(dic);
|
296
|
-
|
296
|
+
|
297
|
-
|
297
|
+
List<Word> target = new ArrayList<Word>(Arrays.asList(m.new Word("foo3", "bar3")));
|
298
|
-
|
299
|
-
|
300
|
-
|
298
|
+
|
299
|
+
|
300
|
+
|
301
|
-
|
301
|
+
assertTrue(ans.get(0).equals(target.get(0)));
|
302
|
-
|
302
|
+
|
303
|
-
|
303
|
+
}
|
304
304
|
|
305
305
|
}
|
306
306
|
|