diff --git a/README.md b/README.md index 6e4a7d9..de2eea8 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,6 @@ We do not yet do summing of time per issue, but could with a fair amount of work In the meantime this can be done with a spreadsheet: ## Usage - For use with Forgejo Include your API token in .env as FORGEJO_API_TOKEN={token} - Token can be generated here if you do not have one: https://git.agaric.com/user/settings/applications @@ -25,10 +24,3 @@ python generate_issues.py FILE ``` The program outputs to 'modified_report.csv' - -## ⚠️ Warnings! ⚠️ - -This only parses three issues out of the harvest comment, if you have more issues in the comment it ignores them - -Until some fundamental issues are resolved regarding error handling when failing to connect to Forgejo or if a fetched issue returns 404 -this whole thing will quit on you in an unhelpful and frustrating manner. diff --git a/generate_issues.py b/generate_issues.py index d9c5153..1f9f41a 100644 --- a/generate_issues.py +++ b/generate_issues.py @@ -43,7 +43,8 @@ def get_issue_title_and_url(issue_number): issues_and_urls += [issue_title, issue_url] return [issue_title, issue_url] -def check_for_file(file): +def prompt_for_file(file): + file = input("Enter harvest report: ") if not os.path.exists(file): print("THAT FILE DOES NOT EXIST, EXITING PROGRAM") quit() diff --git a/tests.py b/tests.py index 5e6ade5..e081be7 100644 --- a/tests.py +++ b/tests.py @@ -1,47 +1,36 @@ import generate_issues import re - def test_split_issues_into_columns(): - issues_string = "Resolved Issue #679, #678 and Issue 677" + issues_string = 'Resolved Issue #363, #362 and Issue 361' issues = generate_issues.parse_notes_section(issues_string) - solution = { - "First Issue Title": "Update 'Same as mailing address' label in step 1 of client wizard", - "First Issue URL": "https://git.agaric.com/housingworks/app-housingworks-net/issues/679", - "Second Issue Title": "People filtering the programs listing by county can see which state the county is in", - "Second Issue URL": "https://git.agaric.com/housingworks/app-housingworks-net/issues/678", - "Third Issue Title": "Fatal error on viewing Client Households", - "Third Issue URL": "https://git.agaric.com/housingworks/app-housingworks-net/issues/677", - } + solution = {'First Issue Title': 'Little slow downs are happening - these often signal that the server memory is getting overwhelmed?', 'First Issue URL': 'https://git.agaric.com/housingworks/app-housingworks-net/issues/363', 'Second Issue Title': 'Little slow downs are happening - these often signal that the server memory is getting overwhelmed?', 'Second Issue URL': 'https://git.agaric.com/housingworks/app-housingworks-net/issues/363', 'Third Issue Title': 'the csv Importer has quit working on both the live and test sites???', 'Third Issue URL': 'https://git.agaric.com/housingworks/app-housingworks-net/issues/362'} - if generate_issues.split_issues_into_columns(issues) == solution: + if (generate_issues.split_issues_into_columns(issues) == solution): print("TEST SPLIT ISSUES INTO COLUMNS PASSED") else: print("TEST SPLIT ISSUES INTO COLUMNS FAILED") - def test_parse_notes_section(): - if generate_issues.parse_notes_section("Resolved Issue #4, #5 and Issue 6") == ["4","5","6"]: + if (generate_issues.parse_notes_section('Resolved Issue #4, #5 and Issue 6') == ['4', '5', '6']): print("TEST PARSE NOTES SECTION PASSED") else: print("TEST PARSE NOTES SECTION FAILED") - def test_get_issue_title_and_url(): solution = [ - "Update 'Same as mailing address' label in step 1 of client wizard", - "https://git.agaric.com/housingworks/app-housingworks-net/issues/679", + "Little slow downs are happening - these often signal that the server memory is getting overwhelmed?", + "https://git.agaric.com/housingworks/app-housingworks-net/issues/363" ] - if generate_issues.get_issue_title_and_url(679) == solution: + if generate_issues.get_issue_title_and_url(363) == solution: print("TEST GET ISSUE TITLE AND URL PASSED") else: print("TEST GET ISSUE TITLE AND URL FAILED") - def run_tests(): test_parse_notes_section() test_get_issue_title_and_url() test_split_issues_into_columns() - run_tests() +