Test for Single Logout Service
[cascardo/ipsilon.git] / Makefile
1 RPMBUILD = $(PWD)/dist/rpmbuild
2
3 all: lint pep8 test
4         echo "All tests passed"
5
6 lint:
7         # Analyze code
8         # don't show recommendations, info, comments, report
9         # W0613 - unused argument
10         # Ignore cherrypy class members as they are dynamically added
11         pylint -d c,r,i,W0613 -r n -f colorized \
12                    --notes= \
13                    --ignored-classes=cherrypy \
14                    ./ipsilon
15
16 pep8:
17         # Check style consistency
18         pep8 ipsilon
19
20 # Requires python-lesscpy
21 ui: less/ipsilon.less less/admin.less
22         # Create CSS
23         lesscpy less/ipsilon.less > ui/css/ipsilon.css
24         lesscpy less/admin.less > ui/css/admin.css
25
26 # Requires NodeJS less and clear-css packages
27 # Should be removed when lesscpy starts to work properly
28 ui-node: less/ipsilon.less less/admin.less
29
30         # Create and minify CSS
31         #lessc --clean-css less/ipsilon.less ui/css/ipsilon.css
32         #lessc --clean-css less/admin.less ui/css/admin.css
33
34         #FIXME: temporarily disable clean-css fo deveopment
35         lessc less/ipsilon.less ui/css/ipsilon.css
36         lessc less/admin.less ui/css/admin.css
37
38 clean:
39         rm -fr testdir cscope.out
40         find ./ -name '*.pyc' -exec rm -f {} \;
41
42 cscope:
43         git ls-files | xargs pycscope
44
45 lp-test:
46         pylint -d c,r,i,W0613 -r n -f colorized \
47                    --notes= \
48                    --ignored-classes=cherrypy \
49                    ./tests
50         pep8 tests
51
52 wrappers:
53         #rm -fr wrapdir
54         #mkdir wrapdir
55         #LD_PRELOAD=libsocket_wrapper.so
56         #SOCKET_WRAPPER_DIR=wrapdir
57         #SOCKET_WRAPPER_DEFAULT_IFACE=9
58
59 tests: wrappers
60         PYTHONPATH=./ ./tests/tests.py --test=test1
61         PYTHONPATH=./ ./tests/tests.py --test=testlogout
62         PYTHONPATH=./ ./tests/tests.py --test=attrs
63         PYTHONPATH=./ ./tests/tests.py --test=trans
64         PYTHONPATH=./ ./tests/tests.py --test=pgdb
65         PYTHONPATH=./ ./tests/tests.py --test=fconf
66
67 test: lp-test unittests tests
68
69 unittests:
70         PYTHONPATH=./ ./ipsilon/tools/saml2metadata.py
71
72 sdist:
73         python setup.py sdist
74
75 rpmroot:
76         rm -rf $(RPMBUILD)
77         mkdir -p $(RPMBUILD)/BUILD
78         mkdir -p $(RPMBUILD)/RPMS
79         mkdir -p $(RPMBUILD)/SOURCES
80         mkdir -p $(RPMBUILD)/SPECS
81         mkdir -p $(RPMBUILD)/SRPMS
82
83 rpmdistdir:
84         mkdir -p dist/rpms
85         mkdir -p dist/srpms
86
87 rpms: rpmroot rpmdistdir sdist
88         cp dist/ipsilon*.tar.gz $(RPMBUILD)/SOURCES/
89         rpmbuild --define "_topdir $(RPMBUILD)" -ba contrib/fedora/ipsilon.spec
90         mv $(RPMBUILD)/RPMS/*/ipsilon-*.rpm dist/rpms/
91         mv $(RPMBUILD)/SRPMS/ipsilon-*.src.rpm dist/srpms/
92         rm -rf $(RPMBUILD)
93
94 rpms: sdist