Exemple #1
0
    def test_generate_gmail_filter_set(self):
        with open(os.path.join(os.path.dirname(__file__),
                               'data', 'user_recipe_set.yml')) as f:
            filter_set = generate_gmail_fitler_set(
                UserRecipeSet.wrap(yaml.load(f)),
                updated_timestamp=datetime.datetime(2014, 10, 27, 2, 20, 58)
            )
        with open(os.path.join(os.path.dirname(__file__),
                               'data', 'filters.xml')) as f:
            expected_xml = f.read()

        self.assertXmlEqual(filter_set.to_xml(pretty=True), expected_xml)
Exemple #2
0
    def test_generate_gmail_filter_set(self):
        with open(
                os.path.join(os.path.dirname(__file__), 'data',
                             'user_recipe_set.yml')) as f:
            filter_set = generate_gmail_fitler_set(
                UserRecipeSet.wrap(yaml.load(f)),
                updated_timestamp=datetime.datetime(2014, 10, 27, 2, 20, 58))
        with open(
                os.path.join(os.path.dirname(__file__), 'data',
                             'filters.xml')) as f:
            expected_xml = f.read()

        self.assertXmlEqual(filter_set.to_xml(pretty=True), expected_xml)
Exemple #3
0
def filters_xml():
    bottle.response.headers.update({
        'Content-Type': 'application/xml; charset="utf-8"',
        'Content-Disposition': 'attachment; filename="gmailFilters.xml"',
    })

    recipe_set_json = (
        bottle.request.json
        or json.loads(bottle.request.POST.get('recipeSet'))
    )
    user_recipe_set = UserRecipeSet.wrap(recipe_set_json)
    gmail_filter_set = generate_gmail_fitler_set(user_recipe_set)

    return gmail_filter_set.to_xml(pretty=True)
Exemple #4
0
def filters_json():
    filters_yml = app.config.get('gmailfilterrecipes.filters_yml')
    with open(filters_yml) as f:
        filters = yaml.load(f)
    user_recipe_set = UserRecipeSet.from_recipe_set(RecipeSet.wrap(filters))
    return json.dumps(user_recipe_set.to_json())