6d51085721a2dacbcdddaaf0ae56f2c6103c300cEugen Kuksarequire 'spec_helper'
6d51085721a2dacbcdddaaf0ae56f2c6103c300cEugen Kuksa
6d51085721a2dacbcdddaaf0ae56f2c6103c300cEugen Kuksadescribe 'OntologyVersion - Proving' do
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa let(:theorem) { create :theorem }
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa let(:ontology) { theorem.ontology }
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa let(:repository) { ontology.repository }
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa let(:ontology_version) { ontology.current_version }
6d51085721a2dacbcdddaaf0ae56f2c6103c300cEugen Kuksa
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa context 'prove_options' do
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa let(:prove_options) { ontology_version.prove_options }
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa it 'have the ontology name as node parameter' do
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa expect(prove_options.options[:node]).to eq(ontology.name)
6d51085721a2dacbcdddaaf0ae56f2c6103c300cEugen Kuksa end
6d51085721a2dacbcdddaaf0ae56f2c6103c300cEugen Kuksa
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa it 'have no theorems parameter' do
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa expect(prove_options.options[:theorems]).to be(nil)
6d51085721a2dacbcdddaaf0ae56f2c6103c300cEugen Kuksa end
6d51085721a2dacbcdddaaf0ae56f2c6103c300cEugen Kuksa
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa context 'on a private repository' do
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa before do
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa repository.access = 'private_rw'
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa repository.save!
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa end
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa it 'have an existing access-token parameter' do
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa expect(prove_options.options[:'access-token']).to be_present
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa end
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa it 'have the access token as access-token parameter' do
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa expect(prove_options.options[:'access-token']).
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa to eq(repository.access_tokens.first.to_s)
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa end
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa end
a5046cf1c8685ecc3ff6c1f3294469e3394ee155Eugen Kuksa
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa context 'with url-maps' do
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa let!(:url_maps) { [create(:url_map, repository: repository)] }
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa it 'have the url-maps as url-catalog parameter' do
c73a9fba38c3f997632370857d254425fa5183d7Eugen Kuksa expect(prove_options.options[:'url-catalog']).to eq(url_maps.join(','))
c96c1ed15842f54e526c479fcce752d9778e3426Eugen Kuksa end
c96c1ed15842f54e526c479fcce752d9778e3426Eugen Kuksa end
c96c1ed15842f54e526c479fcce752d9778e3426Eugen Kuksa
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa context 'without url-maps' do
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa it 'have no url-catalog parameter' do
9fa08cfd047055589e9d7a4396acc8f2c74c4dffEugen Kuksa expect(prove_options.options[:'url-catalog']).to be(nil)
c96c1ed15842f54e526c479fcce752d9778e3426Eugen Kuksa end
c96c1ed15842f54e526c479fcce752d9778e3426Eugen Kuksa end
c96c1ed15842f54e526c479fcce752d9778e3426Eugen Kuksa end
6d51085721a2dacbcdddaaf0ae56f2c6103c300cEugen Kuksaend