EncodePasswordTestCase.java revision 378931eeabc8709b956de2da88403d571c4aac07
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * CDDL HEADER START
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * The contents of this file are subject to the terms of the
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * Common Development and Distribution License, Version 1.0 only
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * (the "License"). You may not use this file except in compliance
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * with the License.
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * You can obtain a copy of the license at
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * trunk/opends/resource/legal-notices/OpenDS.LICENSE
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * See the License for the specific language governing permissions
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * and limitations under the License.
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * When distributing Covered Code, include this CDDL HEADER in each
566a01eb745d49bd866971062388cd11d525b60dDavid Lawrence * file and include the License file at
ea31416b4fcdf23732355a8002f93f29e3b3d2dbAndreas Gustafsson * trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable,
64e41159a919b0711321fe688ca5da4f4d1b7d80Bob Halley * add the following below this CDDL HEADER, with the fields enclosed
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley * by brackets "[]" replaced with your own identifying information:
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley * Portions Copyright [yyyy] [name of copyright owner]
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley * CDDL HEADER END
ccdac53c027e8964753b36c4d8c7b0e98af501c2Michael Graff * Portions Copyright 2006-2007 Sun Microsystems, Inc.
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrenceimport org.opends.server.core.DirectoryServer;
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrenceimport org.opends.server.protocols.internal.InternalClientConnection;
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrenceimport org.opends.server.protocols.ldap.LDAPResultCode;
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrenceimport org.opends.server.types.OperatingSystem;
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrenceimport static org.opends.server.util.ServerConstants.*;
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * A set of test cases for the EncodePassword tool.
ae4cbb69eef32ced103fe4561e8d2031ee4c3497David Lawrence // The path to the Directory Server configuration file.
ae4cbb69eef32ced103fe4561e8d2031ee4c3497David Lawrence // The path to the temporary file containing a password.
ae4cbb69eef32ced103fe4561e8d2031ee4c3497David Lawrence * Ensures that the Directory Server is running and gets the config file path.
ae4cbb69eef32ced103fe4561e8d2031ee4c3497David Lawrence * @throws Exception If an unexpected problem occurs.
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence configFilePath = DirectoryServer.getServerRoot() + File.separator +
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence passwordFilePath = TestCaseUtils.createTempFile("password");
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * Retrieves sets of invalid arguments that may not be used to initialize
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * the EncodePassword tool.
0293ad13207aa29bd5844cdc87d085ffc009d749David Lawrence * @return Sets of invalid arguments that may not be used to initialize the
0293ad13207aa29bd5844cdc87d085ffc009d749David Lawrence * EncodePassword tool.
0293ad13207aa29bd5844cdc87d085ffc009d749David Lawrence ArrayList<String[]> argLists = new ArrayList<String[]>();
0293ad13207aa29bd5844cdc87d085ffc009d749David Lawrence ArrayList<String> reasonList = new ArrayList<String>();
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence reasonList.add("No value for '-f' argument");
4bcaefbcd3ced942139fdc830e007c6ea2b8d2feDavid Lawrence reasonList.add("No value for '-c' argument");
4bcaefbcd3ced942139fdc830e007c6ea2b8d2feDavid Lawrence reasonList.add("No value for '-F' argument");
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence reasonList.add("No value for '-s' argument");
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence "--invalidLongArgument"
ea31416b4fcdf23732355a8002f93f29e3b3d2dbAndreas Gustafsson reasonList.add("No storage scheme or encoded password");
ea31416b4fcdf23732355a8002f93f29e3b3d2dbAndreas Gustafsson reasonList.add("Both clear password and clear password file");
971d1fe83172bce09d6319c5735d243d68d8cb47Andreas Gustafsson "--encodedPasswordFile", passwordFilePath
ea31416b4fcdf23732355a8002f93f29e3b3d2dbAndreas Gustafsson reasonList.add("Both encoded password and encoded password file");
ea31416b4fcdf23732355a8002f93f29e3b3d2dbAndreas Gustafsson Object[][] returnArray = new Object[argLists.size()][2];
13494a4d4bead37f22eb6c4779c73310109f7e4aJames Brister * Tests the EncodePassword tool with sets of invalid arguments.
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley * @param args The set of arguments to use for the ListBackends
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley * @param invalidReason The reason the provided set of arguments is invalid.
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence public void testInvalidArguments(String[] args, String invalidReason)
2b556032fd78aff37e80e755044b944a017245cdDavid Lawrence assertFalse((EncodePassword.encodePassword(args, false, null, null) == 0),
2b556032fd78aff37e80e755044b944a017245cdDavid Lawrence "Should have been invalid because: " + invalidReason);
2b556032fd78aff37e80e755044b944a017245cdDavid Lawrence * Tests the EncodePassword tool with the --listSchemes argument.
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley "--listSchemes"
a2171e092382f8f8a72b1f73436ddf93918c7719Bob Halley assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * Tests the EncodePassword tool with the --listSchemes and
12ccbb032ec1b5f6b93aac923f2645a19fc90c75David Lawrence * --authPasswordSyntax arguments.
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence "--listSchemes",
566a01eb745d49bd866971062388cd11d525b60dDavid Lawrence "--authPasswordSyntax"
566a01eb745d49bd866971062388cd11d525b60dDavid Lawrence assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
566a01eb745d49bd866971062388cd11d525b60dDavid Lawrence * Tests the EncodePassword tool with the --clearPassword and --storageScheme
566a01eb745d49bd866971062388cd11d525b60dDavid Lawrence assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
facb97777a972f6c8035ca3e762a6a9248c12897Bob Halley * Tests the EncodePassword tool with the --clearPassword, --storageScheme,
facb97777a972f6c8035ca3e762a6a9248c12897Bob Halley * and --authPasswordSyntax arguments.
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence "--authPasswordSyntax"
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
882350d11c90de9de6fc1cead25690c8114b0b95Michael Graff * Tests the EncodePassword tool with the --clearPasswordFile and
882350d11c90de9de6fc1cead25690c8114b0b95Michael Graff * --storageScheme arguments.
1443aa0adf4d262abdf2721a5239acd4812cdc06Bob Halley assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
9fbc1afb8b08432e3a1adda1f41d5575620e9785Bob Halley * Tests the EncodePassword tool with the --clearPasswordFile, --storageScheme,
9fbc1afb8b08432e3a1adda1f41d5575620e9785Bob Halley * and --authPasswordSyntax arguments.
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley public void testEncodeClearAuthPasswordFromFile()
694c897b20f06f8a5349fd9ac5df93947f6f5a2aBob Halley "--authPasswordSyntax"
7c0876aa42e6abaa8779bcb83962ccf20a9f4da3Bob Halley assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
694c897b20f06f8a5349fd9ac5df93947f6f5a2aBob Halley * Tests the EncodePassword tool with the --clearPassword and --storageScheme
694c897b20f06f8a5349fd9ac5df93947f6f5a2aBob Halley * arguments using an invalid storage scheme.
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence public void testEncodeClearPasswordWithInvalidScheme()
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley assertFalse(EncodePassword.encodePassword(args, false, null, null) == 0);
9cda9dc86efa0dde8f906759c4e3279da028b5f4Bob Halley * Tests the EncodePassword tool with the --clearPassword, --storageScheme,
9cda9dc86efa0dde8f906759c4e3279da028b5f4Bob Halley * and --authPasswordSyntax arguments using an invalid storage scheme.
35c842e05dc6382ce1d9161a658d3ff4b2c3d4c9Bob Halley public void testEncodeClearPasswordWithInvalidAuthScheme()
9cda9dc86efa0dde8f906759c4e3279da028b5f4Bob Halley "--authPasswordSyntax"
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence assertFalse(EncodePassword.encodePassword(args, false, null, null) == 0);
4c5faa6bcf41d8ba253b872a04105a2fcc88c07bMichael Graff * Tests the EncodePassword tool with the --clearPasswordFile and
51917258dbb23cfe6069ae1cf2b7fc5aefc1e0c2Bob Halley * --storageScheme arguments using an a password file that doesn't exist.
51917258dbb23cfe6069ae1cf2b7fc5aefc1e0c2Bob Halley public void testEncodeClearPasswordFromMissingFile()
8671e8306b3f18abf0e19c2fb9d49205962e7ab7David Lawrence "--clearPasswordFile", passwordFilePath + ".missing",
8671e8306b3f18abf0e19c2fb9d49205962e7ab7David Lawrence assertFalse(EncodePassword.encodePassword(args, false, null, null) == 0);
8671e8306b3f18abf0e19c2fb9d49205962e7ab7David Lawrence * Tests the EncodePassword tool with the --clearPasswordFile,
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * --storageScheme, and --authPasswordSyntax arguments using an a password
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * file that doesn't exist.
c7620c99f1139b77f14678e21a44f7c8c4236a7bMark Andrews public void testEncodeClearAuthPasswordFromMissingFile()
c7620c99f1139b77f14678e21a44f7c8c4236a7bMark Andrews "--clearPasswordFile", passwordFilePath + ".missing",
40f24178432de09181bc603cc90110546a0ddca2Mark Andrews "--authPasswordSyntax"
40f24178432de09181bc603cc90110546a0ddca2Mark Andrews assertFalse(EncodePassword.encodePassword(args, false, null, null) == 0);
40f24178432de09181bc603cc90110546a0ddca2Mark Andrews * Tests the EncodePassword tool by performing a comparison of clear-text
40f24178432de09181bc603cc90110546a0ddca2Mark Andrews * with a valid matching encoded password.
40f24178432de09181bc603cc90110546a0ddca2Mark Andrews public void testCompareMatchingPasswordsNoScheme()
afb4ad8f988591bccae0ee2ac73b2fef5d969366Mark Andrews assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
afb4ad8f988591bccae0ee2ac73b2fef5d969366Mark Andrews * Tests the EncodePassword tool by performing a comparison of clear-text
afb4ad8f988591bccae0ee2ac73b2fef5d969366Mark Andrews * with a valid matching encoded password.
afb4ad8f988591bccae0ee2ac73b2fef5d969366Mark Andrews public void testCompareMatchingPasswordsWithScheme()
40f24178432de09181bc603cc90110546a0ddca2Mark Andrews assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
23693a38979a5f30334176bd3ddd1c42004f55b2Mark Andrews * Tests the EncodePassword tool by performing a comparison of clear-text
23693a38979a5f30334176bd3ddd1c42004f55b2Mark Andrews * with a valid matching auth password.
700f1442882eda0cce05a51e8c6f820c51054e8eMark Andrews "--encodedPassword", "SHA1$dcKtMsOgc30=$MtHvXqXXJIRgxxw4xRXIY6ZLkQo=",
700f1442882eda0cce05a51e8c6f820c51054e8eMark Andrews "--authPasswordSyntax"
40f24178432de09181bc603cc90110546a0ddca2Mark Andrews assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
6182613ef54ebb8369d951ffa4431c49b75cec51Mark Andrews * Tests the EncodePassword tool by performing a comparison of clear-text
6182613ef54ebb8369d951ffa4431c49b75cec51Mark Andrews * with a non-matching encoded password.
6182613ef54ebb8369d951ffa4431c49b75cec51Mark Andrews public void testCompareNonMatchingPasswordsNoScheme()
c7620c99f1139b77f14678e21a44f7c8c4236a7bMark Andrews assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * Tests the EncodePassword tool by performing a comparison of clear-text
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence * with a non-matching encoded password.
ca485ab26fffa241a3eac1899b2d2012dd1fdb73Andreas Gustafsson public void testCompareNonMatchingPasswordsWithScheme()
ca485ab26fffa241a3eac1899b2d2012dd1fdb73Andreas Gustafsson assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence * Tests the EncodePassword tool by performing a comparison of clear-text
64e41159a919b0711321fe688ca5da4f4d1b7d80Bob Halley * with a non-matching auth password.
64e41159a919b0711321fe688ca5da4f4d1b7d80Bob Halley public void testCompareNonMatchingAuthPasswords()
64e41159a919b0711321fe688ca5da4f4d1b7d80Bob Halley "--encodedPassword", "SHA1$dcKtMsOgc30=$MtHvXqXXJIRgxxw4xRXIY6ZLkQo=",
64e41159a919b0711321fe688ca5da4f4d1b7d80Bob Halley "--authPasswordSyntax"
64e41159a919b0711321fe688ca5da4f4d1b7d80Bob Halley assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
193738b819e3c699f9edd18864a6810fcfcec855Andreas Gustafsson * Tests the EncodePassword tool by performing a comparison of clear-text
64e41159a919b0711321fe688ca5da4f4d1b7d80Bob Halley * with a valid matching encoded password using the LDAP compare result as an
64e41159a919b0711321fe688ca5da4f4d1b7d80Bob Halley * exit code.
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence public void testCompareMatchingPasswordsNoSchemeCompareResult()
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence "--useCompareResultCode"
7bb707a34778fc4bd9624d6c5de95675424ea59fDavid Lawrence assertEquals(EncodePassword.encodePassword(args, false, null, null),
7bb707a34778fc4bd9624d6c5de95675424ea59fDavid Lawrence * Tests the EncodePassword tool by performing a comparison of clear-text
7bb707a34778fc4bd9624d6c5de95675424ea59fDavid Lawrence * with a valid matching encoded password using the LDAP compare result as an
7bb707a34778fc4bd9624d6c5de95675424ea59fDavid Lawrence public void testCompareMatchingPasswordsWithSchemeCompareResult()
35c842e05dc6382ce1d9161a658d3ff4b2c3d4c9Bob Halley "--useCompareResultCode"
7bb707a34778fc4bd9624d6c5de95675424ea59fDavid Lawrence assertEquals(EncodePassword.encodePassword(args, false, null, null),
7bb707a34778fc4bd9624d6c5de95675424ea59fDavid Lawrence * Tests the EncodePassword tool by performing a comparison of clear-text
7bb707a34778fc4bd9624d6c5de95675424ea59fDavid Lawrence * with a valid matching auth password using the LDAP compare result as an
0fde58a7673f28fcc08eb8f597581247a4c2db20Bob Halley public void testCompareMatchingAuthPasswordsCompareResult()
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence "--encodedPassword", "SHA1$dcKtMsOgc30=$MtHvXqXXJIRgxxw4xRXIY6ZLkQo=",
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence "--authPasswordSyntax",
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence "--useCompareResultCode"
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence assertEquals(EncodePassword.encodePassword(args, false, null, null),
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence * Tests the EncodePassword tool by performing a comparison of clear-text
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence * with a non-matching encoded password using the LDAP compare result as an
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence public void testCompareNonMatchingPasswordsNoSchemeCompareResult()
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence "--useCompareResultCode"
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence assertEquals(EncodePassword.encodePassword(args, false, null, null),
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence * Tests the EncodePassword tool by performing a comparison of clear-text
8a9b755d32a4f6ace792ac3fd17c968cf96d2487David Lawrence * with a non-matching encoded password using the LDAP compare result as an
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence public void testCompareNonMatchingPasswordsWithSchemeCompareResult()
51917258dbb23cfe6069ae1cf2b7fc5aefc1e0c2Bob Halley "--useCompareResultCode"
51917258dbb23cfe6069ae1cf2b7fc5aefc1e0c2Bob Halley assertEquals(EncodePassword.encodePassword(args, false, null, null),
64e41159a919b0711321fe688ca5da4f4d1b7d80Bob Halley * Tests the EncodePassword tool by performing a comparison of clear-text
694c897b20f06f8a5349fd9ac5df93947f6f5a2aBob Halley * with a non-matching auth password using the LDAP compare result as an
51917258dbb23cfe6069ae1cf2b7fc5aefc1e0c2Bob Halley * exit code.
1bb509f58b57f1d9ef413762fb9e3dd2bcaf7ed4Mark Andrews public void testCompareNonMatchingAuthPasswordsCompareResult()
f7bf83d0cc099e754327f8da8c4d6d320da1de01Mark Andrews "--encodedPassword", "SHA1$dcKtMsOgc30=$MtHvXqXXJIRgxxw4xRXIY6ZLkQo=",
f7bf83d0cc099e754327f8da8c4d6d320da1de01Mark Andrews "--authPasswordSyntax",
51917258dbb23cfe6069ae1cf2b7fc5aefc1e0c2Bob Halley "--useCompareResultCode"
51917258dbb23cfe6069ae1cf2b7fc5aefc1e0c2Bob Halley assertEquals(EncodePassword.encodePassword(args, false, null, null),
8a1930d026517e4733d680ac51abeb01353332c4Mark Andrews * Tests the EncodePassword tool by performing a comparison of clear-text
8a1930d026517e4733d680ac51abeb01353332c4Mark Andrews * with a malformed encoded auth password.
8a1930d026517e4733d680ac51abeb01353332c4Mark Andrews public void testCompareInvalidEncodedAuthPassword()
df3c4c7988b9bae7d121a8ac9ed17a23366a948dDavid Lawrence "--encodedPassword", "malformedencodedauthpassword",
5c00d1c90030a311d2700970fa7cffc8f828a48cBob Halley "--authPasswordSyntax"
5c00d1c90030a311d2700970fa7cffc8f828a48cBob Halley assertFalse(EncodePassword.encodePassword(args, false, null, null) == 0);
6d5dcd0dc9bdbd679282b1ffc47987d24c3a1346Bob Halley * Tests the EncodePassword tool by performing a comparison of clear-text
51917258dbb23cfe6069ae1cf2b7fc5aefc1e0c2Bob Halley * with an encoded password that uses an unknown scheme.
a3ab70dae26d009bf78b0594b2ab5eb9208f4b91Michael Graff public void testCompareEncodedPasswordWithUnknownScheme()
4bcaefbcd3ced942139fdc830e007c6ea2b8d2feDavid Lawrence assertFalse(EncodePassword.encodePassword(args, false, null, null) == 0);
51917258dbb23cfe6069ae1cf2b7fc5aefc1e0c2Bob Halley * Tests the EncodePassword tool by performing a comparison of clear-text
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley * with an encoded password that uses an unknown scheme.
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley public void testCompareEncodedPasswordWithUnknownSeparateScheme()
b2f85baf7905bad89781f8ef73003d4cfa955257Michael Graff assertFalse(EncodePassword.encodePassword(args, false, null, null) == 0);
9fbc1afb8b08432e3a1adda1f41d5575620e9785Bob Halley * Tests the EncodePassword tool by performing a comparison of clear-text
51917258dbb23cfe6069ae1cf2b7fc5aefc1e0c2Bob Halley * with an encoded auth password that uses an unknown scheme.
694c897b20f06f8a5349fd9ac5df93947f6f5a2aBob Halley public void testCompareEncodedAuthPasswordWithUnknownScheme()
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley "--authPasswordSyntax"
a5d43b72413db3edd6b36a58f9bdf2cf6ff692f2Bob Halley assertFalse(EncodePassword.encodePassword(args, false, null, null) == 0);
65c4736d9c0ebc6d9b1d991593b55566909da9cdBrian Wellington * Tests the EncodePassword tool with the help options.
65c4736d9c0ebc6d9b1d991593b55566909da9cdBrian Wellington assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);
c68fa795a1c87fd5d0386e0503dc5666490ac77fMichael Graff assertEquals(EncodePassword.encodePassword(args, false, null, null), 0);