The following issues were found

src/test/java/com/alibaba/fastjson/deserializer/issues3796/bean/ObjectC1.java
1 issues
The class 'ObjectC1' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=10, WMC=10)
Design

Line: 3

              package com.alibaba.fastjson.deserializer.issues3796.bean;

public class ObjectC1 {
	
	private int a;

	
	private int b;
	

            

Reported by PMD.

src/test/java/com/alibaba/json/bvt/bug/Issue190.java
1 issues
JUnit 4 tests that execute tests should use the @Test annotation, JUnit 5 tests should use @Test, @RepeatedTest, @TestFactory, @TestTemplate or @ParameterizedTest
Design

Line: 11

              
public class Issue190 extends TestCase {

    public void test_for_issue() throws Exception {
        Assert.assertEquals(WebSoscketCommand.A, JSON.parseObject("\"A\"", WebSoscketCommand.class));
    }
    
    public static enum WebSoscketCommand {
        A, B, C

            

Reported by PMD.

src/test/java/com/alibaba/fastjson/deserializer/issues3796/bean/ObjectB2.java
1 issues
The class 'ObjectB2' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=8, WMC=8)
Design

Line: 7

              
import java.util.List;

public class ObjectB2 {


    
    @JSONField(serialize = false)
    private int a = 1;

            

Reported by PMD.

src/test/java/com/alibaba/fastjson/deserializer/issues3796/bean/ObjectL2_B.java
1 issues
The class 'ObjectL2_B' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=4, WMC=4)
Design

Line: 7

              


public class ObjectL2_B {
    
    int a;
    
    int b;


            

Reported by PMD.

src/test/java/com/alibaba/fastjson/deserializer/issues3796/bean/ObjectI_A.java
1 issues
The class 'ObjectI_A' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=6, WMC=6)
Design

Line: 4

              package com.alibaba.fastjson.deserializer.issues3796.bean;


public class ObjectI_A {
    int a;
    int b;
    boolean c;

    public int getA() {

            

Reported by PMD.

src/main/java/com/alibaba/fastjson/parser/deserializer/JavaObjectDeserializer.java
1 issues
Potential violation of Law of Demeter (object not created locally)
Design

Line: 26

                          Type componentType = ((GenericArrayType) type).getGenericComponentType();
            if (componentType instanceof TypeVariable) {
                TypeVariable<?> componentVar = (TypeVariable<?>) componentType;
                componentType = componentVar.getBounds()[0];
            }

            List<Object> list = new ArrayList<Object>();
            parser.parseArray(componentType, list);
            Class<?> componentClass = TypeUtils.getRawClass(componentType);

            

Reported by PMD.

src/test/java/com/alibaba/fastjson/deserializer/issues3796/bean/ObjectZ1_A.java
1 issues
The class 'ObjectZ1_A' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=6, WMC=6)
Design

Line: 8

              


public class ObjectZ1_A {
    
    private int a;

    
    private int b;

            

Reported by PMD.

src/test/java/com/alibaba/fastjson/deserializer/issues3796/bean/ObjectM.java
1 issues
The class 'ObjectM' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=20, WMC=20)
Design

Line: 9

              import java.util.List;


public class ObjectM {
	
	private int a;
	
	private int b;
	

            

Reported by PMD.

src/test/java/com/alibaba/fastjson/deserializer/issues3796/bean/ObjectQ1_A.java
1 issues
The class 'ObjectQ1_A' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=10, WMC=10)
Design

Line: 9

              import java.util.List;


public class ObjectQ1_A {
    
    private int a;

    
    private List<ObjectQ1_B> b;

            

Reported by PMD.

src/test/java/com/alibaba/fastjson/deserializer/issues3796/bean/ObjectI2.java
1 issues
The class 'ObjectI2' is suspected to be a Data Class (WOC=0.000%, NOPA=0, NOAM=6, WMC=6)
Design

Line: 6

              import java.util.List;


public class ObjectI2 {
    private int a;

    
    private List<Integer> b;


            

Reported by PMD.