@Test
    public void userNode() {
        // Given
        Range range = Range.between(0, 60 * 1000);
        TimeWindow timeWindow = new TimeWindow(range);

        NodeList.Builder nodeBuilder = NodeList.newBuilder();

        // userNode : [userNode] user
        Node userNode = createNode("userNode", ServiceType.USER);
        String userNodeAgent = "user";
        nodeBuilder.addNode(userNode);
        // wasNode : [wasNode] was-1, was-2
        Node wasNode = createNode("wasNode", ServiceTypeFactory.of(1000, "WAS"));
        String wasNodeAgent1 = "was-1";
        String wasNodeAgent2 = "was-2";
        nodeBuilder.addNode(wasNode);
        NodeList nodeList = nodeBuilder.build();

        Link link = new Link(LinkDirection.OUT_LINK, userNode, wasNode, range);
        HistogramSlot fastSlot = wasNode.getServiceType().getHistogramSchema().getFastSlot();
        HistogramSlot normalSlot = wasNode.getServiceType().getHistogramSchema().getNormalSlot();
        // [userNode] user -> [wasNode] was-1
        long fastCallCount = 100L;
        link.addOutLink(createLinkCallDataMap(userNodeAgent, userNode.getServiceType(), wasNodeAgent1, wasNode.getServiceType(), fastSlot, fastCallCount));
        // [userNode] user -> [wasNode] was-2
        long normalCallCount = 50L;
        link.addOutLink(createLinkCallDataMap(userNodeAgent, userNode.getServiceType(), wasNodeAgent2, wasNode.getServiceType(), normalSlot, normalCallCount));
        LinkList linkList = LinkList.of(link);

        // When
        nodeHistogramAppender.appendNodeHistogram(timeWindow, nodeList, linkList, buildTimeoutMillis);

        NodeHistogram nodeHistogram = userNode.getNodeHistogram();
        // verify application-level histogram
        Histogram applicationHistogram = nodeHistogram.getApplicationHistogram();
        assertEquals(fastCallCount, applicationHistogram.getFastCount());
        assertEquals(normalCallCount, applicationHistogram.getNormalCount());
        assertEquals(fastCallCount + normalCallCount, applicationHistogram.getTotalCount());
        // verify agent-level histogram - there is none for user node
        Map<String, Histogram> databaseAgentHistogramMap = nodeHistogram.getAgentHistogramMap();
        assertThat(databaseAgentHistogramMap).isEmpty();
    }
Checks histograms for user node.
<pre>
    userNode ---> wasNode (2 agents)
</pre>
web/src/test/java/com/navercorp/pinpoint/web/applicationmap/appender/histogram/NodeHistogramAppenderTest.java