Example #1
0
def test_leaky_add_to_channel():
    # A newer distribution (e.g. v0.2.0.dev) on a dev channel was getting promoted to the main channel
    # when an earlier version (e.g. v0.1.0) was being linked to main.
    clear_binstar(CLIENT, OWNER)
    # Build a recipe and upload the recipe to the testing channel.
    meta = MetaData(RECIPE_DEV)
    meta = build(meta)
    upload(CLIENT, meta, OWNER, channels=['testing'])

    # Build a recipe and upload the recipe to the testing channel.
    meta_eariler = MetaData(os.path.join(RECIPES_DIR, 'recipe1'))
    meta_eariler = build(meta_eariler)
    upload(CLIENT, meta_eariler, OWNER, channels=['testing'])

    add_distribution_to_channel(CLIENT, OWNER, meta_eariler, channel='main')

    assert_true(distribution_exists_on_channel(CLIENT, OWNER, meta_eariler, channel='main'))
    assert_false(distribution_exists_on_channel(CLIENT, OWNER, meta, channel='main'))
Example #2
0
def test_recipes_to_build():
    clear_binstar(CLIENT, OWNER)

    # Build a recipe.
    meta = build(MetaData(os.path.join(RECIPES_DIR, 'recipe1')))
    upload(CLIENT, meta, OWNER, channels=['testing'])

    metas = fetch_metas(RECIPES_DIR)
    metas.sort(key=lambda meta: meta.name())

    result = list(recipes_to_build(CLIENT, OWNER, channel='testing', recipe_metas=metas))
    # The ones we need to build are all but the first.
    assert_metas_equal(result, metas[1:])
Example #3
0
def test_distribution_exists():
    clear_binstar(CLIENT, OWNER)

    # Build a recipe.
    meta = MetaData(RECIPE_DEV)
    meta = build(meta)

    # Check distribution exists returns false when there is no distribution.
    assert_false(distribution_exists(CLIENT, OWNER, meta))

    # upload the distribution 
    upload(CLIENT, meta, OWNER, channels=['testing'])

    # Check the distribution exists. Notice there is no channel being supplied here.
    assert_true(distribution_exists(CLIENT, OWNER, meta))

    # Check the distribution is on testing but not on main.
    assert_true(distribution_exists_on_channel(CLIENT, OWNER, meta, channel='testing'))
    assert_false(distribution_exists_on_channel(CLIENT, OWNER, meta, channel='main'))

    add_distribution_to_channel(CLIENT, OWNER, meta, channel='main')
    # Check that the distribution has been added.
    assert_true(distribution_exists_on_channel(CLIENT, OWNER, meta, channel='main'))