### Question:
DhisResourceId implements Serializable { public static boolean isValidId( @Nullable String id ) { if ( id == null ) { return false; } return ID_PATTERN.matcher( id ).matches(); } @JsonCreator  DhisResourceId( @JsonProperty( "type" ) @Nonnull DhisResourceType type, @JsonProperty( "id" ) @Nonnull String id ); static boolean isValidId( @Nullable String id ); @Nullable static DhisResourceId parse( @Nullable String resourceId ); @Nonnull static String toString( @Nonnull DhisResourceType type, @Nonnull String id ); DhisResourceType getType(); String getId(); @Override boolean equals( Object o ); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void isValidId() { Assert.assertTrue( DhisResourceId.isValidId( "uAy82SAhj3ui1" ) ); }
@Test public void isInvalidValidId() { Assert.assertFalse( DhisResourceId.isValidId( "uAy82SAhj3" ) ); }
@Test public void isInvalidValidIdDash() { Assert.assertFalse( DhisResourceId.isValidId( "x-uAy82SAhj3u-x" ) ); }