hets_helper.rb revision f4d4f82239bc0e3f18e9d59dbae22891b20f40e6
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat# In this file, 'ontology_fixture' is always the path to the ontology file
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat# relative to Rails.root.join('spec/fixtures/ontologies/')
41cf1ac30de569888c70b1f1b40d29993950ff2eMichael H. Warfielddef hets_vcr_file(subdir, ontology_fixture)
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat # Replace last occurence of '.' by '_' in the filepath (VCR convention).
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat fixture_file(File.join('vcr', 'hets-out', subdir, "#{path}_#{extension}.yml"))
41cf1ac30de569888c70b1f1b40d29993950ff2eMichael H. Warfielddef hets_ontology_vcr_file(ontology_fixture)
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat yaml = YAML.load(File.open(hets_vcr_file(subdir, ontology_fixture)))
250b1eec71b074acdff1c5f6b5a1f0d7d2c20b77Stéphane Graber yaml['http_interactions'].first['response']['body']['string']
a3ed64707fb71b6f2fcf603e755c5da07ab3aec5Evgeni Golov evaluator = Hets::DG::Importer.new(user, ontology, io: io)
a3ed64707fb71b6f2fcf603e755c5da07ab3aec5Evgeni Golovdef parse_ontology(user, ontology, ontology_fixture)
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat io = StringIO.new(hets_out_body_ontology(ontology_fixture))
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat let(:hets_instance) { create(:local_hets_instance) }
41cf1ac30de569888c70b1f1b40d29993950ff2eMichael H. Warfield stub_request(:get, 'http://localhost:8000/version').
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat to_return(body: Hets.minimal_version_string)
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat command: 'dg', with: nil, with_version: nil, method: :get)
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat stub_request(:get, 'http://localhost:8000/version').
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat to_return(body: Hets.minimal_version_string)
ba4c42597399c72fbb0b8f99e6ded79f738a6ac3Frederic Crozat stub_request(method, hets_uri(command, with, with_version)).
ba4c42597399c72fbb0b8f99e6ded79f738a6ac3Frederic Crozat to_return(body: hets_out_body(command, ontology_fixture))
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat stub_request(method, hets_uri('provers', with, with_version)).
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat to_return(body: hets_out_body('provers', ontology_fixture))
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozatdef hets_uri(command = 'dg', portion = nil, version = nil)
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozatrescue HetsInstance::NoRegisteredHetsInstanceError => e
c840b37de865195a8742e219b4374d961a21d4d9Frederic Crozat # %2F is percent-encoding for forward slash /
44ee8a102e3d8052631fbb119f58a55ce678d039Frederic Crozat return %r{#{hets_instance.uri}/#{command}/.*#{specific}}