diff --git a/lib/uh/wm.rb b/lib/uh/wm.rb index 553cec2..fb7e515 100644 --- a/lib/uh/wm.rb +++ b/lib/uh/wm.rb @@ -2,6 +2,7 @@ require 'uh' require 'uh/wm/cli' require 'uh/wm/env' +require 'uh/wm/manager' module Uh module WM diff --git a/lib/uh/wm/manager.rb b/lib/uh/wm/manager.rb new file mode 100644 index 0000000..aa9aedb --- /dev/null +++ b/lib/uh/wm/manager.rb @@ -0,0 +1,15 @@ +module Uh + module WM + class Manager + attr_reader :display + + def initialize + @display = Display.new + end + + def connect + @display.open + end + end + end +end diff --git a/spec/uh/wm/manager_spec.rb b/spec/uh/wm/manager_spec.rb new file mode 100644 index 0000000..312eaaa --- /dev/null +++ b/spec/uh/wm/manager_spec.rb @@ -0,0 +1,20 @@ +module Uh + module WM + RSpec.describe Manager do + subject(:manager) { described_class.new } + + describe '#initialize' do + it 'assigns a new display' do + expect(manager.display).to be_a Display + end + end + + describe '#connect' do + it 'opens the display' do + expect(manager.display).to receive :open + manager.connect + end + end + end + end +end