@Test
public void testComputeSignature() throws Exception {

    ServiceDocumentDescription sdd = TestUtils.buildStateDescription(
            TestInvalidComputerSignatureState.class, null);
    TestInvalidComputerSignatureState state1 = new TestInvalidComputerSignatureState();
    state1.key1 = "1";
    state1.key2 = null;
    TestInvalidComputerSignatureState state2 = new TestInvalidComputerSignatureState();
    state2.key1 = null;
    state2.key2 = "1";
    TestInvalidComputerSignatureState state3 = new TestInvalidComputerSignatureState();
    state3.key1 = "1";
    state3.key2 = "";
    String sign1 = Utils.computeSignature(state1, sdd);
    String sign2 = Utils.computeSignature(state2, sdd);
    String sign3 = Utils.computeSignature(state3, sdd);
    assertNotEquals(sign1, sign2);
    assertNotEquals(sign2, sign3);
    assertNotEquals(sign1, sign3);
}