slfan1989 commented on code in PR #4746:
URL: https://github.com/apache/hadoop/pull/4746#discussion_r953295360
##########
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/test/java/org/apache/hadoop/yarn/server/federation/utils/TestFederationStateStoreFacade.java:
##########
@@ -232,4 +239,111 @@ public void testGetApplicationHomeSubClusterCache()
throws YarnException {
}
}
+ @Test
+ public void testStoreNewMasterKey() throws YarnException, IOException {
+ // store delegation key;
+ DelegationKey key = new DelegationKey(1234, 4321, "keyBytes".getBytes());
+ HashSet<DelegationKey> keySet = new HashSet<DelegationKey>();
+ keySet.add(key);
+ facade.storeNewMasterKey(key);
+
+ MemoryFederationStateStore federationStateStore =
+ (MemoryFederationStateStore) facade.getStateStore();
+ RouterRMDTSecretManagerState secretManagerState =
+ federationStateStore.getRouterRMSecretManagerState();
+ Assert.assertEquals(keySet, secretManagerState.getMasterKeyState());
+ }
+
+ @Test
+ public void testRemoveStoredMasterKey() throws YarnException, IOException {
+ // store delegation key;
+ DelegationKey key = new DelegationKey(4567, 7654, "keyBytes".getBytes());
+ HashSet<DelegationKey> keySet = new HashSet<DelegationKey>();
+ keySet.add(key);
+ facade.storeNewMasterKey(key);
+
+ // check to delete delegationKey
+ facade.removeStoredMasterKey(key);
+ keySet.clear();
+
+ MemoryFederationStateStore federationStateStore =
+ (MemoryFederationStateStore) facade.getStateStore();
+ RouterRMDTSecretManagerState secretManagerState =
+ federationStateStore.getRouterRMSecretManagerState();
+ Assert.assertEquals(keySet, secretManagerState.getMasterKeyState());
+ }
+
+ @Test
+ public void testStoreNewToken() throws YarnException, IOException {
+ // store new rm-token
+ RMDelegationTokenIdentifier dtId1 = new RMDelegationTokenIdentifier(
+ new Text("owner1"), new Text("renewer1"), new Text("realuser1"));
+ int sequenceNumber = 1;
+ dtId1.setSequenceNumber(sequenceNumber);
+ Long renewDate1 = Time.now();
+ facade.storeNewToken(dtId1, renewDate1);
+
+ Map<RMDelegationTokenIdentifier, Long> token1 =
+ new HashMap<RMDelegationTokenIdentifier, Long>();
+ token1.put(dtId1, renewDate1);
+
+ MemoryFederationStateStore federationStateStore =
+ (MemoryFederationStateStore) facade.getStateStore();
+ RouterRMDTSecretManagerState storeSecretManagerState =
+ federationStateStore.getRouterRMSecretManagerState();
+ Assert.assertEquals(token1, storeSecretManagerState.getTokenState());
+ }
+
+ @Test
+ public void testUpdateNewToken() throws YarnException, IOException {
+ // store new rm-token
+ RMDelegationTokenIdentifier dtId1 = new RMDelegationTokenIdentifier(
+ new Text("owner2"), new Text("renewer2"), new Text("realuser2"));
+ int sequenceNumber = 2;
+ dtId1.setSequenceNumber(sequenceNumber);
+ Long renewDate1 = Time.now();
+ facade.storeNewToken(dtId1, renewDate1);
+
+ Map<RMDelegationTokenIdentifier, Long> token1 =
+ new HashMap<RMDelegationTokenIdentifier, Long>();
+ token1.put(dtId1, renewDate1);
+
+ renewDate1 = Time.now();
+ facade.updateStoredToken(dtId1, renewDate1);
+ token1.put(dtId1, renewDate1);
+
+ MemoryFederationStateStore federationStateStore =
+ (MemoryFederationStateStore) facade.getStateStore();
+ RouterRMDTSecretManagerState updateSecretManagerState =
+ federationStateStore.getRouterRMSecretManagerState();
+ Assert.assertEquals(token1, updateSecretManagerState.getTokenState());
+ Assert.assertEquals(sequenceNumber,
updateSecretManagerState.getDTSequenceNumber());
+ }
+
+ @Test
+ public void testRemoveStoredToken() throws YarnException, IOException {
+ // store new rm-token
+ RMDelegationTokenIdentifier dtId1 = new RMDelegationTokenIdentifier(
+ new Text("owner3"), new Text("renewer3"), new Text("realuser3"));
+ int sequenceNumber = 3;
+ dtId1.setSequenceNumber(sequenceNumber);
+ Long renewDate1 = Time.now();
+ facade.storeNewToken(dtId1, renewDate1);
+
+ Map<RMDelegationTokenIdentifier, Long> token1 =
+ new HashMap<RMDelegationTokenIdentifier, Long>();
Review Comment:
I will fix it.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]