def make_selection(self, keys, current_time):
        choices = []
        for item in self.items:
            choices.append(item['dialogue'])
        if self.name in self.no_selling:
            choices.append('Leave')
        else:
            choices.append('Cancel')
        self.dialogue_box = self.make_dialogue_box(self.dialogue, self.index)
        self.selection_box = self.make_selection_box(choices)
        self.gold_box = self.make_gold_box()

        if len(choices) == 2:
            arrow_list = self.two_arrow_pos_list
        elif len(choices) == 3:
            arrow_list = self.arrow_pos_list
        else:
            arrow_list = None
            AssertionError('Only two items supported')

        self.selection_arrow.rect.topleft = arrow_list[self.arrow_index]


        if keys[pg.K_DOWN] and self.allow_input:
            if self.arrow_index < (len(choices) - 1):
                self.arrow_index += 1
                self.allow_input = False
                self.notify(c.CLICK)
        elif keys[pg.K_UP] and self.allow_input:
            if self.arrow_index > 0:
                self.arrow_index -= 1
                self.allow_input = False
                self.notify(c.CLICK)
        elif keys[pg.K_SPACE] and self.allow_input:
            if self.arrow_index == 0:
                self.state = 'confirmpurchase'
                self.item_to_be_purchased = self.items[0]

            elif self.arrow_index == 1 and len(choices) == 3:
                self.state = 'confirmpurchase'
                self.item_to_be_purchased = self.items[1]

            else:
                if self.level.name in self.no_selling:
                    self.level.state = 'transition out'
                    self.game_data['last state'] = self.level.name
                else:
                    self.state = 'buysell'

            self.notify(c.CLICK2)
            self.arrow_index = 0
            self.allow_input = False

        if not keys[pg.K_SPACE] and not keys[pg.K_UP] and not keys[pg.K_DOWN]:
            self.allow_input = True
Test that a UsageLimits attribute can be created.
dataset/ETHPy150Open justinmeister/The-Stolen-Crown-RPG/data/shopgui.py/Gui.make_selection--crossover with--dataset/ETHPy150Open OpenKMIP/PyKMIP/kmip/tests/unit/core/factories/test_attribute_values.py/TestAttributeValueFactory.test_create_usage_limits