RSpec.describe Mutant::Cache do
  let(:object) { described_class.new }

  describe '#parse' do
    let(:path) { double('Path') }

    subject { object.parse(path) }

    before do
      allow(File).to receive(:read).with(path).and_return(':source')
    end

    it 'returns parsed source' do
      expect(subject).to eql(s(:sym, :source))
    end

    it 'returns cached parsed source' do
      source = object.parse(path)
      expect(subject).to be(source)
    end
  end
end

Fix specification holes in Module::Cache
Fix specification holes in Module::Cache
