### Question:
ClientId extends XRoadId { @JsonIgnore public ClientId getMemberId() { if (getSubsystemCode() == null) { return this; } else { return ClientId.create(this.getXRoadInstance(), this.getMemberClass(), this.getMemberCode()); } } ClientId(); private  ClientId(String xRoadInstance, String memberClass,
            String memberCode, String subsystemCode); String getMemberClass(); String getMemberCode(); String getSubsystemCode(); boolean subsystemContainsMember(ClientId member); boolean memberEquals(ClientId other); @Override String[] getFieldsForStringFormat(); static ClientId create(String xRoadInstance,
            String memberClass, String memberCode, String subsystemCode); static ClientId create(String xRoadInstance,
            String memberClass, String memberCode); @JsonIgnore ClientId getMemberId();  }### Answer:
@Test public void getMemberId() throws Exception { ClientId subsystemId = ClientId.create("instance", "memberclass", "membercode", "subsystemcode"); ClientId memberId = subsystemId.getMemberId(); assertTrue(subsystemId != memberId); assertEquals(SUBSYSTEM, subsystemId.getObjectType()); assertEquals(MEMBER, memberId.getObjectType()); assertEquals(subsystemId.getXRoadInstance(), memberId.getXRoadInstance()); assertEquals(subsystemId.getMemberClass(), memberId.getMemberClass()); assertEquals(subsystemId.getMemberCode(), memberId.getMemberCode()); assertNull(memberId.getSubsystemCode()); ClientId memberId2 = memberId.getMemberId(); assertTrue(memberId == memberId2); }