def test_applies_pre_parse_filter(self): raise SkipTest self.server.db["parser_config"]["modules"][0]["pre-filters"] = [ {"type": "normal", "callable": upper_case_filter} ] sink = Parser(self.server) sink.message(FakeMessage()) assert sink.modules[0]["module"].pre_parse_string == "TEST MESSAGE"
def test_uses_default_config_with_wrong_results(self): raise SkipTest self.server.db.default_view_results = wrong_view_results self.server.db["parser_config"]["modules"][0]["default_config"] = \ default_config sink = Parser(self.server) sink.message(FakeMessage()) assert sink.modules[0]["module"].config == default_config["sentence"]
def test_doesnt_apply_hotfix_with_invalid_signature(self): raise SkipTest bad_signature = deepcopy(intermediate_filters_doc) bad_signature["payloads"]["habitat"]["filters"] \ ["intermediate"][0]["signature"] = "uuRHEgQmyaEUMHiAUenTHWSUK7Zn6C/VITY+2yH6/AVlOgArHX7LlvuifFO7ZO4EtgaiJJTJ3JwGBrrHvIv4bxD/dO76L6qkPWQWXwC+RAxu5yF0IwulTQK9Iyc902RCe9JPv1kc/hgLojzIVc4scggqtJmERoR5r9EUmya8FDE=" bad_signature_view_results = fake_couchdb.ViewResults({"value": None, "key": ["habitat", bad_signature["end"]], "doc": bad_signature}) self.server.db.default_view_results = bad_signature_view_results sink = Parser(self.server) sink.message(FakeMessage()) assert sink.modules[0]["module"].string == "test message"
def test_doesnt_apply_hotfix_without_certificate(self): raise SkipTest no_certificate = deepcopy(intermediate_filters_doc) del no_certificate["payloads"]["habitat"]["filters"] \ ["intermediate"][0]["certificate"] no_certificate_view_results = fake_couchdb.ViewResults({"value": None, "key": ["habitat", no_certificate["end"]], "doc": no_certificate}) self.server.db.default_view_results = no_certificate_view_results sink = Parser(self.server) sink.message(FakeMessage()) assert sink.modules[0]["module"].string == "test message"
def test_doesnt_read_certificate_files_with_path_components(self): raise SkipTest invalid_certfile = deepcopy(intermediate_filters_doc) f = invalid_certfile["payloads"]["habitat"]["filters"] \ ["intermediate"][0] f["certificate"] = "../certs/" + f["certificate"] invalid_certfile_view_results = \ fake_couchdb.ViewResults({"value": None, "key": ["habitat", invalid_certfile["end"]], "doc": invalid_certfile}) self.server.db.default_view_results = invalid_certfile_view_results sink = Parser(self.server) sink.message(FakeMessage()) assert sink.modules[0]["module"].string == "test message"
def test_applies_post_filter(self): raise SkipTest self.server.db.default_view_results = post_filter_view_results sink = Parser(self.server) sink.message(FakeMessage()) assert self.server.message.data["result"] == "config was like rad!"
def test_applies_intermediate_filter(self): raise SkipTest self.server.db.default_view_results = intermediate_filter_view_results sink = Parser(self.server) sink.message(FakeMessage()) assert sink.modules[0]["module"].string == "hotfix"
def test_doesnt_parse_when_config_has_wrong_protocol(self): raise SkipTest self.server.db.default_view_results = wrong_protocol_view_results sink = Parser(self.server) sink.message(FakeMessage()) assert self.server.message == None
def test_doesnt_parse_when_wrong_config_and_no_default_config_found(self): raise SkipTest self.server.db.default_view_results = wrong_view_results sink = Parser(self.server) sink.message(FakeMessage()) assert self.server.message == None