-
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
/
AutocryptDraftStateHeaderParserTest.kt
54 lines (41 loc) · 1.63 KB
/
AutocryptDraftStateHeaderParserTest.kt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package com.fsck.k9.autocrypt
import com.fsck.k9.RobolectricTest
import com.google.common.truth.Truth.assertThat
import org.junit.Test
class AutocryptDraftStateHeaderParserTest : RobolectricTest() {
internal var autocryptHeaderParser = AutocryptDraftStateHeaderParser()
@Test
fun testEncryptReplyByChoice() {
val draftStateHeader = AutocryptDraftStateHeader(true, false, true, true, false)
val parsedHeader = autocryptHeaderParser.parseAutocryptDraftStateHeader(draftStateHeader.toHeaderValue())
assertThat(parsedHeader).isEqualTo(draftStateHeader)
}
@Test
fun testSignOnly() {
val parsedHeader =
autocryptHeaderParser.parseAutocryptDraftStateHeader("encrypt=no; _by-choice=yes; _sign-only=yes")
with(parsedHeader!!) {
assertThat(isEncrypt).isFalse()
assertThat(isByChoice).isTrue()
assertThat(isSignOnly).isTrue()
assertThat(isPgpInline).isFalse()
assertThat(isReply).isFalse()
}
}
@Test
fun badCritical() {
val parsedHeader = autocryptHeaderParser.parseAutocryptDraftStateHeader("encrypt=no; badcritical=value")
assertThat(parsedHeader).isNull()
}
@Test
fun missingEncrypt() {
val parsedHeader =
autocryptHeaderParser.parseAutocryptDraftStateHeader("encrpt-with-typo=no; _non_critical=value")
assertThat(parsedHeader).isNull()
}
@Test
fun unknownNonCritical() {
val parsedHeader = autocryptHeaderParser.parseAutocryptDraftStateHeader("encrypt=no; _non-critical=value")
assertThat(parsedHeader).isNotNull()
}
}