@ApiOperation(value = "Get types", authorizations = @Authorization(value = "master_key") ) @GET @JsonRequest @Path("/types") public Map<String, String> getTypes() { return Arrays.stream(FieldType.values()).collect(Collectors.toMap(FieldType::name, FieldType::getPrettyName)); }
@Test public void testCollectionFieldsOrdering() throws Exception { getMetastore().createProject(PROJECT_NAME); ImmutableSet.Builder<SchemaField> builder = ImmutableSet.builder(); for (FieldType fieldType : FieldType.values()) { builder.add(new SchemaField(fieldType.name(), fieldType)); } getMetastore().getOrCreateCollectionFields(PROJECT_NAME, "testcollection", builder.build()); for (int i = 0; i < 100; i++) { assertTrue(getMetastore().getCollection(PROJECT_NAME, "testcollection").containsAll(builder.build())); } }
@Test public void testAllSchemaTypes() throws Exception { getMetastore().createProject(PROJECT_NAME); ImmutableSet.Builder<SchemaField> builder = ImmutableSet.builder(); for (FieldType fieldType : FieldType.values()) { builder.add(new SchemaField(fieldType.name(), fieldType)); } getMetastore().getOrCreateCollectionFields(PROJECT_NAME, "testcollection", builder.build()); assertTrue(getMetastore().getCollection(PROJECT_NAME, "testcollection").containsAll(builder.build())); }
@Test public void testDuplicateFields() throws Exception { getMetastore().createProject(PROJECT_NAME); ImmutableSet.Builder<SchemaField> builder = ImmutableSet.builder(); for (FieldType fieldType : FieldType.values()) { builder.add(new SchemaField(fieldType.name(), fieldType)); } getMetastore().getOrCreateCollectionFields(PROJECT_NAME, "testcollection", ImmutableSet.of(new SchemaField("test", LONG))); getMetastore().getOrCreateCollectionFields(PROJECT_NAME, "testcollection", ImmutableSet.of(new SchemaField("test", LONG))); assertTrue(ImmutableSet.copyOf(getMetastore().getCollection(PROJECT_NAME, "testcollection")).containsAll( ImmutableSet.of(new SchemaField("test", LONG), new SchemaField("test", LONG)))); }