diff --git a/chat/src/main/java/net/md_5/bungee/api/chat/BaseComponent.java b/chat/src/main/java/net/md_5/bungee/api/chat/BaseComponent.java index c3ffbf7c..72521862 100644 --- a/chat/src/main/java/net/md_5/bungee/api/chat/BaseComponent.java +++ b/chat/src/main/java/net/md_5/bungee/api/chat/BaseComponent.java @@ -13,7 +13,7 @@ import net.md_5.bungee.api.chat.ComponentBuilder.FormatRetention; @Setter @ToString(exclude = "parent") -@EqualsAndHashCode +@EqualsAndHashCode(exclude = "parent") @NoArgsConstructor public abstract class BaseComponent { diff --git a/chat/src/test/java/net/md_5/bungee/api/chat/ComponentsTest.java b/chat/src/test/java/net/md_5/bungee/api/chat/ComponentsTest.java index a88f6a1e..df38e297 100644 --- a/chat/src/test/java/net/md_5/bungee/api/chat/ComponentsTest.java +++ b/chat/src/test/java/net/md_5/bungee/api/chat/ComponentsTest.java @@ -409,6 +409,30 @@ public class ComponentsTest Assert.assertEquals( text, roundtripLegacyText ); } + @Test + public void testEquals() + { + TextComponent first = new TextComponent( "Hello, " ); + first.addExtra( new TextComponent( "World!" ) ); + + TextComponent second = new TextComponent( "Hello, " ); + second.addExtra( new TextComponent( "World!" ) ); + + Assert.assertEquals( first, second ); + } + + @Test + public void testNotEquals() + { + TextComponent first = new TextComponent( "Hello, " ); + first.addExtra( new TextComponent( "World." ) ); + + TextComponent second = new TextComponent( "Hello, " ); + second.addExtra( new TextComponent( "World!" ) ); + + Assert.assertNotEquals( first, second ); + } + private String fromAndToLegacyText(String legacyText) { return BaseComponent.toLegacyText( TextComponent.fromLegacyText( legacyText ) );