Sha256: 1ba621c67dda25e60a41eace99b2209e7b850c5def100c146a06a9cb498d9856
Contents?: true
Size: 1.03 KB
Versions: 3
Compression:
Stored size: 1.03 KB
Contents
RSpec.describe Dry::Transaction::StepAdapters::Check, :adapter do subject { described_class.new } let(:operation) { -> (input) { input == "right" } } let(:options) { { step_name: "unit" } } describe "#call" do it "returns the result of the operation as output" do expect(subject.(operation, options, ["right"])).to eql(Success("right")) end context "when check fails" do it "return a Failure" do expect(subject.(operation, options, ["wrong"])).to eql(Failure("wrong")) end end context "when operation return right monad" do let(:operation) { -> (input) { Success(true) } } it "return a Success" do expect(subject.(operation, options, ["input"])).to eql(Success("input")) end end context "when operation return failure monad" do let(:operation) { -> (input) { Failure(true) } } it "return a Failure" do expect(subject.(operation, options, ["input"])).to eql(Failure("input")) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
dry-transaction-0.13.0 | spec/unit/step_adapters/check_spec.rb |
dry-transaction-0.12.1 | spec/unit/step_adapters/check_spec.rb |
dry-transaction-0.12.0 | spec/unit/step_adapters/check_spec.rb |