### Question:
AssetRelatedMediaReference extends AssetExternalReference { public List<RelatedMediaUsage> getMediaUsageList() { List<RelatedMediaUsage> mediaUsageList = relatedMediaReferenceBean.getMediaUsageList(); if (mediaUsageList == null) { return null; } else if (mediaUsageList.isEmpty()) { return null; } else { return new ArrayList<>(mediaUsageList); } } AssetRelatedMediaReference(RelatedMediaReference  relatedMediaReferenceBean);  AssetRelatedMediaReference(AssetDescriptor        parentAsset,
                                      RelatedMediaReference  relatedMediaReferenceBean);  AssetRelatedMediaReference(AssetDescriptor            parentAsset,
                                      AssetRelatedMediaReference templateRelatedMediaReference); RelatedMediaType getMediaType(); List<RelatedMediaUsage> getMediaUsageList(); @Override String toString(); @Override boolean equals(Object objectToCompare);  }### Answer:
@Test public void testMediaUsageList() { List<RelatedMediaUsage> relatedMediaUsages = new ArrayList<>(); relatedMediaUsages.add(RelatedMediaUsage.USAGE_GUIDANCE); RelatedMediaReference relatedMediaReferenceBean = new RelatedMediaReference(); relatedMediaReferenceBean.setMediaUsageList(relatedMediaUsages); AssetRelatedMediaReference testObject = new AssetRelatedMediaReference(relatedMediaReferenceBean); List<RelatedMediaUsage> testList = testObject.getMediaUsageList(); assertTrue(testList != null); assertTrue(testList.get(0) == RelatedMediaUsage.USAGE_GUIDANCE); }