class Test_SplitSynonymClass(unittest.TestCase):
    """Test split file class.

    """
    def setUp(self):
        """
        setting initial paramater
        Args:
            data: test file name
            split_module: setting the split_module instance
        """
        file_name = APP_ROOT + '/../../Data/wnjpn-all.tab'
        self.input_module = InputFile(file_name)

    def test_make_dict(self):
        """
        test make split dict and all dict
        """
        self.input_module.input_special_format_file("\t")
        test_data = self.input_module.get_file_data()
        self.split_synonym_class = SplitSynonymClass(test_data)
        self.split_synonym_class.make_dict()
        # test all dict
        all_dict = self.split_synonym_class.get_all_dict()
        self.assertEqual(all_dict['木っ葉'], "00377169-n")
        self.assertEqual(len(self.split_synonym_class.get_all_dict()), 146517)
        # test split dict
        split_dict = self.split_synonym_class.get_split_dict()
        self.assertEqual(split_dict['02927303-a'], ['アメリカ大陸の', '北アメリカの', '南アメリカの', '南北アメリカ原産の'])
        self.assertEqual(len(self.split_synonym_class.get_split_dict()), 75771)
        print(split_dict["00377169-n"])
 def test_make_similarity_word(self):
     """
     make similarity word
     """
     wiki_vector_file_name = APP_ROOT + '/../data/jawiki_vector.bin'
     self.input_module = InputFile(wiki_vector_file_name)
     self.input_module.input_word2vec_binary_file()
 def test_make_similarity_word(self):
     """
     make similarity word
     """
     wiki_vector_file_name = APP_ROOT + '/../data/jawiki_vector_delete_first_utf8.txt'
     self.input_module = InputFile(wiki_vector_file_name)
     self.input_module.input_fast_large_file()
     wiki_vector = self.input_module.get_vector()
     self.input_module = InputFile(self.input_ann_list)
     self.input_module.input_list(self.input_dir)
     self.ann_list = self.input_module.get_ann_list()
     self.input_module = InputFile(self.input_twitter_data)
     self.input_module.input_special_format_file()
     self.twitter_list = self.input_module.get_file_data()
     self.get_similarity_word = GetSimillairWord(self.twitter_list, self.ann_list, wiki_vector)
     self.get_similarity_word.get_proper_noun_word()
     self.get_similarity_word.get_simillair_word()
     result = self.get_similarity_word.twitter_proper_noun_list
     print(result)
     print(len(result))
     check_result = ['2', '1', '2', '3', '1', '学生', '日', '日', '3', '5', '月', '日', '日', '都', '秋田', '人類', '中国', '餅', '中', '1', '柏', '猫', '日', '日', '3', '鶴', '百', '春日', '顔', '日', '月', '尾', '日', '羽', '鶴', '目', '木', '大和', '奈良', '夢', '髭', '腰', '日', 'ナイン', '日', '髪', '日', '赤', '秋', '春日', '猫', '明', '月', '目', '日', '月', '日', 'ゴルフ', 'タリーズコーヒー', '腹', '腹', '顔', '1', '朝', '竹', '枝', '二つ', '春日', '赤', '稲', '口', '日', 'ふん', 'チャーハン', '朝', '水泳', '浴衣', '浴衣', '豚', '猫', '日', '中', '竹', '1', '5', '上根', '尾', '秋', '月', '袖', '日', '竹', '月', '根', '腰', '腰', '野球', 'ゴジラ', '野球', '白', '道', '小指', '眉毛', '大伴', '日', '王', 'カクテル', 'ありがとう', '豚', '病院', '春日', 'カニ', '水泳', 'ありがとう', 'さき', 'イカ', '日', '豚', '骨', '金', '茶色', '手', 'イカ', 'いちご', '顔', 'ゴジラ', '赤', '柏', '夢', '豚', '五月', '38', '中', '日', 'バター', 'ライス', '秋', '中', '五月', 'ファン', '天の川', 'パン', '名古屋', 'ビール', '日焼け', 'カエル', '日本語', '裕', 'ピンク', '静岡', 'ありがとう', 'パン', 'コカイン', 'ラーメン', '野球', 'おにぎり', '1', '武田', '日', 'アイドル', 'ふん', 'ふん', '朝日新聞', '学生', 'イカ', 'シンガーソングライター', '人間', '人間', '腰', 'ラーメン', 'パン', '安倍', 'ありがとう', 'ありがとう', 'ありがとう', 'ありがとう', 'たまき', '高', '中', 'ありがとう', '月', 'ありがとう', 'ライバル', 'オリックス', 'ありがとう', 'ありがとう', 'ライス', '口', 'アイドル', '星条旗', '音楽', 'メジャー']
     self.assertEqual(result, check_result)
     result = self.get_similarity_word.twitter_proper_noun_wiki_vector_dict
     print(result)
     print(len(result))
     check_result = {'名古屋': ['札幌', '広島', '東京', '神戸', '関西', '浜松', '岐阜', '大阪', '北九州', '横浜', '金沢', '福岡'], '腰': ['膝', '踵', '肩', '臀部', '膝', '踵', '肩', '臀部', '膝', '踵', '肩', '臀部', '膝', '踵', '肩', '臀部'], '人間': ['生き物', '生き物'], 'ビール': ['ラガー_(ビール)', 'シードル', 'コーヒー', 'アイスクリーム', '蒸留酒', 'ワイン', 'エール_(ビール)', 'ウイスキー', 'コーラ_(飲料)', '紅茶', 'チョコレート'], '百': ['千', '十'], '奈良': ['和歌山'], '餅': ['玉子', '団子', '神酒', '徳利', '赤飯', 'アズキ', '粥', '饅頭'], 'ラーメン': ['讃岐うどん', '日本料理', '味噌ラーメン', 'うどん', '焼き鳥', '中華料理', '蕎麦', '和食', 'つけ麺', 'カレーライス', 'たこ焼き', 'おでん', '寿司', '麺', 'すき焼き', 'お好み焼き', '餃子', '讃岐うどん', '日本料理', '味噌ラーメン', 'うどん', '焼き鳥', '中華料理', '蕎麦', '和食', 'つけ麺', 'カレーライス', 'たこ焼き', 'おでん', '寿司', '麺', 'すき焼き', 'お好み焼き', '餃子'], 'シンガーソングライター': ['フォークシンガー', 'MC_(ヒップホップ)', '演歌歌手', '音楽グループ', 'ロックバンド', '音楽プロデューサー', '作詞家'], '赤': ['赤色', '藍色', '青', '緑色', '黒', '白', '紫', '朱色', '黄色', '青色', '緑', '赤色', '藍色', '青', '緑色', '黒', '白', '紫', '朱色', '黄色', '青色', '緑', '赤色', '藍色', '青', '緑色', '黒', '白', '紫', '朱色', '黄色', '青色', '緑'], 'バター': ['蕎麦粉', '米飯', 'プディング', '揚げ物', '出汁', '味噌汁', 'マーガリン', '肉類', 'バンズ', 'オートミール', '紅しょうが', 'ポン酢', 'ゴマ', '鶏卵', '焼く_(調理)', 'ニンニク', 'サラダドレッシング', '澄ましバター', '加糖練乳', 'オレンジジュース', 'オリーブ・オイル', 'スモークサーモン', 'うるち米', 'スポンジケーキ', 'タマネギ', 'キュウリ', '酢漬け', 'だし汁', 'コショウ', '煮汁', 'カスタード', 'ルー_(食品)', 'マヨネーズ', 'ココア', 'コーンスターチ', 'ゆで卵', 'シナモン', 'クラッカー_(食品)', '唐辛子', '燻製', '塩味', '食用油', 'コーヒー豆', 'サラダ', '牛乳', 'コンソメ', '煮物', 'ペイストリー', 'ウスターソース', 'サラダ油', '水飴', '黒砂糖', '牛肉', '上白糖', 'ソテー', 'シリアル食品', '重曹', 'カスタードクリーム', 'スープ', 'クレープ', 'アーモンド', 'トマトソース', '餡', 'ショウガ', 'ラッカセイ', 'ミートボール', 'シャーベット', 'ザワークラウト', 'ベシャメルソース', 'グレイビーソース', '植物油', 'トウガラシ', 'チリソース', 'クリームチーズ', 'ヨーグルト', 'マリネ', '目玉焼き', 'ひき肉', 'キャベツ', 'サルサ_(料理)', '生クリーム', '香辛料', 'ホットケーキ', 'フライドポテト', '酢', 'セモリナ', 'ソーセージ', 'ヒヨコマメ', '蜂蜜', 'メレンゲ', '大根おろし', '羊肉', 'きな粉', '糖蜜', 'シチュー', 'ソース_(調味料)', 'サンバル', '砂糖', 'パセリ', 'クリーム_(食品)', 'スパゲッティ', 'サワークリーム', '豆乳', 'カッテージチーズ', 'パルミジャーノ・レッジャーノ', 'ベーキングパウダー', 'ピュレ', 'トルティーヤ', 'チーズ', '果汁', 'ドライフルーツ', 'からし', '薄切り', 'サンドイッチ', 'プロシュット', 'オリーブオイル', 'スクランブルエッグ', 'マッシュポテト', 'グラニュー糖', 'ごま油', 'フィリング', '豚肉', 'フリホレス', 'アイスクリーム', 'パン生地', 'みじん切り', 'レーズン', '片栗粉', 'ブランデー', '調味料', '油揚げ', 'ポテトサラダ', 'ビスケット', '米粉', 'パプリカ', '仔牛肉', '煮込み料理', 'ライ麦パン', 'メープルシロップ', '穀粉', '薬味', 'パスタ', '煮込み', 'ピーナッツバター', '上新粉', 'ピクルス', '酒粕', 'ワカモレ', 'マスタード', '鶏肉', 'ココナッツミルク', 'ココアパウダー', '汁物', 'マシュマロ', 'ジャガイモ', 'ケチャップ', 'もち米', '小麦粉', 'サラミ', '挽肉', '種実類', 'フライ_(料理)', 'シロップ', 'チョコレート', 'ニンジン', 'ヌガー', '鰹節'], 'タリーズコーヒー': ['ニトリ', 'モスバーガー', 'ピザハット', 'スポーツオーソリティ', 'ベイシア', 'ヤオコー', 'サブウェイ', '成城石井', 'オークワ', 'ドトールコーヒー', 'ミドリ電化', 'ケーズホールディングス', 'コーナン'], '白': ['青', '黒', '赤'], '鶴': ['梅', '梅'], '二つ': ['五つ', '2つ', '三つ', 'ふたつ'], '浴衣': ['タキシード', '白無垢', '着物', '喪服', '普段着', 'タキシード', '白無垢', '着物', '喪服', '普段着'], '竹': ['松', '柳', '松', '柳', '松', '柳'], 'カエル': ['タコ', 'ワニ', 'カブトムシ', 'ヘビ'], 'ピンク': ['ピンク色', '桃色', 'パープル'], '野球': ['ラグビー', 'ラグビー', 'ラグビー'], '髭': ['あごひげ', 'ヒゲ', '口髭', '髪の毛', '口ひげ', 'ひげ', '髪'], '小指': ['左足', '指', '中指', '親指', '人差し指', '薬指', '手首'], '武田': ['長宗我部', '毛利', '今川', '朝倉', '織田', '上杉', '北条', '武田氏', '大友', '島津'], 'ふん': ['ぺん', 'ぎゅう', 'ぺん', 'ぎゅう', 'ぺん', 'ぎゅう'], 'オリックス': ['楽天', '日本ハム', 'ロッテ', '千葉ロッテマリーンズ', '読売ジャイアンツ', 'DeNA', '北海道日本ハムファイターズ', '広島東洋カープ', 'オリックスバファローズ', '巨人', '福岡ソフトバンクホークス', '阪神', 'タイガース', '東北楽天ゴールデンイーグルス', '大阪近鉄バファローズ', '千葉ロッテ', '阪神タイガース', '横浜ベイスターズ', '西武', '中日ドラゴンズ', 'ヤクルト', '東京ヤクルトスワローズ', '埼玉西武ライオンズ', '横浜DeNAベイスターズ', '中日', 'オリックス・バファローズ', 'ソフトバンク'], 'おにぎり': ['煮干し', '刺身', '惣菜', 'カップラーメン', 'ラー油', '米飯', '揚げ物', '味噌汁', '紅しょうが', '天ぷら', '麺類', 'から揚げ', '定食', '炒飯', '汁粉', '茶漬け', 'うどん', '食パン', '煮物', '雑煮', '抹茶', 'ウスターソース', '吸い物', 'カステラ', '中華まん', '薩摩揚げ', '餡', 'たい焼き', 'あられ_(菓子)', 'ミートボール', 'ちらし寿司', 'インスタント食品', 'チャーシュー', '目玉焼き', '焼きそば', '梅干し', '豆腐', '求肥', '稲荷寿司', 'キムチ', '卵焼き', '大根おろし', '蒲鉾', 'ハンバーガー', '鍋料理', '佃煮', 'コロッケ', 'サンドイッチ', '煎餅', 'かき氷', '鍋物', 'しゃぶしゃぶ', 'カレーライス', '油揚げ', 'おでん', '沢庵漬け', 'チャーハン', '薬味', '削り節', 'ソフトクリーム', 'ご飯', 'すき焼き', '汁物', '丼物', '饅頭', '竹輪', '豚カツ', '鰹節'], '1': ['6', '7', '2', '3', '4', '9', '8', '5', '0', '6', '7', '2', '3', '4', '9', '8', '5', '0', '6', '7', '2', '3', '4', '9', '8', '5', '0', '6', '7', '2', '3', '4', '9', '8', '5', '0', '6', '7', '2', '3', '4', '9', '8', '5', '0', '6', '7', '2', '3', '4', '9', '8', '5', '0'], 'ゴジラ': ['ゴジラ_(架空の怪獣)', 'ガメラ', 'ゴジラ_(1954年の映画)', 'ゴジラ_(架空の怪獣)', 'ガメラ', 'ゴジラ_(1954年の映画)'], '38': ['398', 'Vireo', 'ヒノオビクラゲ属', '363', '728', 'Q型小惑星', 'Numenius', 'practische', '119', 'エメリ・ドレフェス', '727', 'orotate', 'Zink', 'Mingo', 'アーカンソー・レイザーバックス', '778', '195', '2013', 'くぼたみか', '327', '稲垣定計', 'エレグア', 'エチレン酢酸ビニル液', '板倉昌信', 'monomethyl', 'アオグラ', '392', '162', '288', '384', '729', '123', 'abolition', '717', '1008', 'Deutzia', '741', '386', '167', 'postes', 'Threadfin', '藤本貴之', '286', '212', '84', 'アルビオリックス', 'Bluefish', 'コカ・コーラ・フィールド', '439', 'クリティア', '420', '豪華一代娘', '169', '211', '302', '酒井忠寧', '320', '443', 'bhāvayato', '武内こずえ', '335', '504', '安食西', 'ジャンヌ・ド・ブルボン=ヴァンドーム', 'Searaven', '五蘊盛苦', '521', '218', 'Fanshaw', 'Liparis', '畳製作技能士', '503', '沖縄県立森川特別支援学校', '164', 'ẓam', 'Crevalle', '319', '渡辺親綱', '282', '変態王子と笑わない猫。', 'イジゲンセカイ', 'methylcoclaurine', '軍歴証明書', 'Coptis', '362', 'Grunion', '毎日が夏休み', 'afpbb', '蕭宝義', 'ゾガン県', '渡辺登綱', 'Gurnard', '1729', 'トックリラン', '988', 'ガスアンドパワーインベストメント', 'フランチェスコ3世・ゴンザーガ', '下平尾', 'coniferyl', 'trimethyl', '味噌蔵', '明日に向って走れ', 'テキサス州選出のアメリカ合衆国上院議員', 'グッド・アズ・アイ・ビーン・トゥ・ユー', 'Sterlet', '恋愛日記', '731', '324', 'クレージーの殴り込み清水港', '1728', '287', 'ニット製品製造技能士', '348', '人斬り龍馬', '畑満秀', 'ファスン', '719', '56', '751', 'Puffer', 'Jallao', 'jwest', '岐阜県道358号井尻八百津線', '122', '┐\u3000\u3000\u3000\u3000\u3000┌', '285', '322', '217', '259', '487', 'ルッゲル', 'サラシア属', '日野資邦', '2012年宜野湾市長選挙', 'Tirante', 'Bowfin', 'Ronquil', '185', '330', '鳥居忠瞭', '稲葉正益', 'Blenny', 'MACCS', '343', '日野「君が代」伴奏拒否訴訟', '321', 'Tarpon', '44', 'Seadevil', '大日本帝国憲法第73条', 'Gudgeon', '946', '海雲寺', '258', '954', '49', 'ムリフェン', '345', '276'], '王': ['国王'], '2': ['6', '7', '3', '1', '4', '9', '8', '5', '0', '6', '7', '3', '1', '4', '9', '8', '5', '0'], '五月': ['七月', '十月', '六月', '十二月', '四月', '九月', '八月', '二月', '三月', '十一月', '七月', '十月', '六月', '十二月', '四月', '九月', '八月', '二月', '三月', '十一月'], '枝': ['葉', '枝は', '茎'], '日本語': ['英語', '原語'], 'ありがとう': ['みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん'], '骨': ['頭蓋骨'], '猫': ['ネコ', '仔猫', '小鳥', 'ネズミ', 'ネコ', '仔猫', '小鳥', 'ネズミ', 'ネコ', '仔猫', '小鳥', 'ネズミ'], 'コカイン': ['覚醒剤', '薬物', '覚せい剤', 'LSD_(薬物)', '大麻', 'ヘロイン', 'アンフェタミン', 'マリファナ', 'モルヒネ', 'メタンフェタミン'], '5': ['6', '7', '2', '3', '1', '4', '9', '8', '0', '6', '7', '2', '3', '1', '4', '9', '8', '0'], '3': ['6', '7', '2', '1', '4', '9', '8', '5', '0', '6', '7', '2', '1', '4', '9', '8', '5', '0', '6', '7', '2', '1', '4', '9', '8', '5', '0'], '豚': ['羊', '鶏', '牛', 'ブタ', 'ヤギ', 'ヒツジ', 'ニワトリ', 'ウシ', '山羊', '羊', '鶏', '牛', 'ブタ', 'ヤギ', 'ヒツジ', 'ニワトリ', 'ウシ', '山羊', '羊', '鶏', '牛', 'ブタ', 'ヤギ', 'ヒツジ', 'ニワトリ', 'ウシ', '山羊', '羊', '鶏', '牛', 'ブタ', 'ヤギ', 'ヒツジ', 'ニワトリ', 'ウシ', '山羊'], '秋': ['夏', '春', '夏', '春', '夏', '春'], '学生': ['生徒', '大学生', '生徒', '大学生'], '眉毛': ['あごひげ', '頭髪', '髪の毛', '白目', '口ひげ', '前髪'], 'チャーハン': ['煮干し', 'ミルクセーキ', '惣菜', 'ラー油', '唐揚げ', '米飯', 'グラタン', 'スパゲティ', '揚げ物', '味噌汁', '紅しょうが', 'ナポリタン', 'すまし汁', '海鮮', '天ぷら', '焼く_(調理)', 'サラダドレッシング', '麺類', '叉焼', 'かりんとう', 'タコス', '定食', '炒飯', '汁粉', '塩味', '煮魚', 'うどん', 'サラダ', 'オムライス', 'ドミグラスソース', 'コンソメ', '煮物', 'カツ丼', '吸い物', 'ソテー', '照り焼き', '煮付け', 'クレープ', '中華麺', 'ハンバーグ', 'ミートボール', 'ちらし寿司', 'インスタント食品', 'おにぎり', '炒め物', 'チャーシュー', 'ピラフ', '目玉焼き', '焼きそば', 'ビーフン', '豆腐', 'たぬき_(麺類)', 'フライドポテト', 'キムチ', '卵焼き', '大根おろし', '前菜', '煮つけ', 'シチュー', 'サンバル', 'ハンバーガー', 'スパゲッティ', 'チゲ', 'カツレツ', 'コロッケ', '点心', '雑炊', '春巻き', 'サンドイッチ', 'ケバブ', '麻婆豆腐', 'マッシュポテト', '豚骨', '鍋物', 'しゃぶしゃぶ', 'カレーライス', '油揚げ', '沢庵漬け', '煮込み料理', 'がんもどき', '煮込み', 'オードブル', 'あんかけ', 'ベトナム料理', 'ご飯', 'ムニエル', 'すき焼き', '汁物', '餃子', 'オムレツ', 'ケチャップ', 'ドライカレー', 'フライ_(料理)', '炊き込みご飯', '豚カツ', 'シュークリーム', 'カスタードプディング'], '髪': ['黒髪', '髪型', '長髪', '頭髪', '髭', '髪の毛', '金髪', '前髪'], '中国': ['台湾', '中華人民共和国', '朝鮮', '韓国'], '朝日新聞': ['夕刊フジ', '産経新聞', '同紙', '朝鮮日報', '日本経済新聞', '朝日新聞社', '神戸新聞', '週刊朝日', '東京スポーツ', '大阪朝日新聞', '中国新聞', '毎日新聞', '読売新聞', '日刊スポーツ', '東京新聞', '中日新聞', '共同通信', '朝刊', '北海道新聞', '週刊文春'], '茶色': ['褐色', '黄土色', '白色', 'オリーブ色', '赤褐色', '地色', '黒色', 'ベージュ', '黒褐色', '深緑', '水色', '赤色', '藍色', '緑色', '銀灰色', '灰色', '橙色', 'オレンジ色', 'ピンク色', '乳白色', '紫色', 'クリーム色', '灰白色', '茶褐色', '銀色', '桃色', '朱色', '黄色', '青色', '薄茶', '栗色'], 'カニ': ['タコ', 'ヒトデ', 'ヒラメ', 'ドジョウ', 'アミ_(甲殻類)', 'カジキ', 'イセエビ', 'カタクチイワシ', 'ナメクジ', 'スズキ_(魚)', 'タラバガニ', 'アンコウ', 'ナマコ', '魚', '硬骨魚', 'トビウオ', 'シャコ', 'ウニ', 'シラウオ', 'サンマ', '二枚貝', 'タチウオ', 'カイアシ類', 'ウツボ', 'オキアミ', '多毛類', 'カレイ', 'ハゼ', 'アナゴ', 'エビ', '頭足類', 'サメ', '小魚', 'ザリガニ'], 'たまき': ['やまかわ', 'ようへい', 'うの', 'りさ', 'ひでみ', 'あいはら', 'むらせ', 'かおる', 'まりこ', 'あきもと', 'みさ', 'ひろき', 'いわお', 'やすこ', 'はやせ', 'のなか', 'まさえ', 'しまだ', 'さえき', 'かのう', 'みつる', 'ゆうこ', 'あゆむ', 'えんどう', 'たかはし', 'たいぞう', 'みはる', 'あさい', 'きど', 'しんたろう', 'みずき', 'いぬい', 'まいこ', 'えり', 'なるみ', 'かたおか', 'みづき', 'まさこ', 'きぬこ', 'ふかみ', 'しょうぞう', 'さおり', 'かめい', 'としえ', 'みほ', 'はるこ', 'しゅうじ', 'ゆうき', 'しおん', 'たにぐち', 'じゅんぞう', 'たつみ', 'ゆきえ', 'かつみ', 'あらき', 'ゆみこ', 'しょうこ', 'るみ', 'もちづき', 'みつこ', 'みちこ', 'やまぎし', 'なおこ', 'きたがわ', 'ゆうじ', 'あけみ', 'まゆずみ', 'いわもと', 'みつお', 'まつばら', 'こいけ', 'はやま', 'わたぬき', 'やました', 'いなだ', 'はしもと', 'はやみ', 'ふじなみ', 'かわかみ', 'かわい', 'よしえ', 'とりい', 'かおり', 'まゆこ', 'こすぎ', 'いわさき', 'ごとう', 'あかね', 'みき', 'いしだ', 'かわぐち', 'くわばら', 'おおば', 'りこ', 'よしの', 'ちえこ', 'りか', 'ひろこ', 'みうら', 'のぶこ', 'しみず', 'たちばな', 'はるみ', 'おがわ', 'ねもと', 'まゆ', 'さとう', 'かねこ', 'ちさ', 'ほんま', 'ななえ', 'ふみこ', 'ちよ', 'みさこ', 'あみ', 'くろだ', 'たかむら', 'ゆきの', 'あやこ', 'ざわ', 'ちかこ', 'いさむ', 'まりえ', 'なおみ', 'りえ', 'ともこ', 'ひさこ', 'よりこ', 'まみ', 'えりか', 'なぎ', 'こうへい', 'ちさと', 'みちお', 'しゅうへい', 'ひでこ', 'しげこ', 'かざま', 'まなべ', 'くろき', 'ももこ', 'いりえ', 'とおる', 'かわばた', 'よしざわ', 'すぎはら', 'ひろみ', 'たかこ', 'かずき', 'いくこ', 'さゆり', 'えつこ', 'つよし', 'まきこ', 'なつこ', 'けんじ', 'ひろふみ', 'ひろえ', 'あゆ', 'あきの', 'みつはし', 'やまだ', 'しげる', 'こじま', 'おぐら', 'としこ', 'くみこ', 'ますみ', 'こうた', 'れいこ', 'むつみ', 'むろい', 'せつこ', 'めぐむ', 'なかにし', 'あやの', 'ひろの', 'みつき', 'けいこ', 'ゆきこ', 'いくみ', 'さなえ', 'ふじい', 'すみこ', 'たかの', 'ようこ', 'あきと', 'あおい', 'いのうえ', 'あいかわ', 'むとう', 'よしい', 'あきこ', 'あさみ', 'さとる', 'おざき', 'きみこ', 'かずこ', 'まつうら', 'なつみ', 'こんどう', 'はるの', 'おおもり', 'じゅり', 'よしこ', 'かづ', 'すずき', 'さなだ', 'のりこ', 'やまもと', 'ほなみ', 'あつみ', 'おくやま', 'たきぐち', 'いしばし', 'けいすけ', 'あさお', 'さとみ', 'ゆみ', 'あいか', 'なつめ', 'かずみ', 'ちはる', 'せきぐち', 'はづき', 'ともみ', 'いぐち', 'てるこ', 'おおいし', 'しいな', 'あらい', 'ゆりか', 'えいじ', 'えみ', 'あつし', 'るりこ', 'ふるた', 'けんと', 'まさゆき', 'としのり', 'れいか', 'さかまき', 'じゅんこ', 'あおやま', 'たまい', 'あおき', 'みよこ', 'ひかる', 'ゆりえ', 'さちこ', 'てるみ', 'きょうこ', 'まつい', 'のぶとし', 'さとこ', 'きみえ', 'さおとめ', 'かずえ', 'なかい', 'あさこ', 'ひとみ', 'かれん', 'ふるや', 'すえなが', 'まゆみ', 'まなみ', 'りょうこ', 'あや', 'はしづめ', 'はせがわ', 'あきほ', 'ながや', 'みさお', 'きんたろう', 'かとう', 'ささき', 'ひとし'], '裕': ['浩', '朗', '佑', '圭', '肇', '淳', '宏', '晃', '潤', '裕之'], '大伴': ['宿禰'], '木': ['樫', '杉', '切り株', '松の木'], 'さき': ['かしま'], '安倍': ['安倍晋三', '中曽根', '小泉', '小泉純一郎', '鳩山', '福田', '菅', '麻生'], 'カクテル': ['ジン_(蒸留酒)', 'ブランデー', 'リキュール'], '星条旗': ['アメリカ合衆国の国旗'], '秋田': ['福島', '山形', '熊本', '新潟', '青森', '高知', '長野', '盛岡', '岩手'], 'ゴルフ': ['ボウリング'], '静岡': ['愛知', '福島', '神奈川', '新潟', '浜松', '岐阜', '山梨', '長野', '茨城', '富山', '群馬']}
     self.assertEqual(result, check_result)
 def setUp(self):
     """
     setting initial paramater
     Args:
         data: test file name
         split_module: setting the split_module instance
     """
     file_name = APP_ROOT + '/../../Data/wnjpn-all.tab'
     self.input_module = InputFile(file_name)
 def setUp(self):
     """
     setting initial paramater
     Args:
         data: test file name
         split_module: setting the split_module instance
     """
     wiki_vector_file_name = APP_ROOT + '/../../Data/jawiki_vector/jawiki_vector_delete_first.txt'
     self.word_net_file_name = APP_ROOT + '/../../Data/wnjpn-all.tab'
     # wiki_vector_file_name = APP_ROOT + '/../../Data/jawiki_vector/jawiki_vector_part.txt'
     # self.word_net_file_name = APP_ROOT + '/../../Data/wnjpn-all_part.tab'
     self.input_module = InputFile(wiki_vector_file_name)
 def test_summary_class(self):
     """
     test make summary dict
     """
     self.input_module.input_fast_large_file()
     wiki_vector = self.input_module.get_vector()
     self.input_module = InputFile(self.word_net_file_name)
     self.input_module.input_special_format_file("\t")
     test_data = self.input_module.get_file_data()
     self.split_synonym_class = SplitSynonymClass(test_data)
     self.split_synonym_class.make_dict()
     # test all dict
     all_dict = self.split_synonym_class.get_all_dict()
     # test split dict
     split_dict = self.split_synonym_class.get_split_dict()
     self.wiki_vector_summary = WikiVectorSummaryCython(all_dict, split_dict, wiki_vector)
     self.wiki_vector_summary.get_similler_word()
     split_dict = self.wiki_vector_summary.get_split_dict()
     for k, v in split_dict.items():
         fo = open(APP_ROOT + "/../../Data/wn_summary_all/" + k + ".txt", 'w')
         sys.stdout = fo
         print(v)
         fo.close()
         sys.stdout = sys.__stdout__
     class_average_vector = self.wiki_vector_summary.get_wiki_average_vector()
     for k, v in class_average_vector.items():
         fo = open(APP_ROOT + "/../../Data/wn_summary_all_class_average/" + k + ".txt_vector.txt", 'w')
         sys.stdout = fo
         print(v)
         fo.close()
         sys.stdout = sys.__stdout__
