• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

leeonky / test-charm-java / 290

08 Sep 2025 03:25PM UTC coverage: 74.312% (-0.003%) from 74.315%
290

push

circleci

leeonky
Introduce PropertyWriterDecorator

10 of 25 new or added lines in 6 files covered. (40.0%)

20 existing lines in 10 files now uncovered.

8155 of 10974 relevant lines covered (74.31%)

0.74 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

77.78
/DAL-java/src/main/java/com/github/leeonky/dal/ast/node/DALNode.java
1
package com.github.leeonky.dal.ast.node;
2

3
import com.github.leeonky.dal.ast.node.table.RowHeader;
4
import com.github.leeonky.dal.ast.node.table.RowType;
5
import com.github.leeonky.dal.ast.opt.DALOperator;
6
import com.github.leeonky.dal.runtime.Data;
7
import com.github.leeonky.dal.runtime.ExpectationFactory;
8
import com.github.leeonky.dal.runtime.RuntimeContextBuilder.DALRuntimeContext;
9
import com.github.leeonky.interpreter.NodeBase;
10

11
import java.util.List;
12
import java.util.stream.Stream;
13

14
public abstract class DALNode extends NodeBase<DALRuntimeContext, DALNode> {
1✔
15
    public Data<?> evaluateData(DALRuntimeContext context) {
16
        return context.data(evaluate(context));
1✔
17
    }
18

19
    @Override
20
    public Object evaluate(DALRuntimeContext context) {
21
        return evaluateData(context).value();
1✔
22
    }
23

24
    public abstract String inspect();
25

26
    public Object getRootSymbolName() {
27
        return null;
1✔
28
    }
29

30
    public List<Object> propertyChain() {
UNCOV
31
        throw new IllegalStateException();
×
32
    }
33

34
    public Stream<Object> collectFields(Data<?> data) {
35
        return Stream.of(data.firstFieldFromAlias(getRootSymbolName()));
1✔
36
    }
37

38
    public Data<?> verify(DALOperator operator, DALNode actual, DALRuntimeContext context) {
39
        Data<?> actualData = actual.evaluateData(context);
1✔
40
        return context.pushPositionAndExecute(actual.getOperandPosition(),
1✔
41
                () -> context.calculate(actualData, operator, context.data(toVerify(context))));
1✔
42
    }
43

44
    protected ExpectationFactory toVerify(DALRuntimeContext context) {
45
        Data<?> expected = evaluateData(context);
1✔
46
        return (operator, actual) -> new ExpectationFactory.Expectation() {
1✔
47
            @Override
48
            public Data<?> matches() {
49
                return context.fetchMatchingChecker(expected, actual).verify(expected, actual, context);
1✔
50
            }
51

52
            @Override
53
            public Data<?> equalTo() {
54
                return context.fetchEqualsChecker(expected, actual).verify(expected, actual, context);
1✔
55
            }
56

57
            @Override
58
            public ExpectationFactory.Type type() {
UNCOV
59
                return ExpectationFactory.Type.VALUE;
×
60
            }
61
        };
62
    }
63

64
    public RowType guessTableHeaderType() {
UNCOV
65
        return RowHeader.DEFAULT_INDEX;
×
66
    }
67

68
    public boolean needPrefixBlankWarningCheck() {
69
        return false;
1✔
70
    }
71

72
    public boolean needPostBlankWarningCheck() {
73
        return false;
1✔
74
    }
75

76
    @Override
77
    public String toString() {
UNCOV
78
        return inspect();
×
79
    }
80
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc