Sha256: 6f178e229acdecea4fe1b1fcec14f1d4676da8d2656b70fcf2e5b152e46039b6

Contents?: true

Size: 818 Bytes

Versions: 6

Compression:

Stored size: 818 Bytes

Contents

require 'spec_helper'

require 'clicoder/site_base'
require 'clicoder/config'

require 'nokogiri'
require 'abstract_method'

module Clicoder
  describe SiteBase do
    let(:site_base) { SiteBase.new }
    let(:config) { Config.new }

    let(:abstract_methods) do
      %i(
        site_name
        problem_url
        description_xpath
        inputs_xpath
        outputs_xpath
        working_directory

        login
        submit
        open_submission
      )
    end

    it 'raises AbstractMethodCalled for abstract methods' do
      abstract_methods.each do |method|
        expect{ site_base.send(method) }.to raise_exception(AbstractMethodCalled)
      end
    end

    describe '#config' do
      it 'returns config object' do
        expect(site_base.config).to be_a Config
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
clicoder-0.0.6 spec/site_base_spec.rb
clicoder-0.0.5 spec/site_base_spec.rb
clicoder-0.0.4 spec/site_base_spec.rb
clicoder-0.0.3 spec/site_base_spec.rb
clicoder-0.0.2 spec/site_base_spec.rb
clicoder-0.0.1 spec/site_base_spec.rb