示例#7
0
    def __init__(self, file_: InputFile):
        """Constructor for a grammar object.

        Parameters
        ----------
        file_ : InputFile
            The file to parse
        """
        self.file_ = file_
        self.file_contents = file_.read_file()
        super().__init__()
 def setUp(self):
     """
     setting initial paramater
     Args:
         data: test file name
         split_module: setting the split_module instance
     """
     wiki_vector_file_name = APP_ROOT + '/../../Data/jawiki_vector/jawiki_vector_delete_first.txt'
     self.word_net_file_name = APP_ROOT + '/../../Data/wnjpn-all.tab'
     # wiki_vector_file_name = APP_ROOT + '/../../Data/jawiki_vector/jawiki_vector_part.txt'
     # self.word_net_file_name = APP_ROOT + '/../../Data/wnjpn-all_part.tab'
     self.input_module = InputFile(wiki_vector_file_name)
class Test_InputFile(unittest.TestCase):
    """Test Input file class.

    """
    def setUp(self):
        """
        setting initial paramater
        Args:
            file name: test file name
            input_module: setting the input_module instance
        """
        file_name = APP_ROOT + '/../../Data/wnjpn-all.tab'
        self.input_module = InputFile(file_name)

    def test_input_special_format_file(self):
        """
        test input tsv file
        """
        self.input_module.input_special_format_file("\t")
        test_data = self.input_module.get_file_data()
        self.assertEqual(test_data[1], ['00001740-a', '優秀', 'XXXX'])
