Skip to content

Instantly share code, notes, and snippets.

@rombr
rombr / test_endem.py
Created January 18, 2017 08:41
endem.su test task: tests
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
test_endem
----------------------------------
Tests for `endem` module.
"""
@rombr
rombr / cli.py
Created January 18, 2017 08:40
endem.su test task: CLI interface
# -*- coding: utf-8 -*-
import click
from endem import EmailSender
@click.command()
@click.option('--provider', default='gmail', help='SMTP provider.')
@click.option('--email', prompt='Your email',
@rombr
rombr / providers.yml
Created January 18, 2017 08:39
endem.su test task: providers config
---
gmail:
server: smtp.gmail.com
port: 587
tls: yes
yandex:
server: smtp.yandex.ru
port: 465
ssl: yes
@rombr
rombr / endem.py
Created January 18, 2017 08:37
endem.su test task: lib code
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
import os
import logging
import smtplib
from email.mime.text import MIMEText
import types
import re
@rombr
rombr / requirements_dev.txt
Created January 18, 2017 08:33
endem.su test task: requirements dev
-r requirements.txt
pip==9.0.1
bumpversion==0.5.3
wheel==0.29.0
watchdog==0.8.3
flake8==2.6.0
tox==2.3.1
coverage==4.1
Sphinx==1.4.8
@rombr
rombr / requirements.txt
Created January 18, 2017 08:32
endem.su test task: requirements
click==6.7
pyaml==16.12.2
markdown==2.6.7
@rombr
rombr / README.md
Created January 18, 2017 08:28
endem.su test task: Docs

endem-su-test-task

Установка

virtualenv env
source env/bin/activate
pip install -r requirements_dev.txt
@rombr
rombr / models.py
Created October 7, 2016 22:13
Ответ на тестовое задание https://gist.github.com/dmitry-mukhin/fbc28d3b75605d4dd528
# coding: utf-8
# Ответ на https://gist.github.com/dmitry-mukhin/fbc28d3b75605d4dd528
from collections import defaultdict
from django.db import models
class Item(models.Model):
# .....
@rombr
rombr / test_task.py
Created June 3, 2016 14:13
Gwheels test task
#!/usr/bin/env python2
# coding: utf-8
'''
Напишите функцию, получающую на входе строку,
содержащую математическое выражение в обратной польской нотации
(например, «5 8 3 + *»), и возвращающую
значение этого выражения (в примере — 55).
Run in shell:
$ ./test_task.py '5 8 3 + *'
@rombr
rombr / forms.py
Last active July 21, 2024 14:31
How to add custom fields order to WTForms
from collections import OrderedDict
# ...
class OrderFormMixin(object):
'''
To apply add to Meta 'order' iterable
'''
def __init__(self, *args, **kwargs):
super(OrderFormMixin, self).__init__(*args, **kwargs)