public Composite(String name)
    {
        this.name = name;
    }
@Test
    void testComposite()
    {
        Composite composite = new Composite("name");
        assertEquals("name", composite.getName());
        assertEquals(0, composite.getParts().size());
        CompositePart compositePart = new CompositePart("name", 10, 20);
        composite.addPart(compositePart);
        List<CompositePart> parts = composite.getParts();
        assertEquals(1, parts.size());
        assertEquals("name", parts.get(0).getName());
        try
        {
            parts.add(compositePart);
            fail("An UnsupportedOperationException should have been thrown");
        }
        catch (UnsupportedOperationException exception)
        {
            // do nothing
        }
    }