class Test_MakeSimilarityWord(unittest.TestCase):
    """
    Usage:
        python test/test_check_similarity.py ()
    """

    def setUp(self):
        """
        setting initial paramater
        """
        self.input_ann_list = APP_ROOT + '/../data/jawikify_20160310/ann_list'
        self.input_twitter_data = APP_ROOT + '/../data/twitter_data.txt'
        self.input_dir = APP_ROOT + '/../data/jawikify_20160310/'
        self.ann_list = []

    def test_make_similarity_word(self):
        """
        make similarity word
        """
        wiki_vector_file_name = APP_ROOT + '/../data/jawiki_vector.bin'
        self.input_module = InputFile(wiki_vector_file_name)
        self.input_module.input_word2vec_binary_file()
示例#11
0
    def __report_taint(self,
                       taint: list,
                       file_: InputFile,
                       formatter: typing.Callable = lambda n: n) -> str:
        """Return a detected taint.

        Parameters
        ----------
        taint : list
            The list of calls to this taint that was detected
        file_ : InputFile
            The file where the method resides
        formatter : typing.Callable, optional
            Format the output with this function

        Returns
        -------
        str
            A message about how the taint works
        """
        msgs = []
        for call in taint:
            line = file_.column_to_line(call['Position'][0])
            ident = call['Call'][0]['ident'][0]
            msgs.append(
                f"{self.markup['taint']}In line {line} a call with potentially user "
                "controlled input is made to "
                f"{formatter(ident)}.{self.markup['taint_messages_end']}")
            msgs.append(
                f"{self.markup['taint_messages']}The following comment is linked to this "
                f"sink: {formatter(call['Comment'])}{self.markup['taint_messages_end']}"
            )
            if call['Sanitizer'] and call[
                    'Sanitizer'].level <= self.indirection:
                msgs.append(
                    f"{self.markup['taint_messages']}The taint seems to be sanitized "
                    "(indirection level: "
                    f"{call['Sanitizer'].level}).{self.markup['taint_messages_end']}"
                )
                severity = 0.5 + min(
                    call['Sanitizer'].level / self.indirection, 1) / 2
                msgs.append(
                    f"{self.markup['taint_messages']}Severity level: "
                    f"{severity:.0%}.{self.markup['taint_messages_end']}")
            else:
                msgs.append(f"{self.markup['taint_messages']}No sanitizer "
                            f"detected.{self.markup['taint_messages_end']}")
                msgs.append(f"{self.markup['taint_messages']}Severity level: "
                            f"100%.{self.markup['taint_messages_end']}")
        msgs[-1] = f"{msgs[-1]}{self.markup['taint_end']}"
        return '\n'.join(msgs)
 def test_summary_class(self):
     """
     test make summary dict
     """
     self.input_module.input_fast_large_file()
     wiki_vector = self.input_module.get_vector()
     self.input_module = InputFile(self.word_net_file_name)
     self.input_module.input_special_format_file("\t")
     test_data = self.input_module.get_file_data()
     self.split_synonym_class = SplitSynonymClass(test_data)
     self.split_synonym_class.make_dict()
     # test all dict
     all_dict = self.split_synonym_class.get_all_dict()
     # test split dict
     split_dict = self.split_synonym_class.get_split_dict()
     self.wiki_vector_summary = WikiVectorSummaryCython(
         all_dict, split_dict, wiki_vector)
     self.wiki_vector_summary.get_similler_word()
     split_dict = self.wiki_vector_summary.get_split_dict()
     for k, v in split_dict.items():
         fo = open(APP_ROOT + "/../../Data/wn_summary_all/" + k + ".txt",
                   'w')
         sys.stdout = fo
         print(v)
         fo.close()
         sys.stdout = sys.__stdout__
     class_average_vector = self.wiki_vector_summary.get_wiki_average_vector(
     )
     for k, v in class_average_vector.items():
         fo = open(
             APP_ROOT + "/../../Data/wn_summary_all_class_average/" + k +
             ".txt_vector.txt", 'w')
         sys.stdout = fo
         print(v)
         fo.close()
         sys.stdout = sys.__stdout__
