Sha256: 1645e7b55ae1d8a53a45c017cfca00420debac293ccff731662b8f994f2bdf1b
Contents?: true
Size: 1.16 KB
Versions: 7
Compression:
Stored size: 1.16 KB
Contents
require_relative '../../../test_helper' module Troo describe Sentence do let(:described_class) { Sentence } let(:elements) { ['Hydrogen'] } let(:label) { 'elements' } describe '.construct' do subject { described_class.construct(elements, label) } context 'when there is one element' do let(:elements) { ['Hydrogen'] } it 'returns the element as a string' do subject.must_equal('Hydrogen') end end context 'when there are two elements' do let(:elements) { %w(Hydrogen Helium) } it "returns the elements joined with 'and'" do subject.must_equal('Hydrogen and Helium') end end context 'when there are more than two elements' do let(:elements) { %w(Hydrogen Helium Lithium) } it 'returns the elements as a sentence list' do subject.must_equal('Hydrogen, Helium and Lithium') end end context 'when there are no elements' do let(:elements) { [] } it 'returns a polite message' do subject.must_equal('No elements have been assigned.') end end end end end
Version data entries
7 entries across 7 versions & 1 rubygems