Sha256: 3d70266eb78595823d3366a7fc32b45bd91325837d6525865b8f8883d9a4caae
Contents?: true
Size: 1.91 KB
Versions: 1
Compression:
Stored size: 1.91 KB
Contents
require 'spec_helper' describe Github::API do let(:api) { Github::API.new } let(:repos) { Github::Repos } it { described_class.included_modules.should include Github::Authorization } it { described_class.included_modules.should include Github::MimeType } it { described_class.included_modules.should include Github::Connection } it { described_class.included_modules.should include Github::Request } context 'actions' do it { described_class.new.should respond_to :api_methods_in } it 'dynamically adds actions inspection to classes inheriting from api' do repos.should respond_to :actions repos.new.should respond_to :actions end it 'ensures output contains api methods' do methods = [ 'method_a', 'method_b'] repos.stub(:instance_methods).and_return methods output = capture(:stdout) { api.api_methods_in(repos) } output.should =~ /.*method_a.*/ output.should =~ /.*method_b.*/ end end context '_process_basic_auth' do let(:github) { Github.new :basic_auth => 'login:password' } after { reset_authentication_for github } it 'should parse authentication params' do github.login.should eq 'login' github.password.should eq 'password' end end context 'normalize!' do before do @params = { 'a' => { :b => { 'c' => 1 }, 'd' => [ 'a', { :e => 2 }] } } end it "should stringify all the keys inside nested hash" do actual = api.normalize! @params expected = { 'a' => { 'b'=> { 'c' => 1 }, 'd' => [ 'a', { 'e'=> 2 }] } } actual.should be_eql expected end end context 'filter!' do it "should remove non valid param keys" do valid = ['a', 'b', 'e'] hash = {'a' => 1, 'b' => 3, 'c' => 2, 'd'=> 4, 'e' => 5 } actual = api.filter! valid, hash expected = {'a' => 1, 'b' => 3, 'e' => 5 } actual.should be_eql expected end end end # Github::API
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
github_api-0.9.0 | spec/github/api_spec.rb |