22
33import java .security .NoSuchAlgorithmException ;
44import java .security .SecureRandom ;
5- import junit .framework .TestCase ;
6- import lombok .extern .slf4j .Slf4j ;
5+ import org .junit .Assert ;
76import org .junit .Test ;
8- import org .springframework .util .Assert ;
7+ import org .mockito .Mockito ;
8+ import org .tron .common .crypto .SignInterface ;
99import org .tron .common .crypto .SignUtils ;
1010import org .tron .common .crypto .sm2 .SM2 ;
1111import org .tron .common .utils .ByteUtil ;
1212
13- @ Slf4j
14- public class CredentialsTest extends TestCase {
13+ public class CredentialsTest {
1514
1615 @ Test
1716 public void testCreate () throws NoSuchAlgorithmException {
1817 Credentials credentials = Credentials .create (SignUtils .getGeneratedRandomSign (
19- SecureRandom .getInstance ("NativePRNG" ),true ));
20- Assert .hasText ( credentials . getAddress (), "Credentials address create failed!" );
21- Assert .notNull ( credentials .getSignInterface (),
22- "Credentials cryptoEngine create failed" );
18+ SecureRandom .getInstance ("NativePRNG" ), true ));
19+ Assert .assertNotNull ( "Credentials address create failed!" , credentials . getAddress () );
20+ Assert .assertFalse ( "Credentials address create failed!" , credentials .getAddress (). isEmpty ());
21+ Assert . assertNotNull ( "Credentials cryptoEngine create failed" , credentials . getSignInterface () );
2322 }
2423
2524 @ Test
@@ -28,21 +27,47 @@ public void testCreateFromSM2() {
2827 Credentials .create (SM2 .fromNodeId (ByteUtil .hexToBytes ("fffffffffff"
2928 + "ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
3029 + "fffffffffffffffffffffffffffffffffffffff" )));
30+ Assert .fail ("Expected IllegalArgumentException" );
3131 } catch (Exception e ) {
32- Assert .isInstanceOf ( IllegalArgumentException . class , e );
32+ Assert .assertTrue ( e instanceof IllegalArgumentException );
3333 }
3434 }
3535
3636 @ Test
3737 public void testEquals () throws NoSuchAlgorithmException {
3838 Credentials credentials1 = Credentials .create (SignUtils .getGeneratedRandomSign (
39- SecureRandom .getInstance ("NativePRNG" ),true ));
39+ SecureRandom .getInstance ("NativePRNG" ), true ));
4040 Credentials credentials2 = Credentials .create (SignUtils .getGeneratedRandomSign (
41- SecureRandom .getInstance ("NativePRNG" ),true ));
42- Assert .isTrue (! credentials1 . equals ( credentials2 ) ,
43- "Credentials instance should be not equal!" );
44- Assert .isTrue (!( credentials1 . hashCode () == credentials2 . hashCode ()) ,
45- "Credentials instance hashcode should be not equal!" );
41+ SecureRandom .getInstance ("NativePRNG" ), true ));
42+ Assert .assertNotEquals ( "Credentials instance should be not equal!" ,
43+ credentials1 , credentials2 );
44+ Assert .assertNotEquals ( "Credentials instance hashcode should be not equal!" ,
45+ credentials1 . hashCode (), credentials2 . hashCode () );
4646 }
4747
48- }
48+ @ Test
49+ public void testEqualsWithAddressAndCryptoEngine () {
50+ Object aObject = new Object ();
51+ SignInterface signInterface = Mockito .mock (SignInterface .class );
52+ SignInterface signInterface2 = Mockito .mock (SignInterface .class );
53+ SignInterface signInterface3 = Mockito .mock (SignInterface .class );
54+ byte [] address = "TQhZ7W1RudxFdzJMw6FvMnujPxrS6sFfmj" .getBytes ();
55+ byte [] address2 = "TNCmcTdyrYKMtmE1KU2itzeCX76jGm5Not" .getBytes ();
56+ Mockito .when (signInterface .getAddress ()).thenReturn (address );
57+ Mockito .when (signInterface2 .getAddress ()).thenReturn (address );
58+ Mockito .when (signInterface3 .getAddress ()).thenReturn (address2 );
59+
60+ Credentials credential = Credentials .create (signInterface );
61+ Credentials sameCredential = Credentials .create (signInterface );
62+ Credentials sameAddressDifferentEngineCredential = Credentials .create (signInterface2 );
63+ Credentials differentCredential = Credentials .create (signInterface3 );
64+
65+ Assert .assertFalse (aObject .equals (credential ));
66+ Assert .assertFalse (credential .equals (aObject ));
67+ Assert .assertFalse (credential .equals (null ));
68+ Assert .assertEquals (credential , sameCredential );
69+ Assert .assertNotEquals (credential , sameAddressDifferentEngineCredential );
70+ Assert .assertFalse (credential .equals (differentCredential ));
71+ }
72+
73+ }
0 commit comments