class Test_WikiVectorSummary(unittest.TestCase):
    """Test wiki Vector class.

    """
    def setUp(self):
        """
        setting initial paramater
        Args:
            data: test file name
            split_module: setting the split_module instance
        """
        wiki_vector_file_name = APP_ROOT + '/../../Data/jawiki_vector/jawiki_vector_delete_first.txt'
        self.word_net_file_name = APP_ROOT + '/../../Data/wnjpn-all.tab'
        # wiki_vector_file_name = APP_ROOT + '/../../Data/jawiki_vector/jawiki_vector_part.txt'
        # self.word_net_file_name = APP_ROOT + '/../../Data/wnjpn-all_part.tab'
        self.input_module = InputFile(wiki_vector_file_name)

    def test_summary_class(self):
        """
        test make summary dict
        """
        self.input_module.input_fast_large_file()
        wiki_vector = self.input_module.get_vector()
        self.input_module = InputFile(self.word_net_file_name)
        self.input_module.input_special_format_file("\t")
        test_data = self.input_module.get_file_data()
        self.split_synonym_class = SplitSynonymClass(test_data)
        self.split_synonym_class.make_dict()
        # test all dict
        all_dict = self.split_synonym_class.get_all_dict()
        # test split dict
        split_dict = self.split_synonym_class.get_split_dict()
        self.wiki_vector_summary = WikiVectorSummaryCython(
            all_dict, split_dict, wiki_vector)
        self.wiki_vector_summary.get_similler_word()
        split_dict = self.wiki_vector_summary.get_split_dict()
        for k, v in split_dict.items():
            fo = open(APP_ROOT + "/../../Data/wn_summary_all/" + k + ".txt",
                      'w')
            sys.stdout = fo
            print(v)
            fo.close()
            sys.stdout = sys.__stdout__
        class_average_vector = self.wiki_vector_summary.get_wiki_average_vector(
        )
        for k, v in class_average_vector.items():
            fo = open(
                APP_ROOT + "/../../Data/wn_summary_all_class_average/" + k +
                ".txt_vector.txt", 'w')
            sys.stdout = fo
            print(v)
            fo.close()
            sys.stdout = sys.__stdout__
