Sha256: 1db770e28a62af874b9b489082ddd4b9e4af72e767909056de0da2eb73400ef6
Contents?: true
Size: 1.22 KB
Versions: 3
Compression:
Stored size: 1.22 KB
Contents
require "spec_helper" describe Ellen::Adapters::Shell do before do Ellen.logger.stub(:info) end let(:adapter) do described_class.new(robot) end let(:robot) do Ellen::Robot.new end describe "#run" do context "with `exit`" do it "stops" do Readline.stub(readline: "exit") adapter.should_receive(:stop).and_call_original adapter.run end end context "with `quit`" do it "stops" do Readline.stub(readline: "exit") adapter.should_receive(:stop).and_call_original adapter.run end end context "with Inturrupt from console" do it "stops" do Readline.stub(:readline).and_raise(Interrupt) adapter.should_receive(:stop).and_call_original adapter.run end end context "without `exit` nor `quit`" do it "passes given message to robot" do Readline.stub(:readline).and_return("a", "exit") robot.should_receive(:receive).with(body: "a", source: described_class::SOURCE) adapter.run end end end describe "#say" do it "shows given message body on stdout" do Ellen.logger.should_receive(:info).with("a") adapter.say("a") end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ellen-0.1.3 | spec/ellen/adapters/shell_spec.rb |
ellen-0.1.2 | spec/ellen/adapters/shell_spec.rb |
ellen-0.1.1 | spec/ellen/adapters/shell_spec.rb |