summaryrefslogtreecommitdiff
path: root/spec/family_tree_manager_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/family_tree_manager_spec.rb')
-rw-r--r--spec/family_tree_manager_spec.rb14
1 files changed, 12 insertions, 2 deletions
diff --git a/spec/family_tree_manager_spec.rb b/spec/family_tree_manager_spec.rb
index d3d21f1..a1161ae 100644
--- a/spec/family_tree_manager_spec.rb
+++ b/spec/family_tree_manager_spec.rb
@@ -4,10 +4,15 @@ require_relative '../lib/family_tree_manager'
RSpec.describe FamilyTreeManager do
let(:family_tree_manager) { FamilyTreeManager.instance }
+ let(:family_tree) { instance_double(FamilyTree) }
+
+ before do
+ family_tree_manager.instance_variable_set(:@family_tree, family_tree)
+ end
describe '#initialize' do
- it 'initialises the family_members hash' do
- expect(family_tree_manager.instance_variable_get(:@family_members)).to eq({})
+ it 'creates a family tree' do
+ expect(family_tree_manager.instance_variable_get(:@family_tree)).to eq(family_tree)
end
end
@@ -15,6 +20,11 @@ RSpec.describe FamilyTreeManager do
it 'is defined' do
expect(family_tree_manager).to respond_to(:add_child)
end
+
+ it 'calls add_child on the family tree' do
+ expect(family_tree).to receive(:add_child).with('Child', 'Mother', 'Father')
+ family_tree_manager.add_child('Child', 'Mother', 'Father')
+ end
end
describe '#query_hierarchy' do