### Question:
RSAAlgorithm extends Algorithm { @Override public String getSigningKeyId() { return keyProvider.getPrivateKeyId(); } RSAAlgorithm(CryptoHelper crypto, String id, String algorithm, RSAKeyProvider keyProvider);   RSAAlgorithm(String id, String algorithm, RSAKeyProvider keyProvider); @Override void verify(DecodedJWT jwt); @Override @Deprecated byte[] sign(byte[] headerBytes, byte[] payloadBytes); @Override byte[] sign(byte[] contentBytes); @Override String getSigningKeyId();  }### Answer:
@Test public void shouldReturnSigningKeyIdFromProvider() throws Exception { RSAKeyProvider provider = mock(RSAKeyProvider.class); when(provider.getPrivateKeyId()).thenReturn("keyId"); Algorithm algorithm = new RSAAlgorithm("some-alg", "some-algorithm", provider); assertThat(algorithm.getSigningKeyId(), is("keyId")); }