class Test_WikiVectorSummary(unittest.TestCase):
    """Test wiki Vector class.

    """
    def setUp(self):
        """
        setting initial paramater
        Args:
            data: test file name
            split_module: setting the split_module instance
        """
        wiki_vector_file_name = APP_ROOT + '/../../Data/jawiki_vector/jawiki_vector_delete_first.txt'
        self.word_net_file_name = APP_ROOT + '/../../Data/wnjpn-all.tab'
        # wiki_vector_file_name = APP_ROOT + '/../../Data/jawiki_vector/jawiki_vector_part.txt'
        # self.word_net_file_name = APP_ROOT + '/../../Data/wnjpn-all_part.tab'
        self.input_module = InputFile(wiki_vector_file_name)

    def test_summary_class(self):
        """
        test make summary dict
        """
        self.input_module.input_fast_large_file()
        wiki_vector = self.input_module.get_vector()
        self.input_module = InputFile(self.word_net_file_name)
        self.input_module.input_special_format_file("\t")
        test_data = self.input_module.get_file_data()
        self.split_synonym_class = SplitSynonymClass(test_data)
        self.split_synonym_class.make_dict()
        # test all dict
        all_dict = self.split_synonym_class.get_all_dict()
        # test split dict
        split_dict = self.split_synonym_class.get_split_dict()
        self.wiki_vector_summary = WikiVectorSummaryCython(all_dict, split_dict, wiki_vector)
        self.wiki_vector_summary.get_similler_word()
        split_dict = self.wiki_vector_summary.get_split_dict()
        for k, v in split_dict.items():
            fo = open(APP_ROOT + "/../../Data/wn_summary_all/" + k + ".txt", 'w')
            sys.stdout = fo
            print(v)
            fo.close()
            sys.stdout = sys.__stdout__
        class_average_vector = self.wiki_vector_summary.get_wiki_average_vector()
        for k, v in class_average_vector.items():
            fo = open(APP_ROOT + "/../../Data/wn_summary_all_class_average/" + k + ".txt_vector.txt", 'w')
            sys.stdout = fo
            print(v)
            fo.close()
            sys.stdout = sys.__stdout__
示例#15
0
import sky_area
from input_file import InputFile
from diagram import Diagram
from coord_calc import CoordCalc

f = InputFile('stardata.csv')

area = sky_area.SKY_AREA_ORION
star_data_list = f.get_stars(area)

cc = CoordCalc(star_data_list, area, 500)
cc.process()

