### Question:
GraphEntityMutation implements Entity.Mutation { @Override public ValueSpecifier<Mutation> withAttribute(Name name) { return new GraphValueChange( Preconditions.argumentNotNull(name,"name")); } GraphEntityMutation(Entity entity,
            OperationPipeline assemblyLine,
            BatchMutation batchMutation); @Override ValueSpecifier<Mutation> withAttribute(Name name); @Override Mutation deleteAttribute(Name name); @Override Mutation deleteAttributes(Attribute.Family namespace); @Override Mutation delete(); @Override com.intuit.ugc.api.BatchMutation ready();  }### Answer:
@Test public void testGraphEntityMutationWithNullAttribute() { GraphEntityMutation graphEntityMutation = createGraphEntityMutation(null); try{ graphEntityMutation.withAttribute(null); fail("Should throw exception if called with null attribute"); }catch(Exception e){ assertTrue(e instanceof IllegalArgumentException); } }
@Test public void testWithAttributeWhenProperAttributeIsPassed() { GraphEntityMutation graphEntityMutation = createGraphEntityMutation(null); ValueSpecifier<Mutation> graphValueChange = graphEntityMutation .withAttribute(TartanImplTestConstants.ATTR_DUMMY_ATTRIBUTE_NAME); assertNotNull(graphValueChange); }