Sha256: ba2d244cc9fccaf11f25b17a230c8e3d201c2838870fa3f14f8093b15311097e
Contents?: true
Size: 1010 Bytes
Versions: 12
Compression:
Stored size: 1010 Bytes
Contents
# frozen_string_literal: true RSpec.describe Mutant::Transform::Named do subject { described_class.new(name, transform) } let(:name) { 'transform-name' } let(:transform) { Mutant::Transform::Boolean.new } describe '#slug' do def apply subject.slug end it 'returns name' do expect(apply).to be(name) end end describe '#apply' do def apply subject.apply(input) end context 'on valid input' do let(:input) { true } it 'returns sucess' do expect(apply).to eql(Mutant::Either::Right.new(input)) end end context 'on invalid input' do let(:input) { 1 } let(:error) do Mutant::Transform::Error.new( cause: transform.apply(input).from_left, input: input, message: nil, transform: subject ) end it 'returns failure' do expect(apply).to eql(Mutant::Either::Left.new(error)) end end end end
Version data entries
12 entries across 12 versions & 1 rubygems