Add Nonce spec.
This commit is contained in:
parent
b4fe9ef1c3
commit
c470ef8865
31
spec/sodium/nonce_spec.cr
Normal file
31
spec/sodium/nonce_spec.cr
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
require "../spec_helper"
|
||||||
|
require "../../src/sodium/nonce"
|
||||||
|
|
||||||
|
zero = Bytes.new(Sodium::Nonce::NONCE_SIZE)
|
||||||
|
one = Bytes.new(Sodium::Nonce::NONCE_SIZE).dup
|
||||||
|
one[0] = 1_u8
|
||||||
|
|
||||||
|
describe Sodium::Nonce do
|
||||||
|
it "generates a random nonce" do
|
||||||
|
nonce = Sodium::Nonce.random
|
||||||
|
nonce.should_not eq zero
|
||||||
|
end
|
||||||
|
|
||||||
|
it "loads an existing nonce" do
|
||||||
|
nonce = Sodium::Nonce.new one
|
||||||
|
nonce.to_slice.should eq one
|
||||||
|
end
|
||||||
|
|
||||||
|
it "zero nonce with increment" do
|
||||||
|
nonce = Sodium::Nonce.zero
|
||||||
|
nonce.to_slice.should eq zero
|
||||||
|
|
||||||
|
nonce.used?.should be_false
|
||||||
|
nonce.used!
|
||||||
|
nonce.used?.should be_true
|
||||||
|
|
||||||
|
nonce.increment
|
||||||
|
nonce.to_slice.should eq one
|
||||||
|
nonce.used?.should be_false
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in New Issue
Block a user