Sha256: c5a22df5a4aeafb1a4555b07cb0b851fe2b7aa5ffad0d861239ab2f72fdb7925
Contents?: true
Size: 1.56 KB
Versions: 2
Compression:
Stored size: 1.56 KB
Contents
require 'helper' class ContextResultTest < NeoDCICase let(:result) { Neo::DCI::ContextResult.new } let(:error) { RuntimeError.new } let(:data) { {:foo => :bar} } test "returns success? when no error present" do result.success! assert result.success? assert result.processed? refute result.failure? assert_nil result.error end test "returns failure? on error" do result.failure!(error) refute result.success? assert result.failure? assert result.processed? assert_same error, result.error end test "returns not processed? on default" do refute result.processed? refute result.success? refute result.failure? end test "returns data as payload on success" do result.success!(data) assert_equal data[:foo], result.data.foo end test "returns data as payload on failure" do result.failure!(error, data) assert_equal data[:foo], result.data.foo end test "returns data as hash" do result.success!(data) assert_equal data, result.data.to_hash end context "frozen data" do test "after success!" do result.success! assert result.data.frozen? end test "after failure!" do result.failure!(error) assert result.data.frozen? end end context "can only be called once" do before do result.success! end test "with success!" do assert_raises ArgumentError do result.success! end end test "with failure!" do assert_raises ArgumentError do result.failure!(error) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
neo-dci-0.2.0 | test/context_result_test.rb |
neo-dci-0.1.0 | test/context_result_test.rb |