@Test
    public void testComputeHmac() throws Exception
    {
        // Setup test fixture.
        final byte[] key = StringUtils.decodeHex("1d96ee3a529b5a5f9e47c01f229a2cb8a6e15f7d"); // 'salted password' from the test vectors.
        final String value = "Client Key";

        // Execute system under test.
        final byte[] result = ScramUtils.computeHmac(key, value);

        // Verify results.
        assertArrayEquals(StringUtils.decodeHex("e234c47bf6c36696dd6d852b99aaa2ba26555728"), result); // test against 'client key' from the test vectors.
    }
Verifies the implementation of {@link ScramUtils#computeHmac(byte[], String)} by using test vectors that are
provided by the XSF.

This test uses the test vectors identified as the 'client key'.

@see <a href="https://wiki.xmpp.org/web/SASL_Authentication_and_SCRAM">XSF SCRAM test vectors.</a>
xmppserver/src/test/java/org/jivesoftware/openfire/auth/ScramUtilsTest.java