Sha256: 3dd3e8d93874fc6e1da1bc7fc195d17620114bc4a28cdb66c992c6b9a7b11137

Contents?: true

Size: 1.96 KB

Versions: 17

Compression:

Stored size: 1.96 KB

Contents

RSpec.describe Percy::Client::Builds, :vcr do
  let(:content) { "hello world! #{described_class.name}" }
  let(:sha) { Digest::SHA256.hexdigest(content) }

  describe '#create_build' do
    before(:each) { ENV['PERCY_PULL_REQUEST'] = '123' }
    after(:each) { ENV['PERCY_PULL_REQUEST'] = nil }
    it 'creates a build' do
      build = Percy.create_build('fotinakis/percy-examples')
      expect(build).to be
      expect(build['data']).to be
      expect(build['data']['id']).to be
      expect(build['data']['type']).to eq('builds')
      expect(build['data']['attributes']['state']).to eq('pending')
      expect(build['data']['attributes']['is-pull-request']).to be_truthy
      expect(build['data']['attributes']['pull-request-number']).to eq(123)
      expect(build['data']['relationships']['missing-resources']).to be
      expect(build['data']['relationships']['missing-resources']['data']).to_not be
    end
    it 'accepts optional resources' do
      resources = []
      resources << Percy::Client::Resource.new('/css/test.css', sha: sha)

      build = Percy.create_build('fotinakis/percy-examples', resources: resources)
      expect(build).to be
      expect(build['data']).to be
      expect(build['data']['id']).to be
      expect(build['data']['type']).to eq('builds')
      expect(build['data']['attributes']['state']).to eq('pending')
      expect(build['data']['attributes']['is-pull-request']).to be_truthy
      expect(build['data']['attributes']['pull-request-number']).to eq(123)
      expect(build['data']['relationships']['missing-resources']).to be
      expect(build['data']['relationships']['missing-resources']['data']).to be
      expect(build['data']['relationships']['missing-resources']['data'].length).to eq(1)
    end
  end
  describe '#finalize_build' do
    it 'finalizes a build' do
      build = Percy.create_build('fotinakis/percy-examples')
      result = Percy.finalize_build(build['data']['id'])
      expect(result).to eq({'success' => true})
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
percy-client-0.8.0 spec/lib/percy/client/builds_spec.rb
percy-client-0.7.0 spec/lib/percy/client/builds_spec.rb
percy-client-0.6.0 spec/lib/percy/client/builds_spec.rb
percy-client-0.5.0 spec/lib/percy/client/builds_spec.rb
percy-client-0.4.1 spec/lib/percy/client/builds_spec.rb
percy-client-0.4.0 spec/lib/percy/client/builds_spec.rb
percy-client-0.3.2 spec/lib/percy/client/builds_spec.rb
percy-client-0.3.1 spec/lib/percy/client/builds_spec.rb
percy-client-0.3.0 spec/lib/percy/client/builds_spec.rb
percy-client-0.2.11 spec/lib/percy/client/builds_spec.rb
percy-client-0.2.10 spec/lib/percy/client/builds_spec.rb
percy-client-0.2.9 spec/lib/percy/client/builds_spec.rb
percy-client-0.2.8 spec/lib/percy/client/builds_spec.rb
percy-client-0.2.7 spec/lib/percy/client/builds_spec.rb
percy-client-0.2.6 spec/lib/percy/client/builds_spec.rb
percy-client-0.2.5 spec/lib/percy/client/builds_spec.rb
percy-client-0.2.4 spec/lib/percy/client/builds_spec.rb