@@ -11,7 +11,7 @@ import XCTest
11
11
12
12
final class BIP39Tests : XCTestCase {
13
13
14
- func testBIP39 ( ) throws {
14
+ func testBIP39( ) throws {
15
15
var entropy = Data . fromHex ( " 00000000000000000000000000000000 " ) !
16
16
var phrase = BIP39 . generateMnemonicsFromEntropy ( entropy: entropy)
17
17
XCTAssert ( phrase == " abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about " )
@@ -139,16 +139,31 @@ final class BIP39Tests: XCTestCase {
139
139
}
140
140
141
141
func testNewBIP32keystoreArray( ) throws {
142
- let mnemonic = BIP39 . generateMnemonics ( entropy: 256 ) !
142
+ let mnemonic = try BIP39 . generateMnemonics ( entropy: 256 )
143
143
let keystore = try BIP32Keystore ( mnemonicsPhrase: mnemonic, password: " " , mnemonicsPassword: " " )
144
144
XCTAssert ( keystore != nil )
145
145
}
146
146
147
147
func testSameAddressesFromTheSameMnemonicsArray( ) throws {
148
- let mnemonic = BIP39 . generateMnemonics ( entropy: 256 ) !
148
+ let mnemonic = try BIP39 . generateMnemonics ( entropy: 256 )
149
149
let keystore1 = try BIP32Keystore ( mnemonicsPhrase: mnemonic, password: " " , mnemonicsPassword: " " )
150
150
let keystore2 = try BIP32Keystore ( mnemonicsPhrase: mnemonic, password: " " , mnemonicsPassword: " " )
151
151
XCTAssert ( keystore1? . addresses? . first == keystore2? . addresses? . first)
152
152
}
153
153
154
+ func testWrongBitsOfEntropyMustThrow( ) throws {
155
+ XCTAssertThrowsError ( try BIP39 . generateMnemonics ( entropy: 127 ) )
156
+ XCTAssertThrowsError ( try BIP39 . generateMnemonics ( entropy: 255 ) )
157
+ XCTAssertThrowsError ( try BIP39 . generateMnemonics ( entropy: 32 ) )
158
+ XCTAssertThrowsError ( try BIP39 . generateMnemonics ( entropy: 288 ) )
159
+ }
160
+
161
+ func testCorrectBitsOfEntropy( ) throws {
162
+ XCTAssertFalse ( try BIP39 . generateMnemonics ( entropy: 128 ) . isEmpty)
163
+ XCTAssertFalse ( try BIP39 . generateMnemonics ( entropy: 160 ) . isEmpty)
164
+ XCTAssertFalse ( try BIP39 . generateMnemonics ( entropy: 192 ) . isEmpty)
165
+ XCTAssertFalse ( try BIP39 . generateMnemonics ( entropy: 224 ) . isEmpty)
166
+ XCTAssertFalse ( try BIP39 . generateMnemonics ( entropy: 256 ) . isEmpty)
167
+ }
168
+
154
169
}
0 commit comments