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
|
# File 'lib/certmeister/test/memory_store_interface.rb', line 7
def it_behaves_like_a_certmeister_store
it "stores certificates by CN (common name)" do
pem = File.read('fixtures/client.crt')
subject.store('axl.hetzner.africa', pem)
expect(subject.fetch('axl.hetzner.africa')).to eql pem
end
it "returns nil when fetching non-existent CN" do
expect(subject.fetch('axl.hetzner.africa')).to be_nil
end
it "is not concerned with validating certificates" do
expect { subject.store('axl.hetzner.africa', "nonsense") }.to_not raise_error
end
it "overwrites an existing certificate if one exists" do
subject.store('axl.hetzner.africa', "first")
subject.store('axl.hetzner.africa', "second")
expect(subject.fetch('axl.hetzner.africa')).to eql "second"
end
it "deletes certificates by CN (common name)" do
subject.store('axl.hetzner.africa', "cert")
expect(subject.remove('axl.hetzner.africa')).to be_true
expect(subject.fetch('axl.hetzner.africa')).to be_nil
end
it "returns false when removing a non-existent CN" do
expect(subject.remove('axl.hetzner.africa')).to be_false
end
it "returns true from health_check when healthy" do
expect(subject.health_check).to be_true
end
it "returns false from health_check when not healthy" do
subject.send(:break!)
expect(subject.health_check).to be_false
end
end
|