d = Diagram('My Star Map', area, star_data_list)
list(map(d.add_curve, cc.calc_curves()))
d.render_svg('star-chart.svg')
示例#16
0
 def test_make_similarity_word(self):
     """
     make similarity word
     """
     wiki_vector_file_name = APP_ROOT + '/../data/jawiki_vector_delete_first_utf8.txt'
     self.input_module = InputFile(wiki_vector_file_name)
     self.input_module.input_fast_large_file()
     wiki_vector = self.input_module.get_vector()
     self.input_module = InputFile(self.input_ann_list)
     self.input_module.input_list(self.input_dir)
     self.ann_list = self.input_module.get_ann_list()
     self.input_module = InputFile(self.input_twitter_data)
     self.input_module.input_special_format_file()
     self.twitter_list = self.input_module.get_file_data()
     self.get_similarity_word = GetSimillairWord(self.twitter_list,
                                                 self.ann_list, wiki_vector)
     self.get_similarity_word.get_proper_noun_word()
     self.get_similarity_word.get_simillair_word()
     result = self.get_similarity_word.twitter_proper_noun_list
     print(result)
     print(len(result))
     check_result = [
         '2', '1', '2', '3', '1', '学生', '日', '日', '3', '5', '月', '日', '日',
         '都', '秋田', '人類', '中国', '餅', '中', '1', '柏', '猫', '日', '日', '3', '鶴',
         '百', '春日', '顔', '日', '月', '尾', '日', '羽', '鶴', '目', '木', '大和', '奈良',
         '夢', '髭', '腰', '日', 'ナイン', '日', '髪', '日', '赤', '秋', '春日', '猫', '明',
         '月', '目', '日', '月', '日', 'ゴルフ', 'タリーズコーヒー', '腹', '腹', '顔', '1',
         '朝', '竹', '枝', '二つ', '春日', '赤', '稲', '口', '日', 'ふん', 'チャーハン', '朝',
         '水泳', '浴衣', '浴衣', '豚', '猫', '日', '中', '竹', '1', '5', '上根', '尾',
         '秋', '月', '袖', '日', '竹', '月', '根', '腰', '腰', '野球', 'ゴジラ', '野球',
         '白', '道', '小指', '眉毛', '大伴', '日', '王', 'カクテル', 'ありがとう', '豚', '病院',
         '春日', 'カニ', '水泳', 'ありがとう', 'さき', 'イカ', '日', '豚', '骨', '金', '茶色',
         '手', 'イカ', 'いちご', '顔', 'ゴジラ', '赤', '柏', '夢', '豚', '五月', '38', '中',
         '日', 'バター', 'ライス', '秋', '中', '五月', 'ファン', '天の川', 'パン', '名古屋',
         'ビール', '日焼け', 'カエル', '日本語', '裕', 'ピンク', '静岡', 'ありがとう', 'パン',
         'コカイン', 'ラーメン', '野球', 'おにぎり', '1', '武田', '日', 'アイドル', 'ふん', 'ふん',
         '朝日新聞', '学生', 'イカ', 'シンガーソングライター', '人間', '人間', '腰', 'ラーメン', 'パン',
         '安倍', 'ありがとう', 'ありがとう', 'ありがとう', 'ありがとう', 'たまき', '高', '中', 'ありがとう',
         '月', 'ありがとう', 'ライバル', 'オリックス', 'ありがとう', 'ありがとう', 'ライス', '口',
         'アイドル', '星条旗', '音楽', 'メジャー'
     ]
     self.assertEqual(result, check_result)
     result = self.get_similarity_word.twitter_proper_noun_wiki_vector_dict
     print(result)
     print(len(result))
     check_result = {
         '名古屋': [
             '札幌', '広島', '東京', '神戸', '関西', '浜松', '岐阜', '大阪', '北九州', '横浜',
             '金沢', '福岡'
         ],
         '腰': [
             '膝', '踵', '肩', '臀部', '膝', '踵', '肩', '臀部', '膝', '踵', '肩', '臀部',
             '膝', '踵', '肩', '臀部'
         ],
         '人間': ['生き物', '生き物'],
         'ビール': [
             'ラガー_(ビール)', 'シードル', 'コーヒー', 'アイスクリーム', '蒸留酒', 'ワイン',
             'エール_(ビール)', 'ウイスキー', 'コーラ_(飲料)', '紅茶', 'チョコレート'
         ],
         '百': ['千', '十'],
         '奈良': ['和歌山'],
         '餅': ['玉子', '団子', '神酒', '徳利', '赤飯', 'アズキ', '粥', '饅頭'],
         'ラーメン': [
             '讃岐うどん', '日本料理', '味噌ラーメン', 'うどん', '焼き鳥', '中華料理', '蕎麦', '和食',
             'つけ麺', 'カレーライス', 'たこ焼き', 'おでん', '寿司', '麺', 'すき焼き', 'お好み焼き',
             '餃子', '讃岐うどん', '日本料理', '味噌ラーメン', 'うどん', '焼き鳥', '中華料理', '蕎麦',
             '和食', 'つけ麺', 'カレーライス', 'たこ焼き', 'おでん', '寿司', '麺', 'すき焼き',
             'お好み焼き', '餃子'
         ],
         'シンガーソングライター': [
             'フォークシンガー', 'MC_(ヒップホップ)', '演歌歌手', '音楽グループ', 'ロックバンド',
             '音楽プロデューサー', '作詞家'
         ],
         '赤': [
             '赤色', '藍色', '青', '緑色', '黒', '白', '紫', '朱色', '黄色', '青色', '緑',
             '赤色', '藍色', '青', '緑色', '黒', '白', '紫', '朱色', '黄色', '青色', '緑',
             '赤色', '藍色', '青', '緑色', '黒', '白', '紫', '朱色', '黄色', '青色', '緑'
         ],
         'バター': [
             '蕎麦粉', '米飯', 'プディング', '揚げ物', '出汁', '味噌汁', 'マーガリン', '肉類', 'バンズ',
             'オートミール', '紅しょうが', 'ポン酢', 'ゴマ', '鶏卵', '焼く_(調理)', 'ニンニク',
             'サラダドレッシング', '澄ましバター', '加糖練乳', 'オレンジジュース', 'オリーブ・オイル',
             'スモークサーモン', 'うるち米', 'スポンジケーキ', 'タマネギ', 'キュウリ', '酢漬け', 'だし汁',
             'コショウ', '煮汁', 'カスタード', 'ルー_(食品)', 'マヨネーズ', 'ココア', 'コーンスターチ',
             'ゆで卵', 'シナモン', 'クラッカー_(食品)', '唐辛子', '燻製', '塩味', '食用油', 'コーヒー豆',
             'サラダ', '牛乳', 'コンソメ', '煮物', 'ペイストリー', 'ウスターソース', 'サラダ油', '水飴',
             '黒砂糖', '牛肉', '上白糖', 'ソテー', 'シリアル食品', '重曹', 'カスタードクリーム', 'スープ',
             'クレープ', 'アーモンド', 'トマトソース', '餡', 'ショウガ', 'ラッカセイ', 'ミートボール',
             'シャーベット', 'ザワークラウト', 'ベシャメルソース', 'グレイビーソース', '植物油', 'トウガラシ',
             'チリソース', 'クリームチーズ', 'ヨーグルト', 'マリネ', '目玉焼き', 'ひき肉', 'キャベツ',
             'サルサ_(料理)', '生クリーム', '香辛料', 'ホットケーキ', 'フライドポテト', '酢', 'セモリナ',
             'ソーセージ', 'ヒヨコマメ', '蜂蜜', 'メレンゲ', '大根おろし', '羊肉', 'きな粉', '糖蜜',
             'シチュー', 'ソース_(調味料)', 'サンバル', '砂糖', 'パセリ', 'クリーム_(食品)',
             'スパゲッティ', 'サワークリーム', '豆乳', 'カッテージチーズ', 'パルミジャーノ・レッジャーノ',
             'ベーキングパウダー', 'ピュレ', 'トルティーヤ', 'チーズ', '果汁', 'ドライフルーツ', 'からし',
             '薄切り', 'サンドイッチ', 'プロシュット', 'オリーブオイル', 'スクランブルエッグ', 'マッシュポテト',
             'グラニュー糖', 'ごま油', 'フィリング', '豚肉', 'フリホレス', 'アイスクリーム', 'パン生地',
             'みじん切り', 'レーズン', '片栗粉', 'ブランデー', '調味料', '油揚げ', 'ポテトサラダ',
             'ビスケット', '米粉', 'パプリカ', '仔牛肉', '煮込み料理', 'ライ麦パン', 'メープルシロップ',
             '穀粉', '薬味', 'パスタ', '煮込み', 'ピーナッツバター', '上新粉', 'ピクルス', '酒粕',
             'ワカモレ', 'マスタード', '鶏肉', 'ココナッツミルク', 'ココアパウダー', '汁物', 'マシュマロ',
             'ジャガイモ', 'ケチャップ', 'もち米', '小麦粉', 'サラミ', '挽肉', '種実類', 'フライ_(料理)',
             'シロップ', 'チョコレート', 'ニンジン', 'ヌガー', '鰹節'
         ],
         'タリーズコーヒー': [
             'ニトリ', 'モスバーガー', 'ピザハット', 'スポーツオーソリティ', 'ベイシア', 'ヤオコー',
             'サブウェイ', '成城石井', 'オークワ', 'ドトールコーヒー', 'ミドリ電化', 'ケーズホールディングス',
             'コーナン'
         ],
         '白': ['青', '黒', '赤'],
         '鶴': ['梅', '梅'],
         '二つ': ['五つ', '2つ', '三つ', 'ふたつ'],
         '浴衣': [
             'タキシード', '白無垢', '着物', '喪服', '普段着', 'タキシード', '白無垢', '着物', '喪服',
             '普段着'
         ],
         '竹': ['松', '柳', '松', '柳', '松', '柳'],
         'カエル': ['タコ', 'ワニ', 'カブトムシ', 'ヘビ'],
         'ピンク': ['ピンク色', '桃色', 'パープル'],
         '野球': ['ラグビー', 'ラグビー', 'ラグビー'],
         '髭': ['あごひげ', 'ヒゲ', '口髭', '髪の毛', '口ひげ', 'ひげ', '髪'],
         '小指': ['左足', '指', '中指', '親指', '人差し指', '薬指', '手首'],
         '武田':
         ['長宗我部', '毛利', '今川', '朝倉', '織田', '上杉', '北条', '武田氏', '大友', '島津'],
         'ふん': ['ぺん', 'ぎゅう', 'ぺん', 'ぎゅう', 'ぺん', 'ぎゅう'],
         'オリックス': [
             '楽天', '日本ハム', 'ロッテ', '千葉ロッテマリーンズ', '読売ジャイアンツ', 'DeNA',
             '北海道日本ハムファイターズ', '広島東洋カープ', 'オリックスバファローズ', '巨人',
             '福岡ソフトバンクホークス', '阪神', 'タイガース', '東北楽天ゴールデンイーグルス', '大阪近鉄バファローズ',
             '千葉ロッテ', '阪神タイガース', '横浜ベイスターズ', '西武', '中日ドラゴンズ', 'ヤクルト',
             '東京ヤクルトスワローズ', '埼玉西武ライオンズ', '横浜DeNAベイスターズ', '中日',
             'オリックス・バファローズ', 'ソフトバンク'
         ],
         'おにぎり': [
             '煮干し', '刺身', '惣菜', 'カップラーメン', 'ラー油', '米飯', '揚げ物', '味噌汁',
             '紅しょうが', '天ぷら', '麺類', 'から揚げ', '定食', '炒飯', '汁粉', '茶漬け', 'うどん',
             '食パン', '煮物', '雑煮', '抹茶', 'ウスターソース', '吸い物', 'カステラ', '中華まん',
             '薩摩揚げ', '餡', 'たい焼き', 'あられ_(菓子)', 'ミートボール', 'ちらし寿司', 'インスタント食品',
             'チャーシュー', '目玉焼き', '焼きそば', '梅干し', '豆腐', '求肥', '稲荷寿司', 'キムチ',
             '卵焼き', '大根おろし', '蒲鉾', 'ハンバーガー', '鍋料理', '佃煮', 'コロッケ', 'サンドイッチ',
             '煎餅', 'かき氷', '鍋物', 'しゃぶしゃぶ', 'カレーライス', '油揚げ', 'おでん', '沢庵漬け',
             'チャーハン', '薬味', '削り節', 'ソフトクリーム', 'ご飯', 'すき焼き', '汁物', '丼物',
             '饅頭', '竹輪', '豚カツ', '鰹節'
         ],
         '1': [
             '6', '7', '2', '3', '4', '9', '8', '5', '0', '6', '7', '2',
             '3', '4', '9', '8', '5', '0', '6', '7', '2', '3', '4', '9',
             '8', '5', '0', '6', '7', '2', '3', '4', '9', '8', '5', '0',
             '6', '7', '2', '3', '4', '9', '8', '5', '0', '6', '7', '2',
             '3', '4', '9', '8', '5', '0'
         ],
         'ゴジラ': [
             'ゴジラ_(架空の怪獣)', 'ガメラ', 'ゴジラ_(1954年の映画)', 'ゴジラ_(架空の怪獣)', 'ガメラ',
             'ゴジラ_(1954年の映画)'
         ],
         '38': [
             '398', 'Vireo', 'ヒノオビクラゲ属', '363', '728', 'Q型小惑星', 'Numenius',
             'practische', '119', 'エメリ・ドレフェス', '727', 'orotate', 'Zink',
             'Mingo', 'アーカンソー・レイザーバックス', '778', '195', '2013', 'くぼたみか',
             '327', '稲垣定計', 'エレグア', 'エチレン酢酸ビニル液', '板倉昌信', 'monomethyl',
             'アオグラ', '392', '162', '288', '384', '729', '123', 'abolition',
             '717', '1008', 'Deutzia', '741', '386', '167', 'postes',
             'Threadfin', '藤本貴之', '286', '212', '84', 'アルビオリックス',
             'Bluefish', 'コカ・コーラ・フィールド', '439', 'クリティア', '420', '豪華一代娘',
             '169', '211', '302', '酒井忠寧', '320', '443', 'bhāvayato',
             '武内こずえ', '335', '504', '安食西', 'ジャンヌ・ド・ブルボン=ヴァンドーム', 'Searaven',
             '五蘊盛苦', '521', '218', 'Fanshaw', 'Liparis', '畳製作技能士', '503',
             '沖縄県立森川特別支援学校', '164', 'ẓam', 'Crevalle', '319', '渡辺親綱', '282',
             '変態王子と笑わない猫。', 'イジゲンセカイ', 'methylcoclaurine', '軍歴証明書',
             'Coptis', '362', 'Grunion', '毎日が夏休み', 'afpbb', '蕭宝義', 'ゾガン県',
             '渡辺登綱', 'Gurnard', '1729', 'トックリラン', '988', 'ガスアンドパワーインベストメント',
             'フランチェスコ3世・ゴンザーガ', '下平尾', 'coniferyl', 'trimethyl', '味噌蔵',
             '明日に向って走れ', 'テキサス州選出のアメリカ合衆国上院議員', 'グッド・アズ・アイ・ビーン・トゥ・ユー',
             'Sterlet', '恋愛日記', '731', '324', 'クレージーの殴り込み清水港', '1728',
             '287', 'ニット製品製造技能士', '348', '人斬り龍馬', '畑満秀', 'ファスン', '719',
             '56', '751', 'Puffer', 'Jallao', 'jwest', '岐阜県道358号井尻八百津線',
             '122', '┐\u3000\u3000\u3000\u3000\u3000┌', '285', '322', '217',
             '259', '487', 'ルッゲル', 'サラシア属', '日野資邦', '2012年宜野湾市長選挙',
             'Tirante', 'Bowfin', 'Ronquil', '185', '330', '鳥居忠瞭', '稲葉正益',
             'Blenny', 'MACCS', '343', '日野「君が代」伴奏拒否訴訟', '321', 'Tarpon',
             '44', 'Seadevil', '大日本帝国憲法第73条', 'Gudgeon', '946', '海雲寺',
             '258', '954', '49', 'ムリフェン', '345', '276'
         ],
         '王': ['国王'],
         '2': [
             '6', '7', '3', '1', '4', '9', '8', '5', '0', '6', '7', '3',
             '1', '4', '9', '8', '5', '0'
         ],
         '五月': [
             '七月', '十月', '六月', '十二月', '四月', '九月', '八月', '二月', '三月', '十一月',
             '七月', '十月', '六月', '十二月', '四月', '九月', '八月', '二月', '三月', '十一月'
         ],
         '枝': ['葉', '枝は', '茎'],
         '日本語': ['英語', '原語'],
         'ありがとう': [
             'みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん', 'みなさん',
             'みなさん', 'みなさん', 'みなさん'
         ],
         '骨': ['頭蓋骨'],
         '猫': [
             'ネコ', '仔猫', '小鳥', 'ネズミ', 'ネコ', '仔猫', '小鳥', 'ネズミ', 'ネコ', '仔猫',
             '小鳥', 'ネズミ'
         ],
         'コカイン': [
             '覚醒剤', '薬物', '覚せい剤', 'LSD_(薬物)', '大麻', 'ヘロイン', 'アンフェタミン',
             'マリファナ', 'モルヒネ', 'メタンフェタミン'
         ],
         '5': [
             '6', '7', '2', '3', '1', '4', '9', '8', '0', '6', '7', '2',
             '3', '1', '4', '9', '8', '0'
         ],
         '3': [
             '6', '7', '2', '1', '4', '9', '8', '5', '0', '6', '7', '2',
             '1', '4', '9', '8', '5', '0', '6', '7', '2', '1', '4', '9',
             '8', '5', '0'
         ],
         '豚': [
             '羊', '鶏', '牛', 'ブタ', 'ヤギ', 'ヒツジ', 'ニワトリ', 'ウシ', '山羊', '羊', '鶏',
             '牛', 'ブタ', 'ヤギ', 'ヒツジ', 'ニワトリ', 'ウシ', '山羊', '羊', '鶏', '牛',
             'ブタ', 'ヤギ', 'ヒツジ', 'ニワトリ', 'ウシ', '山羊', '羊', '鶏', '牛', 'ブタ',
             'ヤギ', 'ヒツジ', 'ニワトリ', 'ウシ', '山羊'
         ],
         '秋': ['夏', '春', '夏', '春', '夏', '春'],
         '学生': ['生徒', '大学生', '生徒', '大学生'],
         '眉毛': ['あごひげ', '頭髪', '髪の毛', '白目', '口ひげ', '前髪'],
         'チャーハン': [
             '煮干し', 'ミルクセーキ', '惣菜', 'ラー油', '唐揚げ', '米飯', 'グラタン', 'スパゲティ',
             '揚げ物', '味噌汁', '紅しょうが', 'ナポリタン', 'すまし汁', '海鮮', '天ぷら', '焼く_(調理)',
             'サラダドレッシング', '麺類', '叉焼', 'かりんとう', 'タコス', '定食', '炒飯', '汁粉',
             '塩味', '煮魚', 'うどん', 'サラダ', 'オムライス', 'ドミグラスソース', 'コンソメ', '煮物',
             'カツ丼', '吸い物', 'ソテー', '照り焼き', '煮付け', 'クレープ', '中華麺', 'ハンバーグ',
             'ミートボール', 'ちらし寿司', 'インスタント食品', 'おにぎり', '炒め物', 'チャーシュー', 'ピラフ',
             '目玉焼き', '焼きそば', 'ビーフン', '豆腐', 'たぬき_(麺類)', 'フライドポテト', 'キムチ',
             '卵焼き', '大根おろし', '前菜', '煮つけ', 'シチュー', 'サンバル', 'ハンバーガー',
             'スパゲッティ', 'チゲ', 'カツレツ', 'コロッケ', '点心', '雑炊', '春巻き', 'サンドイッチ',
             'ケバブ', '麻婆豆腐', 'マッシュポテト', '豚骨', '鍋物', 'しゃぶしゃぶ', 'カレーライス',
             '油揚げ', '沢庵漬け', '煮込み料理', 'がんもどき', '煮込み', 'オードブル', 'あんかけ',
             'ベトナム料理', 'ご飯', 'ムニエル', 'すき焼き', '汁物', '餃子', 'オムレツ', 'ケチャップ',
             'ドライカレー', 'フライ_(料理)', '炊き込みご飯', '豚カツ', 'シュークリーム', 'カスタードプディング'
         ],
         '髪': ['黒髪', '髪型', '長髪', '頭髪', '髭', '髪の毛', '金髪', '前髪'],
         '中国': ['台湾', '中華人民共和国', '朝鮮', '韓国'],
         '朝日新聞': [
             '夕刊フジ', '産経新聞', '同紙', '朝鮮日報', '日本経済新聞', '朝日新聞社', '神戸新聞',
             '週刊朝日', '東京スポーツ', '大阪朝日新聞', '中国新聞', '毎日新聞', '読売新聞', '日刊スポーツ',
             '東京新聞', '中日新聞', '共同通信', '朝刊', '北海道新聞', '週刊文春'
         ],
         '茶色': [
             '褐色', '黄土色', '白色', 'オリーブ色', '赤褐色', '地色', '黒色', 'ベージュ', '黒褐色',
             '深緑', '水色', '赤色', '藍色', '緑色', '銀灰色', '灰色', '橙色', 'オレンジ色',
             'ピンク色', '乳白色', '紫色', 'クリーム色', '灰白色', '茶褐色', '銀色', '桃色', '朱色',
             '黄色', '青色', '薄茶', '栗色'
         ],
         'カニ': [
             'タコ', 'ヒトデ', 'ヒラメ', 'ドジョウ', 'アミ_(甲殻類)', 'カジキ', 'イセエビ',
             'カタクチイワシ', 'ナメクジ', 'スズキ_(魚)', 'タラバガニ', 'アンコウ', 'ナマコ', '魚',
             '硬骨魚', 'トビウオ', 'シャコ', 'ウニ', 'シラウオ', 'サンマ', '二枚貝', 'タチウオ',
             'カイアシ類', 'ウツボ', 'オキアミ', '多毛類', 'カレイ', 'ハゼ', 'アナゴ', 'エビ', '頭足類',
             'サメ', '小魚', 'ザリガニ'
         ],
         'たまき': [
             'やまかわ', 'ようへい', 'うの', 'りさ', 'ひでみ', 'あいはら', 'むらせ', 'かおる', 'まりこ',
             'あきもと', 'みさ', 'ひろき', 'いわお', 'やすこ', 'はやせ', 'のなか', 'まさえ', 'しまだ',
             'さえき', 'かのう', 'みつる', 'ゆうこ', 'あゆむ', 'えんどう', 'たかはし', 'たいぞう',
             'みはる', 'あさい', 'きど', 'しんたろう', 'みずき', 'いぬい', 'まいこ', 'えり', 'なるみ',
             'かたおか', 'みづき', 'まさこ', 'きぬこ', 'ふかみ', 'しょうぞう', 'さおり', 'かめい',
             'としえ', 'みほ', 'はるこ', 'しゅうじ', 'ゆうき', 'しおん', 'たにぐち', 'じゅんぞう',
             'たつみ', 'ゆきえ', 'かつみ', 'あらき', 'ゆみこ', 'しょうこ', 'るみ', 'もちづき', 'みつこ',
             'みちこ', 'やまぎし', 'なおこ', 'きたがわ', 'ゆうじ', 'あけみ', 'まゆずみ', 'いわもと',
             'みつお', 'まつばら', 'こいけ', 'はやま', 'わたぬき', 'やました', 'いなだ', 'はしもと',
             'はやみ', 'ふじなみ', 'かわかみ', 'かわい', 'よしえ', 'とりい', 'かおり', 'まゆこ',
             'こすぎ', 'いわさき', 'ごとう', 'あかね', 'みき', 'いしだ', 'かわぐち', 'くわばら',
             'おおば', 'りこ', 'よしの', 'ちえこ', 'りか', 'ひろこ', 'みうら', 'のぶこ', 'しみず',
             'たちばな', 'はるみ', 'おがわ', 'ねもと', 'まゆ', 'さとう', 'かねこ', 'ちさ', 'ほんま',
             'ななえ', 'ふみこ', 'ちよ', 'みさこ', 'あみ', 'くろだ', 'たかむら', 'ゆきの', 'あやこ',
             'ざわ', 'ちかこ', 'いさむ', 'まりえ', 'なおみ', 'りえ', 'ともこ', 'ひさこ', 'よりこ',
             'まみ', 'えりか', 'なぎ', 'こうへい', 'ちさと', 'みちお', 'しゅうへい', 'ひでこ', 'しげこ',
             'かざま', 'まなべ', 'くろき', 'ももこ', 'いりえ', 'とおる', 'かわばた', 'よしざわ',
             'すぎはら', 'ひろみ', 'たかこ', 'かずき', 'いくこ', 'さゆり', 'えつこ', 'つよし', 'まきこ',
             'なつこ', 'けんじ', 'ひろふみ', 'ひろえ', 'あゆ', 'あきの', 'みつはし', 'やまだ', 'しげる',
             'こじま', 'おぐら', 'としこ', 'くみこ', 'ますみ', 'こうた', 'れいこ', 'むつみ', 'むろい',
             'せつこ', 'めぐむ', 'なかにし', 'あやの', 'ひろの', 'みつき', 'けいこ', 'ゆきこ', 'いくみ',
             'さなえ', 'ふじい', 'すみこ', 'たかの', 'ようこ', 'あきと', 'あおい', 'いのうえ',
             'あいかわ', 'むとう', 'よしい', 'あきこ', 'あさみ', 'さとる', 'おざき', 'きみこ', 'かずこ',
             'まつうら', 'なつみ', 'こんどう', 'はるの', 'おおもり', 'じゅり', 'よしこ', 'かづ',
             'すずき', 'さなだ', 'のりこ', 'やまもと', 'ほなみ', 'あつみ', 'おくやま', 'たきぐち',
             'いしばし', 'けいすけ', 'あさお', 'さとみ', 'ゆみ', 'あいか', 'なつめ', 'かずみ', 'ちはる',
             'せきぐち', 'はづき', 'ともみ', 'いぐち', 'てるこ', 'おおいし', 'しいな', 'あらい',
             'ゆりか', 'えいじ', 'えみ', 'あつし', 'るりこ', 'ふるた', 'けんと', 'まさゆき', 'としのり',
             'れいか', 'さかまき', 'じゅんこ', 'あおやま', 'たまい', 'あおき', 'みよこ', 'ひかる',
             'ゆりえ', 'さちこ', 'てるみ', 'きょうこ', 'まつい', 'のぶとし', 'さとこ', 'きみえ',
             'さおとめ', 'かずえ', 'なかい', 'あさこ', 'ひとみ', 'かれん', 'ふるや', 'すえなが',
             'まゆみ', 'まなみ', 'りょうこ', 'あや', 'はしづめ', 'はせがわ', 'あきほ', 'ながや',
             'みさお', 'きんたろう', 'かとう', 'ささき', 'ひとし'
         ],
         '裕': ['浩', '朗', '佑', '圭', '肇', '淳', '宏', '晃', '潤', '裕之'],
         '大伴': ['宿禰'],
         '木': ['樫', '杉', '切り株', '松の木'],
         'さき': ['かしま'],
         '安倍': ['安倍晋三', '中曽根', '小泉', '小泉純一郎', '鳩山', '福田', '菅', '麻生'],
         'カクテル': ['ジン_(蒸留酒)', 'ブランデー', 'リキュール'],
         '星条旗': ['アメリカ合衆国の国旗'],
         '秋田': ['福島', '山形', '熊本', '新潟', '青森', '高知', '長野', '盛岡', '岩手'],
         'ゴルフ': ['ボウリング'],
         '静岡': [
             '愛知', '福島', '神奈川', '新潟', '浜松', '岐阜', '山梨', '長野', '茨城', '富山',
             '群馬'
         ]
     }
     self.assertEqual(result, check_result)
