Skip to content
This repository was archived by the owner on Jan 23, 2019. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
dist
build
eggs
.eggs
include
parts
bin
var
Expand Down
4 changes: 3 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ python:
- "2.7"
- "3.2"
- "3.3"
- "3.4"
- "3.5"
# does not have headers provided, please ask https://launchpad.net/~pypy/+archive/ppa
# maintainers to fix their pypy-dev package.
- "pypy"
Expand All @@ -12,4 +14,4 @@ install:
# command to run tests
script:
- cd tests
- nosetests
- nosetests
23 changes: 14 additions & 9 deletions arnold/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,16 @@ class Terminator:
IGNORED_FILES = ["__init__"]

def __init__(self, args):
self.fake = getattr(args, 'fake', False)
self.count = getattr(args, 'count', 0)
self.folder = getattr(args, 'folder', None)
self.fake = args.get('fake', False)
self.count = args.get('count', 0)
self.folder = args.get('folder', None)

self.database = args.get('database', None)

if self.database is None:
self.prepare_config()
self.database = self.config.database

self.prepare_config()
self.database = self.config.database
self.prepare_model()

def prepare_config(self):
Expand Down Expand Up @@ -190,9 +194,10 @@ def status(args):


def init(args):
os.makedirs('{0}/migrations'.format(args.folder))
open('{0}/__init__.py'.format(args.folder), 'a').close()
open('{0}/migrations/__init__.py'.format(args.folder), 'a').close()
folder = args.get('folder')
os.makedirs('{0}/migrations'.format(folder))
open('{0}/__init__.py'.format(folder), 'a').close()
open('{0}/migrations/__init__.py'.format(folder), 'a').close()
return True


Expand Down Expand Up @@ -234,7 +239,7 @@ def parse_args(args):
'count', type=int, help='How many migrations to go down.'
)

return parser.parse_args(args)
return vars(parser.parse_args(args))

def main():
sys.argv.pop(0)
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

setup(
name='arnold',
version='0.4.1',
version='0.5.0',
description='Simple migrations for python ORMs',
long_description='',
keywords='python, peewee, migrations',
Expand Down
7 changes: 7 additions & 0 deletions tests/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,5 +126,12 @@ def test_init_creates_folders(self):
self.assertTrue(os.path.isfile('./test_config/__init__.py'))
self.assertTrue(os.path.isfile('./test_config/migrations/__init__.py'))

def test_database_arg_runs_up(self):
args = parse_args(['up', '1'])
args['database'] = db
termi = Terminator(args)
termi.perform_migrations('up')
self.assertTrue("basicmodel" in db.get_tables())

if __name__ == '__main__':
unittest.main()