Sha256: a6ac5596b33033b919cda6e8906270a2e28de4f9b2d458ce282bf2810ee9ee83

Contents?: true

Size: 1.7 KB

Versions: 24

Compression:

Stored size: 1.7 KB

Contents

require 'core/spec_helper'

describe ZendeskAPI::AppInstallation do
  it "should work "do
    upload = VCR.use_cassette("app_installations_upload_create") do
      ZendeskAPI::App::Upload.new(client, :id => "spec/fixtures/sample_app.zip").tap(&:save!)
    end

    attributes = { :upload_id => upload.id, :name => "My App", :short_description => "Testing" }

    app = ZendeskAPI::App.new(client, attributes)

    VCR.use_cassette("app_installations_create") { app.save! }

    body = {}

    VCR.use_cassette("app_installations_create_job_status") do
      until %w{failed completed}.include?(body["status"])
        response = client.connection.get(app.response.headers["Location"])
        body = response.body

        sleep(3)
      end
    end

    if body["status"] == "failed"
      fail "Could not create app: #{body.inspect}"
    end

    app.id = body["app_id"]

    attributes = { :app_id => app.id, :settings => {
        :name => "My App",
        "Custom_Field_ID" => "123",
        "Custom_Field_Default" => "Default"
      }
    }

    install = ZendeskAPI::AppInstallation.new(client, attributes)

    VCR.use_cassette("app_install_create") { install.save! }

    installations = client.app.installations
    VCR.use_cassette("app_install_fetch") { installations.fetch! }
    VCR.use_cassette("app_install_find") { client.app.installations.find!(:id => install.id) }

    expect(installations).to include(install)

    install.settings.name = "My New Name"
    VCR.use_cassette("app_install_update") { install.save! }

    expect(install.settings.title).to eq("My New Name")

    VCR.use_cassette("app_install_destroy") { install.destroy! }

    VCR.use_cassette("app_installations_destroy") { app.destroy! }
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
zendesk_api-1.9.6 spec/live/app_installation_spec.rb
zendesk_api-1.9.5 spec/live/app_installation_spec.rb
zendesk_api-1.9.4 spec/live/app_installation_spec.rb
zendesk_api-1.9.3 spec/live/app_installation_spec.rb
zendesk_api-1.9.2 spec/live/app_installation_spec.rb
zendesk_api-1.9.1 spec/live/app_installation_spec.rb
zendesk_api-1.9.0 spec/live/app_installation_spec.rb
zendesk_api-1.8.0 spec/live/app_installation_spec.rb
zendesk_api-1.7.4 spec/live/app_installation_spec.rb
zendesk_api-1.7.3 spec/live/app_installation_spec.rb
zendesk_api-1.7.1 spec/live/app_installation_spec.rb
zendesk_api-1.7.0 spec/live/app_installation_spec.rb
zendesk_api-1.6.3 spec/live/app_installation_spec.rb
zendesk_api-1.6.2 spec/live/app_installation_spec.rb
zendesk_api-1.6.1 spec/live/app_installation_spec.rb
zendesk_api-1.6.0 spec/live/app_installation_spec.rb
zendesk_api-1.5.1 spec/live/app_installation_spec.rb
zendesk_api-1.5.0 spec/live/app_installation_spec.rb
zendesk_api-1.4.6 spec/live/app_installation_spec.rb
zendesk_api-1.4.5 spec/live/app_installation_spec.rb