Sha256: 7f919c76aa3dd0abaa5e5a951526afc7aad9749a2f170e5b8e9868c1b75c842c

Contents?: true

Size: 817 Bytes

Versions: 2

Compression:

Stored size: 817 Bytes

Contents

require 'spec_helper'


describe "Workflows" do
  it "runs the whole workflow in proper order" do
    flow = TestWorkflow.create
    flow.start!

    expect(Gush::Worker).to have_jobs(flow.id, ["Prepare"])

    Gush::Worker.perform_one
    expect(Gush::Worker).to have_jobs(flow.id, ["FetchFirstJob", "FetchSecondJob"])

    Gush::Worker.perform_one
    expect(Gush::Worker).to have_jobs(flow.id, ["FetchSecondJob", "PersistFirstJob"])

    Gush::Worker.perform_one
    expect(Gush::Worker).to have_jobs(flow.id, ["PersistFirstJob", "NormalizeJob"])

    Gush::Worker.perform_one
    expect(Gush::Worker).to have_jobs(flow.id, ["NormalizeJob"])

    Gush::Worker.perform_one

    expect(Gush::Worker.jobs).to be_empty

    flow = flow.reload
    expect(flow).to be_finished
    expect(flow).to_not be_failed
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
gush-0.1.1 spec/features/workflows_spec.rb
gush-0.1 spec/features/workflows_spec.rb