ontology_search_steps.rb revision 22f8827cd8892a298f9764ce862db6867307828d
bcb4e51a409d94ae670de96afb8483a4f7855294Stephan BoschWhen(/^I open the ontologies overview page$/) do
f8740ac53310cd28ba4ec6dc9e9ce6e9a3688f39Timo Sirainen visit ontologies_path
f8740ac53310cd28ba4ec6dc9e9ce6e9a3688f39Timo Sirainenend
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenThen(/^I should see all available ontologies$/) do
f8740ac53310cd28ba4ec6dc9e9ce6e9a3688f39Timo Sirainen expect(page).to have_content(@ontology.name)
f8740ac53310cd28ba4ec6dc9e9ce6e9a3688f39Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
cc935aff970ed6c24d136cc560c7e705a49d536cTimo SirainenGiven(/^the ontology I want to search for$/) do
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen @name = 'Foobar'
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen @ontology = FactoryGirl.create :ontology, name: @name
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainenend
cc23ad7b8ab96d93d5ab5139c431fcdd8d9e1d72Timo Sirainen
cc935aff970ed6c24d136cc560c7e705a49d536cTimo SirainenWhen(/^I fill in the search form$/) do
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen within '#search_form_div' do
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen fill_in 'query', with: @name
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen end
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainenend
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenThen(/^I should see the ontology$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).to have_content(@name)
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenThen(/^I shouldnt see the ontology$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).not_to have_content("{#@ontology.name}" + 'Foobar')
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenGiven(/^there is an ontology with a '([^']+)'$/) do |filterable|
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen @filterable = FactoryGirl.create filterable.to_sym
fccd110b494a7e31f23d31d9e3bc3e986c9bb1a8Timo Sirainen @ontology = FactoryGirl.create :ontology, filterable.to_sym => @filterable
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainenend
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen
cc935aff970ed6c24d136cc560c7e705a49d536cTimo SirainenGiven(/^there is an ontology with '([^']+)'$/) do |filterable|
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen @filterable = FactoryGirl.create filterable.singularize.to_sym
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen @ontology = FactoryGirl.create :ontology, filterable.to_sym => [@filterable]
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen
cc935aff970ed6c24d136cc560c7e705a49d536cTimo SirainenWhen(/^I select the '([^']+)' I search for$/) do |filterable|
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen within '#search_form_div' do
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen select @filterable.name, from: "_#{filterable}"
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen end
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainenend
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen
cc935aff970ed6c24d136cc560c7e705a49d536cTimo SirainenWhen(/^I select the type I search for$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen within '#search_form_div' do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen select @ontology_type.name, from: '_ontology_type'
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen end
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
cc935aff970ed6c24d136cc560c7e705a49d536cTimo SirainenWhen(/^I select the project I search for$/) do
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen within '#search_form_div' do
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen select @project.name, from: '_project'
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen end
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainenend
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen
cc935aff970ed6c24d136cc560c7e705a49d536cTimo SirainenThen(/^I should see all ontologies with that '[^']+'$/) do
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen expect(page).to have_content(@ontology.name)
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).to have_content(@filterable.name)
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
cc935aff970ed6c24d136cc560c7e705a49d536cTimo SirainenGiven(/^there is an ontology with all filters given$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @ontology_type = FactoryGirl.create :ontology_type
efe78d3ba24fc866af1c79b9223dc0809ba26cadStephan Bosch @project = FactoryGirl.create :project
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen @formality_level = FactoryGirl.create :formality_level
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen @license_model = FactoryGirl.create :license_model
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen @task = FactoryGirl.create :task
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @ontology = FactoryGirl.create :ontology, ontology_type: @ontology_type,
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen projects: [@project], formality_level: @formality_level,
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen license_models: [@license_model], tasks: [@task]
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenWhen(/^I select the all filters I search for$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen within '#search_form_div' do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen select @ontology_type.name, from: '_ontology_type'
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen select @project.name, from: '_project'
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen select @formality_level.name, from: '_formality_level'
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen select @license_model.name, from: '_license_model'
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen select @task.name, from: '_task'
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen end
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainenend
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen
cc935aff970ed6c24d136cc560c7e705a49d536cTimo SirainenThen(/^I should see all ontologies with that features$/) do
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen expect(page).to have_content(@ontology.name)
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).to have_content(@ontology_type.name)
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).to have_content(@project.name)
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).to have_content(@formality_level.name)
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).to have_content(@license_model.name)
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen expect(page).to have_content(@task.name)
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainenend
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen
92f9871ac981201fe0a47f6c909f790cce14b240Timo SirainenGiven(/^there is an ontology with a type which is in a project$/) do
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen @ontology_type = FactoryGirl.create :ontology_type
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen @project = FactoryGirl.create :project
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen @ontology = FactoryGirl.create :ontology, ontology_type: @ontology_type,
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen projects: [@project]
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainenend
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen
92f9871ac981201fe0a47f6c909f790cce14b240Timo SirainenWhen(/^I select the type and project I search for$/) do
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen within '#search_form_div' do
1270cb6b6139001b0a89f595ad0868b1f3a0af45Timo Sirainen select @ontology_type.name, from: '_ontology_type'
fccd110b494a7e31f23d31d9e3bc3e986c9bb1a8Timo Sirainen select @project.name, from: '_project'
1270cb6b6139001b0a89f595ad0868b1f3a0af45Timo Sirainen end
fccd110b494a7e31f23d31d9e3bc3e986c9bb1a8Timo Sirainenend
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen
92f9871ac981201fe0a47f6c909f790cce14b240Timo SirainenThen(/^I should see all ontologies with that two features$/) do
1270cb6b6139001b0a89f595ad0868b1f3a0af45Timo Sirainen expect(page).to have_content(@ontology_type.name)
1270cb6b6139001b0a89f595ad0868b1f3a0af45Timo Sirainen expect(page).to have_content(@project.name)
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainenend
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen
92f9871ac981201fe0a47f6c909f790cce14b240Timo SirainenThen(/^I should see all ontologies with that name$/) do
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen expect(page).to have_content(@ontology.name)
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainenend
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen
92f9871ac981201fe0a47f6c909f790cce14b240Timo SirainenGiven(/^there are at least two repositories$/) do
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen @repository_one = FactoryGirl.create :repository, name: 'RepoOne'
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen @repository_two = FactoryGirl.create :repository, name: 'RepoTwo'
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainenend
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenGiven(/^there are at least two ontologies$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @ontology_one = FactoryGirl.create :ontology, name: 'OntologyOne',
cc23ad7b8ab96d93d5ab5139c431fcdd8d9e1d72Timo Sirainen repository: @repository_one
cc23ad7b8ab96d93d5ab5139c431fcdd8d9e1d72Timo Sirainen @ontology_two = FactoryGirl.create :ontology, name: 'OntologyTwo',
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen repository: @repository_two
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainenend
1c0020171b04d14adc4966ed963361abc9a86787Timo Sirainen
1c0020171b04d14adc4966ed963361abc9a86787Timo SirainenWhen(/^I open the repositories overview page$/) do
1c0020171b04d14adc4966ed963361abc9a86787Timo Sirainen visit repositories_path
1c0020171b04d14adc4966ed963361abc9a86787Timo Sirainenend
1c0020171b04d14adc4966ed963361abc9a86787Timo Sirainen
1c0020171b04d14adc4966ed963361abc9a86787Timo SirainenWhen(/^I select a repository$/) do
1c0020171b04d14adc4966ed963361abc9a86787Timo Sirainen within 'ul.list-group' do
1c0020171b04d14adc4966ed963361abc9a86787Timo Sirainen click_link(@repository_one.name)
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen end
1c0020171b04d14adc4966ed963361abc9a86787Timo Sirainenend
1c0020171b04d14adc4966ed963361abc9a86787Timo Sirainen
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo SirainenWhen(/^I select the ontologies tab$/) do
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen within 'ul.nav.nav-tabs' do
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen click_link('Ontologies')
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen end
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainenend
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo SirainenThen(/^I should see all ontologies in that repository$/) do
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo Sirainen expect(page).to have_content(@ontology_one.name)
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo Sirainenend
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo Sirainen
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo SirainenThen(/^I should not see ontologies from other repositories$/) do
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo Sirainen expect(page).not_to have_content(@ontology_two.name)
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen expect(page).not_to have_content(@repository_two.name)
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo Sirainenend
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo SirainenGiven(/^there are at least two ontologies with ontology types$/) do
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo Sirainen @ontology_type = FactoryGirl.create :ontology_type
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen @ontology_one = FactoryGirl.create :ontology, name: 'OntologyOne',
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen repository: @repository_one, ontology_type: @ontology_type
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen @ontology_two = FactoryGirl.create :ontology, name: 'OntologyTwo',
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen repository: @repository_two, ontology_type: @ontology_type
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainenend
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo SirainenThen(/^I should see all ontologies in that repository with that type$/) do
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen expect(page).to have_content(@ontology_one.name)
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen expect(page).to have_content(@ontology_type.name)
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainenend
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo SirainenThen(/^I should not see ontologies from other repositories with that type$/) do
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen expect(page).not_to have_content(@ontology_two.name)
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainenend
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo SirainenGiven(/^there are at least two ontologies with ontology tpyes and projects$/) do
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo Sirainen @ontology_type = FactoryGirl.create :ontology_type
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo Sirainen @project = FactoryGirl.create :project
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo Sirainen @ontology_one = FactoryGirl.create :ontology, name: 'OntologyOne',
abb5d20d3155db02a1afec4066d52707ba9d4e52Timo Sirainen repository: @repository_one, ontology_type: @ontology_type, projects:
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen [@project]
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @ontology_two = FactoryGirl.create :ontology, name: 'OntologyTwo',
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainen repository: @repository_two, ontology_type: @ontology_type, projects:
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen [@project]
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo SirainenThen(/^I should see all ontologies in that repository with that type, in that project$/) do
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen expect(page).to have_content(@ontology_one.name)
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen expect(page).to have_content(@ontology_type.name)
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen expect(page).to have_content(@project.name)
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainenend
df8046c9a4f6bc2a478ad1e74504d50f3110c906Timo Sirainen
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo SirainenThen(/^I should not see ontologies from other repositories with that type, in that project$/) do
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen expect(page).not_to have_content(@ontology_two.name)
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainenend
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo SirainenWhen(/^I type in a ontology name I'm searching for which is in the repository$/) do
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen within '#search_form_div' do
7000810786f2959f02cd6d2f4151a9eb61ff5db8Timo Sirainen fill_in 'query', with: @ontology_one.name
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen end
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
cc935aff970ed6c24d136cc560c7e705a49d536cTimo SirainenWhen(/^I type in a ontology name I'm searching for which is not existing$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen within '#search_form_div' do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen fill_in 'query', with: 'OntologyThree'
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen end
92f9871ac981201fe0a47f6c909f790cce14b240Timo Sirainenend
cc935aff970ed6c24d136cc560c7e705a49d536cTimo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenThen(/^I should not see the ontology$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen within '#search_response' do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).not_to have_content('OntologyThree')
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen end
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenGiven(/^there is an ontology with a category$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @ont_with_cat = FactoryGirl.create :ontology
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @cat = FactoryGirl.create :category
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @ont_with_cat.categories << @cat
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenThen(/^I should see all ontologies with a category$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).to have_content(@ont_with_cat.name)
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenGiven(/^I am logged in as the owner of a private repository$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @repo = FactoryGirl.create :private_repository
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @user = @repo.permissions.first.subject
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen login_as @user, :scope => :user
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenGiven(/^I am not logged in as the owner of a private repository$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @repo = FactoryGirl.create :private_repository
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @user = FactoryGirl.create :user
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen login_as @user, :scope => :user
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenGiven(/^there is an ontology in this repository$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @ontology = FactoryGirl.create :ontology, repository: @repo
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen @repo.ontologies << @ontology
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenThen(/^I should see the ontology in this repository$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).to have_content(@ontology.name)
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenThen(/^I shouldn't see the ontology in this repository$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen expect(page).not_to have_content(@ontology.name)
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo SirainenWhen(/^I search for this ontology$/) do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen within '#search_form_div' do
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen fill_in 'query', with: @ontology.name
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen end
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainenend
d6a7cb184cc882a90aa3d9312082e0029f354ff6Timo Sirainen