//3rd_party_lib:crypto-ffi/build/crypto_ffi
//dependence:commonAes.cj
import std.unittest.*
import std.collection.*
import std.unittest.testmacro.*
import crypto_ffi.aescj.*
import crypto_ffi.utils.*
import stdx.encoding.hex.*
import stdx.encoding.base64.*
@Test
public class TestAesCbc02{
var keyen = AESKEY()
var keyde = AESKEY()
var keyStr="1234567812345678"
//初始化参数
public override func beforeEach(): Unit{
keyen = AESKEY()
keyde = AESKEY()
keyStr="1234567812345678"
}
//未设置加密密钥
@TestCase
public func test_aesCbc02_01():Unit{
var inside ="skfhafahglkahglahglkahgalgfssffe"
var ivec="0000000000000000"
var expStr="PnOERWwc1DLUmgYVxKo7OXVpuTRSL9MfPQwQWrpmYNw="
var exceptionFlag=1
try{
cbcEn(keyen,inside, ivec,expStr)
}catch(e:CryptoException){
if(e.toString().contains("Please set the encrypto key first")){
exceptionFlag=0
}
}
@Assert(exceptionFlag,0)
}
//未设置解密密钥
@TestCase
public func test_aesCbc02_02():Unit{
var inside ="skfhafahglkahglahglkahgalgfssffe"
var ivec="0000000000000000"
var expStr="PnOERWwc1DLUmgYVxKo7OXVpuTRSL9MfPQwQWrpmYNw="
setEncryptKeyAes(keyen,keyStr,Int32(128))
var resultEn=cbcEn(keyen,inside, ivec,expStr)
@Assert(resultEn,0)
var exceptionFlag=1
try{
cbcDe(keyde,expStr, ivec,inside)
}catch(e:CryptoException){
if(e.toString().contains("Please set the decrypto key first")){
exceptionFlag=0
}
}
@Assert(exceptionFlag,0)
}
}