Project

General

Profile

Download (2.59 KB) Statistics
| Branch: | Tag: | Revision:
require 'katello_test_helper'
require 'support/pulp3_support'
module Katello
module Service
module Pulp3
class Repository
class PythonTest < ActiveSupport::TestCase
include Katello::Pulp3Support

def setup
@repo = katello_repositories(:pulp3_python_1)
@primary = SmartProxy.pulp_primary
@repo.root.update(url: 'https://pypi.org')
@repo.root.update(generic_remote_options: {includes: ['shelf-reader']}.to_json)

create_repo(@repo, @primary)
@repo.reload
end

def teardown
ForemanTasks.sync_task(::Actions::Pulp3::Orchestration::Repository::Delete, @repo, @primary)
@repo.reload
end

def test_update
ForemanTasks.sync_task(
::Actions::Pulp3::Repository::UpdateRepository, @repo, @primary)
end

def test_delete
repo_reference = Katello::Pulp3::RepositoryReference.find_by(
root_repository_id: @repo.root.id,
content_view_id: @repo.content_view.id)

refute_nil repo_reference

ForemanTasks.sync_task(
::Actions::Pulp3::Repository::Delete, @repo.id, @primary)
@repo.reload

repo_reference = Katello::Pulp3::RepositoryReference.find_by(
root_repository_id: @repo.root.id,
content_view_id: @repo.content_view.id)

assert_nil repo_reference
end

def test_index_on_sync
Katello::GenericContentUnit.destroy_all
sync_args = {:smart_proxy_id => @primary.id, :repo_id => @repo.id}
ForemanTasks.sync_task(::Actions::Pulp3::Orchestration::Repository::Sync, @repo, @primary, sync_args)
index_args = {:id => @repo.id, :contents_changed => true}
ForemanTasks.sync_task(::Actions::Katello::Repository::IndexContent, index_args)
@repo.reload

post_unit_count = Katello::GenericContentUnit.all.count
post_unit_repository_count = Katello::RepositoryGenericContentUnit.where(:repository_id => @repo.id).count

unit = @repo.generic_content_units.first

assert_equal unit.content_type, "python_package"
assert_includes unit.filename, "shelf_reader"
refute unit.pulp_id.nil? && unit.version.nil?
assert unit.additional_metadata['package_type'] && unit.additional_metadata['sha256']

assert_equal post_unit_count, 2
assert_equal post_unit_repository_count, 2
end
end
end
end
end
end
(1-1/2)