Home / Class/ SelectedSelectionKeySetTest Class — netty Architecture

SelectedSelectionKeySetTest Class — netty Architecture

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

Entity Profile

Dependency Diagram

graph TD
  03100f7a_7fc8_3d40_e675_1af9c37d04ac["SelectedSelectionKeySetTest"]
  2f53457a_c196_d238_e88e_9bf855058eba["SelectedSelectionKeySetTest.java"]
  03100f7a_7fc8_3d40_e675_1af9c37d04ac -->|defined in| 2f53457a_c196_d238_e88e_9bf855058eba
  8ec8149b_0fcc_1107_1123_eed92f40bb88["setup()"]
  03100f7a_7fc8_3d40_e675_1af9c37d04ac -->|method| 8ec8149b_0fcc_1107_1123_eed92f40bb88
  4ca42cad_ae39_2118_8315_ab73a715eac7["addElements()"]
  03100f7a_7fc8_3d40_e675_1af9c37d04ac -->|method| 4ca42cad_ae39_2118_8315_ab73a715eac7
  b98e2c37_c49c_e0e3_d18f_dafad7885e4d["resetSet()"]
  03100f7a_7fc8_3d40_e675_1af9c37d04ac -->|method| b98e2c37_c49c_e0e3_d18f_dafad7885e4d
  506e2b7b_2159_bdcc_057b_2c9bc4533fed["iterator()"]
  03100f7a_7fc8_3d40_e675_1af9c37d04ac -->|method| 506e2b7b_2159_bdcc_057b_2c9bc4533fed
  3b317703_ccbb_860e_b98d_bb8765040b53["contains()"]
  03100f7a_7fc8_3d40_e675_1af9c37d04ac -->|method| 3b317703_ccbb_860e_b98d_bb8765040b53
  17e4c457_ee41_1ca5_5b85_a1ff0df2ad65["remove()"]
  03100f7a_7fc8_3d40_e675_1af9c37d04ac -->|method| 17e4c457_ee41_1ca5_5b85_a1ff0df2ad65

Relationship Graph

Source Code

transport/src/test/java/io/netty/channel/nio/SelectedSelectionKeySetTest.java lines 34–117

public class SelectedSelectionKeySetTest {
    @Mock
    private SelectionKey mockKey;
    @Mock
    private SelectionKey mockKey2;

    @Mock
    private SelectionKey mockKey3;

    @BeforeEach
    public void setup() {
        MockitoAnnotations.initMocks(this);
    }

    @Test
    public void addElements() {
        SelectedSelectionKeySet set = new SelectedSelectionKeySet();
        final int expectedSize = 1000000;
        for (int i = 0; i < expectedSize; ++i) {
            assertTrue(set.add(mockKey));
        }

        assertEquals(expectedSize, set.size());
        assertFalse(set.isEmpty());
    }

    @Test
    public void resetSet() {
        SelectedSelectionKeySet set = new SelectedSelectionKeySet();
        assertTrue(set.add(mockKey));
        assertTrue(set.add(mockKey2));
        set.reset(1);

        assertSame(mockKey, set.keys[0]);
        assertNull(set.keys[1]);
        assertEquals(0, set.size());
        assertTrue(set.isEmpty());
    }

    @Test
    public void iterator() {
        SelectedSelectionKeySet set = new SelectedSelectionKeySet();
        assertTrue(set.add(mockKey));
        assertTrue(set.add(mockKey2));
        Iterator<SelectionKey> keys = set.iterator();
        assertTrue(keys.hasNext());
        assertSame(mockKey, keys.next());
        assertTrue(keys.hasNext());
        assertSame(mockKey2, keys.next());
        assertFalse(keys.hasNext());

        try {
            keys.next();
            fail();
        } catch (NoSuchElementException expected) {
            // expected
        }

        try {
            keys.remove();
            fail();
        } catch (UnsupportedOperationException expected) {
            // expected
        }
    }

    @Test
    public void contains() {
        SelectedSelectionKeySet set = new SelectedSelectionKeySet();
        assertTrue(set.add(mockKey));
        assertTrue(set.add(mockKey2));
        assertTrue(set.contains(mockKey));
        assertTrue(set.contains(mockKey2));
        assertFalse(set.contains(mockKey3));
    }

    @Test
    public void remove() {
        SelectedSelectionKeySet set = new SelectedSelectionKeySet();
        assertTrue(set.add(mockKey));
        assertFalse(set.remove(mockKey));

Frequently Asked Questions

What is the SelectedSelectionKeySetTest class?
SelectedSelectionKeySetTest is a class in the netty codebase, defined in transport/src/test/java/io/netty/channel/nio/SelectedSelectionKeySetTest.java.
Where is SelectedSelectionKeySetTest defined?
SelectedSelectionKeySetTest is defined in transport/src/test/java/io/netty/channel/nio/SelectedSelectionKeySetTest.java at line 34.

Analyze Your Own Codebase

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

Try Supermodel Free