diff options
Diffstat (limited to 'spec/lib/console_spec.rb')
| -rw-r--r-- | spec/lib/console_spec.rb | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/spec/lib/console_spec.rb b/spec/lib/console_spec.rb index 90098d0..966ca9a 100644 --- a/spec/lib/console_spec.rb +++ b/spec/lib/console_spec.rb @@ -3,14 +3,26 @@ module TFA subject { Console.new('testing') } let(:secret) { ::ROTP::Base32.random_base32 } - it "saves a new secret" do - subject.run(["add", "development", secret]) - expect(subject.run(["show", "development"])).to eql(secret) - end + describe "#run" do + context "when adding a key" do + it "saves a new secret" do + subject.run(["add", "development", secret]) + expect(subject.run(["show", "development"])).to eql(secret) + end + end + + context "when getting a one time password" do + it "creates a totp for a certain key" do + subject.run(["add", "development", secret]) + expect(subject.run(["totp", "development"])).to_not be_nil + end + end - it "creates a totp for a certain key" do - subject.run(["add", "development", secret]) - expect(subject.run(["totp", "development"])).to_not be_nil + context "when running an unknown command" do + it "returns the usage" do + expect(subject.run([])).to_not be_nil + end + end end end end |