示例#17
0
def analyze_files(filepath: str, exclude: list, lazy: bool,
                  logger: logging.Logger) -> list:
    """Analyze files for vulnerabilities.

    Parameters
    ----------
    filepath : str
        Path where to find the file(s)
    exclude : list
        List of regular expressions to exclude in `path`
    lazy : bool
        Ignore mutually exclusive paths through methods
    logger : logging.Logger
        The logger to use for runtime output

    Returns
    -------
    list
        List of all the analyses
    """
    analyses = []
    rulesets = dict()
    # Detect files
    for filename in find_files(filepath, exclude=exclude):
        logger.info('Now processing "%s".', filename)
        input_file = InputFile(filename)
        # Prepare file for analysis
        input_file.detect_filetype()
        try:
            grammar_module = importlib.import_module(
                f'modules.{input_file.module}.grammar')
            grammar = grammar_module.Grammar(input_file)
            logger.info('Starting analysis for "%s".', input_file.path)
            ruleset = rulesets.get(input_file.module)
            if not ruleset:
                # Load new ruleset
                rulesets[input_file.module] = Ruleset(input_file.module)
                ruleset = rulesets[input_file.module]
            analysis = Analysis(grammar, ruleset)
            for method in analysis.methods:
                # Analyze method
                analysis.calculate_complexity(method)
                analysis.follow_variables(method)
                analysis.fix_object_names(method)
                all_sources = analysis.find_sources(method)
                all_sinks = analysis.find_sinks(method)
                all_sanitizers = analysis.find_sanitizers(method)
                if not lazy:
                    analysis.find_paths_through(method)
                else:
                    # Assume single path through method, ignore mutually exclusive paths
                    method.paths = [[(method.start, method.end)]]
                for path in method.paths:
                    # Analyze individual paths through the method
                    method.sources = copy(all_sources)
                    method.sinks = copy(all_sinks)
                    method.sanitizers = copy(all_sanitizers)
                    analysis.find_taints(method, path)
                if len(method.paths) > 1:
                    # We use multiple paths to better detect taints, but we still need all the
                    # sinks, so another round through the whole method is necessary here
                    method.sources = all_sources
                    method.sinks = all_sinks
                    method.sanitizers = all_sanitizers
                    taints = method.taints
                    analysis.find_taints(method, [(method.start, method.end)])
                    method.taints = taints
            analyses.append(analysis)
        except ModuleNotFoundError:
            logger.error('No grammar found for "%s".', input_file.module)
    return analyses
    parser.add_argument('--wiki_vector', '-wv', default=APP_ROOT + '/data/jawiki_vector_delete_first_utf8.txt',
                        help='set wiki_vector')
    parser.add_argument('--ann_list', '-an', default=APP_ROOT + '/data/jawikify_20160310/ann_list',
                        help='set annon list')
    parser.add_argument('--twitter_data', '-tw', default=APP_ROOT + '/data/twitter_data.txt',
                        help='set twitter data')
    parser.add_argument('--input_dir', '-i', default=APP_ROOT + '/data/jawikify_20160310/',
                        help='set input dir')
    args = parser.parse_args()
    wiki_vector_file_name = args.wiki_vector
    input_ann_list = args.ann_list
    input_twitter_data = args.twitter_data
    input_dir = args.input_dir

    # GEt wiki Vector
    input_module = InputFile(wiki_vector_file_name)
    input_module.input_fast_large_file()
    wiki_vector = input_module.get_vector()
    # Get Wikificatation
    input_module = InputFile(input_ann_list)
    input_module.input_list(input_dir)
    ann_list = input_module.get_ann_list()

    # get Twitter data
    input_module = InputFile(input_twitter_data)
    input_module.input_special_format_file()
    twitter_list = input_module.get_file_data()

    # extract Proper noum int he twitter data
    get_similarity_word = GetSimillairWord(twitter_list, ann_list, wiki_vector)
    get_similarity_word.get_proper_noun_word()