Home / Class/ DefaultAttributeMapTest Class — netty Architecture

DefaultAttributeMapTest Class — netty Architecture

Architecture documentation for the DefaultAttributeMapTest class in DefaultAttributeMapTest.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  819b0da9_e205_6fba_cbb6_4b0d0b21b01c["DefaultAttributeMapTest"]
  7265a75c_4b2a_24f4_de42_71bf5415e6fe["DefaultAttributeMapTest.java"]
  819b0da9_e205_6fba_cbb6_4b0d0b21b01c -->|defined in| 7265a75c_4b2a_24f4_de42_71bf5415e6fe
  d45a8fbf_b101_ca8c_84e8_1fbd952fb8f8["setup()"]
  819b0da9_e205_6fba_cbb6_4b0d0b21b01c -->|method| d45a8fbf_b101_ca8c_84e8_1fbd952fb8f8
  98146a2b_bc7e_b97d_16af_137c63694bbf["testMapExists()"]
  819b0da9_e205_6fba_cbb6_4b0d0b21b01c -->|method| 98146a2b_bc7e_b97d_16af_137c63694bbf
  1a994bf4_508c_0747_8ae6_ddd5564b0770["testGetSetString()"]
  819b0da9_e205_6fba_cbb6_4b0d0b21b01c -->|method| 1a994bf4_508c_0747_8ae6_ddd5564b0770
  d8d5bfdb_034b_82ce_d771_642cacb415e6["testGetSetInt()"]
  819b0da9_e205_6fba_cbb6_4b0d0b21b01c -->|method| d8d5bfdb_034b_82ce_d771_642cacb415e6
  5b60d44f_edbb_81f4_fc89_177092c358ed["testSetRemove()"]
  819b0da9_e205_6fba_cbb6_4b0d0b21b01c -->|method| 5b60d44f_edbb_81f4_fc89_177092c358ed
  ee5a5ba5_4d15_3cdf_bdab_3e116ef5f8f3["testHasAttrRemoved()"]
  819b0da9_e205_6fba_cbb6_4b0d0b21b01c -->|method| ee5a5ba5_4d15_3cdf_bdab_3e116ef5f8f3
  7e7385d4_3797_30ec_ee32_35d557c83d7a["testGetAndSetWithNull()"]
  819b0da9_e205_6fba_cbb6_4b0d0b21b01c -->|method| 7e7385d4_3797_30ec_ee32_35d557c83d7a

Relationship Graph

Source Code

common/src/test/java/io/netty/util/DefaultAttributeMapTest.java lines 29–131

public class DefaultAttributeMapTest {

    private DefaultAttributeMap map;

    @BeforeEach
    public void setup() {
        map = new DefaultAttributeMap();
    }

    @Test
    public void testMapExists() {
        assertNotNull(map);
    }

    @Test
    public void testGetSetString() {
        AttributeKey<String> key = AttributeKey.valueOf("Nothing");
        Attribute<String> one = map.attr(key);

        assertSame(one, map.attr(key));

        one.setIfAbsent("Whoohoo");
        assertSame("Whoohoo", one.get());

        one.setIfAbsent("What");
        assertNotSame("What", one.get());

        one.remove();
        assertNull(one.get());
    }

    @Test
    public void testGetSetInt() {
        AttributeKey<Integer> key = AttributeKey.valueOf("Nada");
        Attribute<Integer> one = map.attr(key);

        assertSame(one, map.attr(key));

        one.setIfAbsent(3653);
        assertEquals(Integer.valueOf(3653), one.get());

        one.setIfAbsent(1);
        assertNotSame(1, one.get());

        one.remove();
        assertNull(one.get());
    }

    // See https://github.com/netty/netty/issues/2523
    @Test
    public void testSetRemove() {
        AttributeKey<Integer> key = AttributeKey.valueOf("key");

        Attribute<Integer> attr = map.attr(key);
        attr.set(1);
        assertSame(1, attr.getAndRemove());

        Attribute<Integer> attr2 = map.attr(key);
        attr2.set(2);
        assertSame(2, attr2.get());
        assertNotSame(attr, attr2);
    }

    @Test
    public void testHasAttrRemoved() {
        AttributeKey<Integer>[] keys = new AttributeKey[20];
        for (int i = 0; i < 20; i++) {
            keys[i] = AttributeKey.valueOf(Integer.toString(i));
        }
        for (int i = 10; i < 20; i++) {
            map.attr(keys[i]);
        }
        for (int i = 0; i < 10; i++) {
            map.attr(keys[i]);
        }
        for (int i = 10; i < 20; i++) {
            AttributeKey<Integer> key = AttributeKey.valueOf(Integer.toString(i));
            assertTrue(map.hasAttr(key));
            map.attr(key).remove();
            assertFalse(map.hasAttr(key));
        }

Frequently Asked Questions

What is the DefaultAttributeMapTest class?
DefaultAttributeMapTest is a class in the netty codebase, defined in common/src/test/java/io/netty/util/DefaultAttributeMapTest.java.
Where is DefaultAttributeMapTest defined?
DefaultAttributeMapTest is defined in common/src/test/java/io/netty/util/DefaultAttributeMapTest.java at line 29.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free