コード例 #1
0
    def test_score_personal_3(self):
        print_test_info()
        reco = Reco(
            test_data['test_score_personal_3']['input']['extracted_data'],
            True,
            external_data={
                'item_data':
                test_item_data,
                'user_click':
                test_data['test_score_personal_3']['input']['user_click']
            })
        recoList = reco.get_reco_list()
        expectedList = test_data['test_score_personal_3']['output']

        for category in expectedList:
            for row in expectedList[category]:
                self.assertTrue(
                    row['reco_hashkey'] in
                    [data['reco_hashkey'] for data in recoList[category]])
                recoItem = None
                for recoItem in recoList[category]:
                    if row['reco_hashkey'] == recoItem['reco_hashkey']:
                        break
                self.assertTrue(recoItem is not None)
                for i in range(0, len(row['score'])):
                    if row['score'][i] == -1:
                        continue
                    self.assertEqual(
                        row['score'][i],
                        int((recoItem['score'] % math.pow(10, 6 - i)) /
                            math.pow(10, 5 - i)))
            self.assertEqual(len(expectedList[category]),
                             len(recoList[category]))
コード例 #2
0
def save_all_recommend_item():
    reco = Reco(json_data, show_external_data=False)
    all_list = reco.get_all_list()

    print(json.dumps(all_list, indent=4, sort_keys=True, ensure_ascii=False))

    with open('testItemData.json', 'w') as outfile:
        json.dump(all_list, outfile, indent=4)

    with open('testItemDataEncoded.json', 'w') as outfile:
        json.dump(all_list, outfile, indent=4, ensure_ascii=False)
コード例 #3
0
    def test_distance_rank(self):
        print_test_info()
        reco = Reco(test_data['empty_data']['input'],
                    True,
                    external_data={
                        'item_data': test_item_data,
                        'user_click': None
                    })
        array = test_data['test_distance_rank']['input']['array']
        data = test_data['test_distance_rank']['input']['data']
        expectedRank = test_data['test_distance_rank']['output']['rank']

        for i in range(0, len(data)):
            rank = reco.get_range(array, data[i])
            self.assertEqual(rank, expectedRank[i])
コード例 #4
0
    def test_load_all_null(self):
        print_test_info()
        reco = Reco(test_data['test_load_all_null']['input'],
                    '',
                    external_data={
                        'item_data': test_item_data,
                        'user_click': None
                    })
        recoList = reco.get_all_list()
        expectedList = test_item_data

        for category in expectedList:
            for row in expectedList[category]:
                self.assertTrue(
                    row['reco_hashkey'] in
                    [data['reco_hashkey'] for data in recoList[category]])
            self.assertEqual(len(expectedList[category]),
                             len(recoList[category]))
コード例 #5
0
    def test_load_all_external_2(self):
        print_test_info()
        reco = Reco(test_data['test_region_filter_1']['input'],
                    show_external_data=False,
                    external_data={
                        'item_data': test_item_data,
                        'user_click': None
                    })
        recoList = reco.get_reco_list()
        expectedList = test_data['test_region_filter_1']['output']

        for category in expectedList:
            for row in recoList[category]:
                self.assertEqual(1, len(row))

            for row in expectedList[category]:
                self.assertTrue(
                    row['reco_hashkey'] in
                    [data['reco_hashkey'] for data in recoList[category]])
            self.assertEqual(len(expectedList[category]),
                             len(recoList[category]))
コード例 #6
0
def eventsDetail():
    reinforceEventsReco = request.args['eventDetail']
    print(reinforceEventsReco)
    reco_module = Reco(json.loads(reinforceEventsReco))

    return json.dumps(reco_module.get_reco_list(), ensure_ascii=False)