### Question:
SchemaDescriptorFactory { public static LabelSchemaDescriptor forLabel( int labelId, int... propertyIds ) { validateLabelIds( labelId ); validatePropertyIds( propertyIds ); return new LabelSchemaDescriptor( labelId, propertyIds ); } private  SchemaDescriptorFactory(); static LabelSchemaDescriptor forLabel( int labelId, int... propertyIds ); static RelationTypeSchemaDescriptor forRelType( int relTypeId, int... propertyIds ); static MultiTokenSchemaDescriptor multiToken( int[] entityTokens, EntityType entityType, int... propertyIds ); static MultiTokenSchemaDescriptor multiToken( int[] entityTokens, EntityType entityType, int[] propertyIds, int[] sortIds, int[] sortTypes ); static MultiTokenSchemaDescriptor multiTokenSort( int[] entityTokens, EntityType entityType, int[] propertyIds, int[] sortIds,
                                                             int[] sortTypes );  }### Answer:
@Test public void shouldCreateLabelDescriptors() { LabelSchemaDescriptor labelDesc; labelDesc = SchemaDescriptorFactory.forLabel( LABEL_ID, 1 ); assertThat( labelDesc.getLabelId(), equalTo( LABEL_ID ) ); assertArray( labelDesc.getPropertyIds(), 1 ); labelDesc = SchemaDescriptorFactory.forLabel( LABEL_ID, 1, 2, 3 ); assertThat( labelDesc.getLabelId(), equalTo( LABEL_ID ) ); SchemaTestUtil.assertArray( labelDesc.getPropertyIds(), 1, 2, 3 ); labelDesc = SchemaDescriptorFactory.forLabel( LABEL_ID ); assertThat( labelDesc.getLabelId(), equalTo( LABEL_ID ) ); SchemaTestUtil.assertArray( labelDesc.getPropertyIds() ); }
@Test public void shouldCreateEqualLabels() { LabelSchemaDescriptor desc1 = SchemaDescriptorFactory.forLabel( LABEL_ID, 1 ); LabelSchemaDescriptor desc2 = SchemaDescriptorFactory.forLabel( LABEL_ID, 1 ); SchemaTestUtil.assertEquality( desc1, desc2 ); }