### Question:
ProductDimensions { public static ProductType createType(ProductDimensionType productDimensionType, @Nullable String productTypeValue) { Preconditions.checkNotNull(productDimensionType, "ProductDimensionType is required when creating a ProductType"); ProductType productType = new ProductType(); productType.setType(productDimensionType); productType.setValue(productTypeValue); return productType; } private  ProductDimensions(); static ProductType createType(ProductDimensionType productDimensionType,
      @Nullable String productTypeValue); static ProductCanonicalCondition createCanonicalCondition(
      @Nullable ProductCanonicalConditionCondition condition); static ProductBiddingCategory createBiddingCategory(
      ProductDimensionType productDimensionType, @Nullable Long biddingCategoryId); static ProductOfferId createOfferId(@Nullable String offerId); static ProductBrand createBrand(@Nullable String brand); static ProductCustomAttribute createCustomAttribute(
      ProductDimensionType productDimensionType, @Nullable String attributeValue); static ProductChannel createChannel(@Nullable ShoppingProductChannel channel); static ProductChannelExclusivity createChannelExclusivity(
      @Nullable ShoppingProductChannelExclusivity channelExclusivity);  }### Answer:
@Test public void testCreateType() { ProductType type = ProductDimensions.createType(ProductDimensionType.PRODUCT_TYPE_L1, STRING_VALUE); assertEquals(STRING_VALUE, type.getValue()); }
@Test public void testCreateType_nullTypeLevel_fails() { thrown.expect(NullPointerException.class); ProductDimensions.createType(null, STRING_VALUE); }