Sha256: afe06581864c722e3c66bbab5bf3c8de7c537e91ee7eda1e4b47cba988fd1644
Contents?: true
Size: 1.72 KB
Versions: 2
Compression:
Stored size: 1.72 KB
Contents
require 'test_helper' class GithubSyncJobTest < ActiveSupport::TestCase setup do @job = GithubSyncJob.new @stack = stacks(:shipit) @github_commits = stub end test "#perform fetch commits from the API" do Stack.any_instance.expects(:github_commits).returns(@github_commits) @job.expects(:fetch_missing_commits).yields.returns([[], nil]) @job.perform(stack_id: @stack.id) end test "#perform mark all childs of the common parent as detached" do Stack.any_instance.expects(:github_commits).returns(@github_commits) @job.expects(:fetch_missing_commits).yields.returns([[], commits(:third)]) refute commits(:fourth).reload.detached? refute commits(:fifth).reload.detached? @job.perform(stack_id: @stack.id) assert commits(:fourth).reload.detached? assert commits(:fifth).reload.detached? end test "#fetch_missing_commits returns the commits in the reverse order if it doesn't know the parent" do last = stub(sha: 123) first = stub(sha: 345) Shipit::FirstParentCommitsIterator.any_instance.stubs(:each).multiple_yields(last, first) @job.stubs(lookup_commit: nil) commits, parent = @job.fetch_missing_commits { stub } assert_nil parent assert_equal [first, last], commits end test "#fetch_missing_commits returns the commits in the reverse order if it knows the parent" do last = stub(sha: 123) first = stub(sha: 345) Shipit::FirstParentCommitsIterator.any_instance.stubs(:each).multiple_yields(last, first) @job.stubs(:lookup_commit).with(123).returns(nil) @job.stubs(:lookup_commit).with(345).returns(first) commits, parent = @job.fetch_missing_commits { stub } assert_equal first, parent assert_equal [last], commits end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
shipit-engine-0.1.0 | test/jobs/github_sync_job_test.rb |
shipit-engine-0.0.1.pre | test/jobs/github_sync_job_test.rb |