@Test
public void testHtmlProcessorProcessAttributeAssignments() {

    PolicySetType mockPolicySetType = Mockito.mock(PolicySetType.class);
    processor = new HtmlProcessor(temp, mockPolicySetType);
    RuleType mockRuleType = Mockito.mock(RuleType.class);
    EffectType effectTypePermit = EffectType.PERMIT;
    ObligationExpressionsType mockOblExsType = Mockito.mock(ObligationExpressionsType.class);
    ObligationExpressionType mockOblExTypeListObj = Mockito.mock(ObligationExpressionType.class);
    List<ObligationExpressionType> oblExTypeList = new ArrayList<ObligationExpressionType>();
    oblExTypeList.add(mockOblExTypeListObj);
    AttributeAssignmentExpressionType mockattrAssignListObj = Mockito.mock(AttributeAssignmentExpressionType.class);
    List<AttributeAssignmentExpressionType> attrAssignList = new ArrayList<AttributeAssignmentExpressionType>();
    attrAssignList.add(mockattrAssignListObj);
    JAXBElement<?> jaxbElementMock = Mockito.mock(JAXBElement.class);
    AttributeValueType attrValTypeMock = Mockito.mock(AttributeValueType.class);
    AttributeDesignatorType attrDesignTypeMock = Mockito.mock(AttributeDesignatorType.class);
    AttributeSelectorType attrSelTypeMock = Mockito.mock(AttributeSelectorType.class);
    ApplyType applyTypeMock = Mockito.mock(ApplyType.class);
    Object genericObjectMock = Mockito.mock(Object.class);
    Object mockContentListObject = Mockito.mock(Object.class);
    List<Object> contentList = new ArrayList<Object>();
    contentList.add(mockContentListObject);
    contentList.add(mockContentListObject);
    when(mockRuleType.getEffect()).thenReturn(effectTypePermit);
    when(mockRuleType.getObligationExpressions()).thenReturn(mockOblExsType);
    when(mockOblExsType.getObligationExpression()).thenReturn(oblExTypeList);
    when(mockOblExTypeListObj.getAttributeAssignmentExpression()).thenReturn(attrAssignList);
    when(mockOblExTypeListObj.getFulfillOn()).thenReturn(effectTypePermit);
    when(mockattrAssignListObj.getCategory()).thenReturn("");
    when(mockattrAssignListObj.getAttributeId()).thenReturn("");
    doReturn(jaxbElementMock).when(mockattrAssignListObj).getExpression();
    doReturn(attrValTypeMock).when(jaxbElementMock).getValue();
    when(attrValTypeMock.getContent()).thenReturn(contentList);
    processor.rule(mockRuleType);
    verify(mockRuleType, atLeast(1)).getEffect();
    verify(mockRuleType, atLeast(1)).getObligationExpressions();
    verify(mockOblExsType, atLeast(1)).getObligationExpression();
    verify(mockOblExTypeListObj, atLeast(1)).getAttributeAssignmentExpression();
    verify(mockOblExTypeListObj, atLeast(1)).getFulfillOn();
    verify(mockattrAssignListObj, atLeast(1)).getExpression();
    verify(jaxbElementMock, atLeast(1)).getValue();
    verify(attrValTypeMock, atLeast(1)).getContent();
    doReturn(attrDesignTypeMock).when(jaxbElementMock).getValue();
    processor.rule(mockRuleType);
    verify(jaxbElementMock, atLeast(1)).getValue();
    doReturn(attrSelTypeMock).when(jaxbElementMock).getValue();
    processor.rule(mockRuleType);
    verify(jaxbElementMock, atLeast(1)).getValue();
    doReturn(applyTypeMock).when(jaxbElementMock).getValue();
    processor.rule(mockRuleType);
    verify(jaxbElementMock, atLeast(1)).getValue();
    doReturn(genericObjectMock).when(jaxbElementMock).getValue();
    processor.rule(mockRuleType);
    verify(jaxbElementMock, atLeast(1)).getValue();
}