예제 #1
0
 def _build_sample_speech():
     minutes = TestGraphQLClient._build_sample_minutes()
     speech = Speech(None)
     speech.minutes_id = minutes.id
     speech.order_in_minutes = 1
     speech.id = idgen(speech)
     return speech
예제 #2
0
def build_minutes_activity(member_id, minutes_id, dt):
    activity = Activity(None)
    activity.member_id = member_id
    activity.minutes_id = minutes_id
    activity.datetime = to_neo4j_datetime(dt)
    activity.id = idgen(activity)
    return activity
예제 #3
0
def build_bill_action(bill_id, minutes_id, bill_action_type):
    bill_action = BillAction(None)
    bill_action.bill_id = bill_id
    bill_action.minutes_id = minutes_id
    bill_action.type = bill_action_type
    bill_action.id = idgen(bill_action)
    return bill_action
예제 #4
0
 def _build_sample_bill():
     bill = Bill(None)
     bill.name = '公文書等の管理に関する法律の一部を改正する法律案'
     bill.bill_number = '第195回衆法第4号'
     bill.invalid_field = 'このfieldはmerge_billに使われない'
     bill.submitted_date = _Neo4jDateTimeInput(year=2020, month=1, day=1)
     bill.id = idgen(bill)
     return bill
예제 #5
0
 def _build_sample_minutes():
     minutes = Minutes(None)
     minutes.name = '第201回国会衆議院環境委員会第4号'
     minutes.topics = ["天気について", "カレーライスの件"]
     minutes.start_date_time = _Neo4jDateTimeInput(year=2020,
                                                   month=1,
                                                   day=20)
     minutes.id = idgen(minutes)
     return minutes
예제 #6
0
def test_idgen():
    assert idgen('test') == 'str:CY9rzUYh03PK3k6DJie09g'
    assert idgen('test') == idgen('test')
    assert idgen('test') != idgen('test2')

    member = Member({'name': 'test'})
    assert idgen(member) == 'Member:CY9rzUYh03PK3k6DJie09g'

    timeline = Timeline(None)
    timeline.date = _Neo4jDateTimeInput(year=2020, month=2, day=20)
    assert idgen(timeline) == 'Timeline:20200220'
예제 #7
0
def main(fp):
    gql_client = GraphQLClient()
    df = pd.read_csv(fp)

    diets = []
    for _, row in df.iterrows():
        diet = Diet(None)
        diet.number = int(row['number'])
        diet.name = f'第{diet.number}回国会'
        diet.category = row['category']
        diet.start_date = to_neo4j_datetime(row['start_date'])
        diet.end_date = to_neo4j_datetime(row['end_date'])
        diet.id = idgen(diet)
        diets.append(diet)

    gql_client.bulk_merge(diets)
    LOGGER.info(f'merged {len(diets)} diets')
예제 #8
0
def build_member(name):
    member = Member(None)
    member.name = name
    member.id = idgen(member)
    return member
예제 #9
0
def build_committee(committee_name, house):
    committee = Committee(None)
    committee.name = committee_name
    committee.house = house
    committee.id = idgen(committee)
    return committee
예제 #10
0
def build_speech(minutes_id, order_in_minutes):
    speech = Speech(None)
    speech.minutes_id = minutes_id
    speech.order_in_minutes = order_in_minutes
    speech.id = idgen(speech)
    return speech
예제 #11
0
 def _build_sample_activity():
     activity = Activity(None)
     activity.member_id = 'Member:id'
     activity.datetime = _Neo4jDateTimeInput(year=2020, month=1, day=1)
     activity.id = idgen(activity)
     return activity
예제 #12
0
 def _build_sample_member():
     member = Member(None)
     member.name = 'ネコ・チャン'
     member.id = idgen(member)
     return member
예제 #13
0
 def _build_sample_timeline():
     timeline = Timeline(None)
     timeline.date = _Neo4jDateTimeInput(year=2020, month=1, day=1)
     timeline.id = idgen(timeline)
     return timeline
예제 #14
0
def build_gql_url(s3_url):
    url = Url({'url': s3_url, 'title': '自動文字起こし', 'domain': 'politylink.jp'})
    url.id = idgen(url)
    return url
예제 #15
0
 def _build_sample_news():
     news = News(None)
     news.url = 'https://www.nikkei.com/article/DGXMZO64119940S0A920C2000000/'
     news.id = idgen(news)
     return news
예제 #16
0
 def _build_sample_url():
     url = Url(None)
     url.url = 'http://www.shugiin.go.jp/internet/itdb_gian.nsf/html/gian/honbun/g19505004.htm'
     url.id = idgen(url)
     return url
예제 #17
0
def build_url(url, title):
    domain = urlparse(url).netloc.replace('www.', '')
    url = Url({'url': url, 'title': title, 'domain': domain})
    url.id = idgen(url)
    return url
예제 #18
0
def build_diet(number):
    diet = Diet(None)
    diet.number = number
    diet.id = idgen(diet)
    return diet
예제 #19
0
 def _build_sample_committee():
     committee = Committee(None)
     committee.name = '衆議院環境委員会'
     committee.topics = ['環境省の所管に属する事項']
     committee.id = idgen(committee)
     return committee
예제 #20
0
def test_idgen_fail():
    with pytest.raises(ValueError):
        idgen('')

    with pytest.raises(ValueError):
        idgen(dict())