def test_new_activation_key_1(self): org_id = misc_functions.create_new_org() u = misc_functions.create_new_user(org_id=org_id) groups = [] for i in range(3): params = misc_functions.build_server_group_params(org_id=org_id) sg = misc_functions.create_server_group(params) groups.append(sg.get_id()) groups.sort() channels = [ 'rhn-tools-rhel-2.1-as-i386', 'rhn-tools-rhel-2.1-es-i386', 'rhn-tools-rhel-2.1-ws-i386' ] channels.sort() token_user_id = u.getid() token_org_id = org_id token_entitlement_level = { 'provisioning_entitled': None, 'enterprise_entitled': None, } token_note = "Test activation key %d" % int(time.time()) a = misc_functions.create_activation_key( org_id=token_org_id, user_id=token_user_id, entitlement_level=token_entitlement_level, note=token_note, groups=groups, channels=channels) token = a.get_token() a = rhnActivationKey.ActivationKey() a.load(token) self.assertEqual(a.get_user_id(), token_user_id) self.assertEqual(a.get_org_id(), token_org_id) self.assertEqual(a.get_entitlement_level(), token_entitlement_level) self.assertEqual(a.get_note(), token_note) g = a.get_server_groups() g.sort() self.assertEqual(g, groups) g = a.get_channels() g.sort() self.assertEqual(g, channels)
def create_activation_key(org_id=None, user_id=None, groups=None, channels=None, entitlement_level=None, note=None, server_id=None, release=None): if org_id is None: need_user = 1 org_id = create_new_org() else: need_user = 0 if user_id is None: if need_user: u = create_new_user(org_id=org_id) user_id = u.getid() else: u = rhnUser.User("", "") u.reload(user_id) if groups is None: groups = [] for i in range(3): params = build_server_group_params(org_id=org_id) sg = create_server_group(params) groups.append(sg.get_id()) if channels is None: channels = ['rhel-i386-as-3-beta', 'rhel-i386-as-2.1-beta'] channel_arch_id = find_or_create_channel_arch(name="channel - test", label="test") # ensure channels are created for channel_label in channels: channel = add_channel(label=channel_label, org_id=org_id, channel_arch_id=channel_arch_id) populate_rhn_dist_channel_map(channel_id=channel['id'], channel_arch_id=channel_arch_id, org_id=org_id, release=release) if entitlement_level is None: entitlement_level = 'provisioning_entitled' if note is None: note = "Test activation key %d" % int(time.time()) a = rhnActivationKey.ActivationKey() a.set_user_id(user_id) a.set_org_id(org_id) a.set_entitlement_level(entitlement_level) a.set_note(note) a.set_server_groups(groups) a.set_channels(channels) a.set_server_id(server_id) a.save() rhnSQL.commit() return a
def test_exception_token_load_1(self): a = rhnActivationKey.ActivationKey() self.assertRaises(rhnActivationKey.InvalidTokenError, a.load, "a")
def test_exception_token_entitlement_level_1(self): a = rhnActivationKey.ActivationKey() self.assertRaises(rhnActivationKey.InvalidEntitlementError, a.set_entitlement_level, {'a': None})
def test_exception_token_channels_1(self): a = rhnActivationKey.ActivationKey() self.assertRaises(rhnActivationKey.InvalidChannelError, a.set_channels, ["a"])