Sha256: d74f5c0866d19dbc83d406ead20e51e97250e5fc4b4082a139af54411e45c637

Contents?: true

Size: 1.08 KB

Versions: 20

Compression:

Stored size: 1.08 KB

Contents

require 'spec_helper'
require 'td/client/spec_resources'

describe 'Schedule API' do
  include_context 'spec symbols'
  include_context 'common helper'

  let :api do
    API.new(nil)
  end

  describe 'create_schedule' do
    let :opts do
      {'cron' => cron, 'query' => query, 'database' => db_name}
    end

    it 'should create a new schedule' do
      start = Time.now
      stub_api_request(:post, "/v3/schedule/create/#{e(sched_name)}").with(opts.merge('type' => 'hive'))
        .to_return(:body => {'name' => sched_name, 'start' => start.to_s}.to_json)

      api.create_schedule(sched_name, opts).should == start.to_s
    end

    it 'should return 422 error with invalid name' do
      name = '1'
      err_msg = "Validation failed: Name is too short" # " (minimum is 3 characters)"
      stub_api_request(:post, "/v3/schedule/create/#{e(name)}").with(opts.merge('type' => 'hive'))
        .to_return(:status => 422, :body => {'message' => err_msg}.to_json)

      expect {
        api.create_schedule(name, opts)
      }.to raise_error(TreasureData::APIError, /^#{err_msg}/)
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
td-client-0.8.62 spec/td/client/sched_api_spec.rb
td-client-0.8.61 spec/td/client/sched_api_spec.rb
td-client-0.8.60 spec/td/client/sched_api_spec.rb
td-client-0.8.59 spec/td/client/sched_api_spec.rb
td-client-0.8.58 spec/td/client/sched_api_spec.rb
td-client-0.8.57 spec/td/client/sched_api_spec.rb
td-client-0.8.56 spec/td/client/sched_api_spec.rb
td-client-0.8.55 spec/td/client/sched_api_spec.rb
td-client-0.8.54 spec/td/client/sched_api_spec.rb
td-client-0.8.53 spec/td/client/sched_api_spec.rb
td-client-0.8.52 spec/td/client/sched_api_spec.rb
td-client-0.8.51 spec/td/client/sched_api_spec.rb
td-client-0.8.50 spec/td/client/sched_api_spec.rb
td-client-0.8.49 spec/td/client/sched_api_spec.rb
td-client-0.8.48 spec/td/client/sched_api_spec.rb
td-client-0.8.47 spec/td/client/sched_api_spec.rb
td-client-0.8.46 spec/td/client/sched_api_spec.rb
td-client-0.8.45 spec/td/client/sched_api_spec.rb
td-client-0.8.44 spec/td/client/sched_api_spec.rb
td-client-0.8.43 spec/td/client/sched_api_spec.rb