Jelajahi Sumber

Add back empty config warning

Lortseam 4 tahun lalu
induk
melakukan
35c88ad608

+ 1 - 1
lib/src/main/java/me/lortseam/completeconfig/data/CollectionSet.java

@@ -16,7 +16,7 @@ public class CollectionSet extends DataSet<Collection> {
         Collection collection = new Collection(groupID, translation.append(groupID), group.getTooltipTranslationKeys(), group.getComment());
         collection.resolveContainer(group);
         if (collection.isEmpty()) {
-            logger.warn("Group " + groupID + " is empty");
+            logger.warn("Empty group: " + groupID);
             return;
         }
         add(collection);

+ 1 - 0
lib/src/main/java/me/lortseam/completeconfig/data/Config.java

@@ -142,6 +142,7 @@ public final class Config extends BaseCollection {
                 config = new Config(new ConfigSource(modID, branch), children.toArray(new ConfigContainer[0]));
             }
             if (config == null || config.isEmpty()) {
+                logger.warn("Empty config: " + modID + " " + Arrays.toString(branch));
                 return null;
             }
             if (main || branch.length == 0 && !mainConfigs.containsKey(modID)) {

+ 0 - 4
lib/src/main/java/me/lortseam/completeconfig/io/ConfigSource.java

@@ -2,7 +2,6 @@ package me.lortseam.completeconfig.io;
 
 import lombok.EqualsAndHashCode;
 import lombok.Getter;
-import lombok.ToString;
 import lombok.extern.log4j.Log4j2;
 import me.lortseam.completeconfig.CompleteConfig;
 import me.lortseam.completeconfig.data.Config;
@@ -20,7 +19,6 @@ import java.util.Set;
 
 @Log4j2(topic = "CompleteConfig")
 @EqualsAndHashCode(onlyExplicitlyIncluded = true)
-@ToString(onlyExplicitlyIncluded = true)
 public final class ConfigSource {
 
     private static final TypeSerializerCollection GLOBAL_TYPE_SERIALIZERS;
@@ -37,11 +35,9 @@ public final class ConfigSource {
     }
 
     @EqualsAndHashCode.Include
-    @ToString.Include
     @Getter
     private final String modID;
     @EqualsAndHashCode.Include
-    @ToString.Include
     @Getter
     private final String[] branch;
     private final HoconConfigurationLoader loader;

+ 1 - 1
lib/src/test/java/me/lortseam/completeconfig/data/BaseCollectionTest.java

@@ -109,7 +109,7 @@ public class BaseCollectionTest {
     @Test
     public void resolve_logWarningIfEmpty() {
         baseCollection.resolve(new EmptyGroup());
-        assertThat(logCaptor.getWarnLogs()).contains("Group emptyGroup is empty");
+        assertThat(logCaptor.getWarnLogs()).contains("Empty group: emptyGroup");
     }
 
     @Test

+ 8 - 1
lib/src/test/java/me/lortseam/completeconfig/data/ConfigTest.java

@@ -8,6 +8,7 @@ import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
 
+import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.jupiter.api.Assertions.*;
 
 public class ConfigTest {
@@ -59,9 +60,15 @@ public class ConfigTest {
         }
 
         @Test
-        public void build_returnNullIfEmpty() {
+        public void build_logWarningAndReturnNullIfChildrenEmpty() {
             assertNull(builder.build());
+            assertThat(logCaptor.getWarnLogs()).containsExactly("Empty config: " + MOD_ID + " []");
+        }
+
+        @Test
+        public void build_logWarningAndReturnNullIfEmpty() {
             assertNull(builder.add(new EmptyContainer()).build());
+            assertThat(logCaptor.getWarnLogs()).containsExactly("Empty config: " + MOD_ID + " []");
         }
 
     }