async def test_upload(http_client, scm): resp = await http_client.put( "/upload-report", query_string={"slug": "plone/guillotina", "branch": "master", "commit": "38432y"}, data=read_data("guillotina.cov"), ) assert resp.status_code == 200
async def test_upload_against_pr(http_client, scm, tasks): scm.get_pulls.return_value = [types.Pull(head="test-changes", base="master", id="1")] scm.get_pull_diff.return_value = """diff --git a/guillotina/addons.py b/guillotina/addons.py index 8ad9304b..de0e1d25 100644 --- a/guillotina/addons.py +++ b/guillotina/addons.py @@ -29,6 +29,7 @@ async def install(container, addon): await install(container, dependency) await apply_coroutine(handler.install, container, request) registry = task_vars.registry.get() + registry config = registry.for_interface(IAddons) config["enabled"] |= {addon} """ scm.create_check.return_value = "check" scm.create_comment.return_value = "comment" params = { "slug": "vangheem/guillotina", "branch": "test-changes", "commit": "59cc8f62c5e0d13a685bb3d388e8cb10669aebec", } resp = await http_client.put( "/upload-report", query_string=params, data=read_data("guillotina.pr"), ) assert resp.status_code == 200 await tasks.wait() resp = await http_client.get("/vangheem/repos/guillotina/pulls") assert resp.status_code == 200 assert len(resp.json()["result"]) == 1 resp = await http_client.get( "/vangheem/repos/guillotina/pulls/1/59cc8f62c5e0d13a685bb3d388e8cb10669aebec/report" ) assert resp.status_code == 200 assert resp.json()["commit_hash"] == "59cc8f62c5e0d13a685bb3d388e8cb10669aebec" resp = await http_client.get("/recent-pr-reports") assert resp.status_code == 200 assert len(resp.json()["result"]) == 1
def test_read_snd_and_hansard(): tr: Tag = BeautifulSoup(read_data("test_read_snd_and_hansard_tr_1.txt"), 'lxml').find('tr') r1 = BillProgress1House.read_snd_and_hansard(tr.find_all('td')[3]) r2 = BillProgress1House.read_snd_and_hansard(tr.find_all('td')[9]) assert r1.is_just() and r2.is_just()
from bs4 import BeautifulSoup from ausbills.json_encoder import * from tests.utils import read_data log = get_logger(__file__) be4_obj = BeautifulSoup(read_data("test_read_snd_and_hansard_tr_1.txt"), 'lxml') lots_of_tags = list(be4_obj.find_all()) def test_json_encode(): dumped = json.dumps(lots_of_tags[0], cls=AusBillsJsonEncoder) # log.warning(dumped) assert len(dumped) > 0 loaded = json.loads(dumped) assert '$bs4.tag' in loaded bs4_tag = loaded['$bs4.tag'] assert '$bytes' in bs4_tag assert len(bs4_tag['$bytes']) > 50