public <T> T getAttributeValue(String attrName, Class<T> type) { Set<T> values = getAttributeValues(attrName, type); if (values == null || values.isEmpty()) { return null; } if (values.size()>1) { throw new IllegalArgumentException("Attempt to fetch single value from a multi-valued attribute "+attrName); } return values.iterator().next(); }
public <T> DummyObjectAsserter<D,R> assertNoAttribute(String attributeName) { Set<Object> values = getDummyObjectAssertExists().getAttributeValues(attributeName, Object.class); if ((values != null && !values.isEmpty())) { fail("Unexpected values for attribute " + attributeName + " of " + desc() + values); } return this; }
public <T> DummyObjectAsserter<D,R> assertAttribute(String attributeName, T... expectedAttributeValues) { Set<Object> values = getDummyObjectAssertExists().getAttributeValues(attributeName, Object.class); if ((values == null || values.isEmpty()) && (expectedAttributeValues == null || expectedAttributeValues.length == 0)) { return this; } assertNotNull("No values for attribute "+attributeName+" of "+desc(), values); assertEquals("Unexpected number of values for attribute " + attributeName + " of " + desc() + ". Expected: " + Arrays.toString(expectedAttributeValues) + ", was: " + values, expectedAttributeValues.length, values.size()); for (Object expectedValue: expectedAttributeValues) { if (!values.contains(expectedValue)) { AssertJUnit.fail("Value '"+expectedValue+"' expected in attribute "+attributeName+" of " + desc() + " but not found. Values found: "+values); } } return this; }
protected void assertNoDummyAttribute(DummyObject object, String attributeName) { Set<Object> attributeValues = object.getAttributeValues(attributeName, Object.class); assertNotNull("Unexpected attribute "+attributeName+" in "+object.getShortTypeName()+" "+object+": "+attributeValues, attributeValues); }
protected <T> void assertDummyAttributeValues(DummyObject object, String attributeName, T... expectedValues) { Set<T> attributeValues = (Set<T>) object.getAttributeValues(attributeName, expectedValues[0].getClass()); assertNotNull("No attribute "+attributeName+" in "+object.getShortTypeName()+" "+object, attributeValues); TestUtil.assertSetEquals("Wrong values of attribute "+attributeName+" in "+object.getShortTypeName()+" "+object, attributeValues, expectedValues); }
Set<Object> values = dummyObject.getAttributeValues(name, Object.class); if (configuration.isVaryLetterCase()) { name = varyLetterCase(name);