require 'spec_helper' module RevealCK module Commands describe ServeUI do let :serve_ui do ServeUI.new end let :separator do '------------------------------------------------------------' end let :default_prefix do '[ reveal-ck ]' end let :problem_prefix do '[ problem ]' end describe '#message' do it 'prints the message (preceeded by a prefix) to standard out' do expect(serve_ui).to receive(:puts).with("#{default_prefix} Hello") serve_ui.message('Hello') end end describe '#problem' do it 'prints several messages to standard out' do expect(serve_ui).to receive(:puts).with(problem_prefix.to_s) expect(serve_ui) .to receive(:puts) .with("#{problem_prefix} Compilation Problem") expect(serve_ui).to receive(:puts).with(problem_prefix.to_s) expect(serve_ui) .to receive(:puts) .with("#{problem_prefix} on line 12") expect(serve_ui).to receive(:puts).with(problem_prefix.to_s) serve_ui.problem('Compilation Problem', 'on line 12') end end describe '#blank' do it 'prints a blank line' do expect(serve_ui).to receive(:puts).with '' serve_ui.blank end end describe '#separator' do it 'prints a bunch of dashes' do expect(serve_ui) .to receive(:puts).with separator serve_ui.separator end end end end end