package dslab.client; import dslab.crypto.MessageClientHash; import org.junit.Ignore; import org.junit.Test; import static dslab.TestObjects.message; import static org.junit.Assert.*; public class MessageClientHashTest { private final MessageClientHash hash = new MessageClientHash(); @Test public void recognizesCorrectHash() { var message = message(); hash.calculateAndSet(message); assertTrue(hash.isValid(message)); } @Test public void recognizesBadHash() { var message = message(); hash.calculateAndSet(message); message.setSubject("Send all your money to this address!"); assertFalse(hash.isValid(message)); } @Test @Ignore("Fails, we don't know why. Encoding? Trailing space?") public void shouldProduceHashFromAssignmentText(){ var message = "zaphod@univer.ze\n" + "deep@thought.ze\n" + "a question\n" + "what is the meaning of life the universe and everything?"; var hasher = new MessageClientHash(); assertEquals("QXJlIHlvdSBzdGlsbCBkZWNvZGluZyB0aGVzZT8gICA=", hasher.calculateHashValue(message)); } }