]> git.immae.eu Git - github/wallabag/wallabag.git/blob - build.xml
And of course it doesn't work for SQLite
[github/wallabag/wallabag.git] / build.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project name="wallabag" default="build">
3 <target name="build" depends="clean,prepare,phpunit"/>
4 <target name="prepare-mysql" depends="clean,prepare_mysql"/>
5 <target name="prepare-sqlite" depends="clean,prepare_sqlite"/>
6 <target name="prepare-pgsql" depends="clean,prepare_pgsql"/>
7
8 <target name="clean" description="Cleanup build artifacts">
9 <delete dir="${basedir}/var/cache"/>
10 </target>
11
12 <target name="prepare" description="Prepare for build">
13 <exec executable="php">
14 <arg value="${basedir}/bin/console"/>
15 <arg value="doctrine:database:drop"/>
16 <arg value="--force"/>
17 <arg value="--env=test"/>
18 </exec>
19 <exec executable="php">
20 <arg value="${basedir}/bin/console"/>
21 <arg value="doctrine:database:create"/>
22 <arg value="--env=test"/>
23 </exec>
24 <exec executable="php">
25 <arg value="${basedir}/bin/console"/>
26 <arg value="doctrine:schema:create"/>
27 <arg value="--env=test"/>
28 </exec>
29 <exec executable="php">
30 <arg value="${basedir}/bin/console"/>
31 <arg value="doctrine:fixtures:load"/>
32 <arg value="--no-interaction"/>
33 <arg value="--env=test"/>
34 </exec>
35 </target>
36
37 <target name="prepare_mysql" description="Run test for MySQL">
38 <delete dir="${basedir}/app/config/parameters.yml"/>
39 <exec executable="cp">
40 <arg value="${basedir}/app/config/tests/parameters_test.mysql.yml"/>
41 <arg value="${basedir}/app/config/parameters_test.yml"/>
42 </exec>
43 <exec executable="php">
44 <arg value="${basedir}/bin/console"/>
45 <arg value="cache:clear"/>
46 <arg value="--env=test"/>
47 </exec>
48 <exec executable="php">
49 <arg value="${basedir}/bin/console"/>
50 <arg value="doctrine:database:drop"/>
51 <arg value="--force"/>
52 <arg value="--env=test"/>
53 </exec>
54 <exec executable="php">
55 <arg value="${basedir}/bin/console"/>
56 <arg value="doctrine:database:create"/>
57 <arg value="--env=test"/>
58 </exec>
59 <exec executable="php">
60 <arg value="${basedir}/bin/console"/>
61 <arg value="doctrine:database:import"/>
62 <arg value="data/sql/mysql_base.sql"/>
63 <arg value="--env=test"/>
64 </exec>
65 <exec executable="php">
66 <arg value="${basedir}/bin/console"/>
67 <arg value="doctrine:migrations:migrate"/>
68 <arg value="--no-interaction"/>
69 <arg value="--env=test"/>
70 </exec>
71 <exec executable="php">
72 <arg value="${basedir}/bin/console"/>
73 <arg value="doctrine:fixtures:load"/>
74 <arg value="--no-interaction"/>
75 <arg value="--env=test"/>
76 </exec>
77 </target>
78
79 <target name="prepare_sqlite" description="Run test for SQLite">
80 <delete dir="${basedir}/app/config/parameters.yml"/>
81 <exec executable="cp">
82 <arg value="${basedir}/app/config/tests/parameters_test.sqlite.yml"/>
83 <arg value="${basedir}/app/config/parameters_test.yml"/>
84 </exec>
85 <exec executable="php">
86 <arg value="${basedir}/bin/console"/>
87 <arg value="cache:clear"/>
88 <arg value="--env=test"/>
89 </exec>
90 <exec executable="php">
91 <arg value="${basedir}/bin/console"/>
92 <arg value="doctrine:database:drop"/>
93 <arg value="--force"/>
94 <arg value="--env=test"/>
95 </exec>
96 <exec executable="php">
97 <arg value="${basedir}/bin/console"/>
98 <arg value="doctrine:database:create"/>
99 <arg value="--env=test"/>
100 </exec>
101 <!--
102 Looks like it doesn't work and generate an error:
103 There is no table with name '/home/jeremy/github/wallabag/app/..wallabag_entry' in the schema.
104
105 <exec executable="php">
106 <arg value="${basedir}/bin/console"/>
107 <arg value="doctrine:database:import"/>
108 <arg value="data/sql/sqlite_base.sql"/>
109 <arg value="--env=test"/>
110 </exec> -->
111 <exec executable="php">
112 <arg value="${basedir}/bin/console"/>
113 <arg value="doctrine:schema:create"/>
114 <arg value="--env=test"/>
115 </exec>
116 <exec executable="php">
117 <arg value="${basedir}/bin/console"/>
118 <arg value="doctrine:migrations:migrate"/>
119 <arg value="--no-interaction"/>
120 <arg value="--env=test"/>
121 </exec>
122 <exec executable="php">
123 <arg value="${basedir}/bin/console"/>
124 <arg value="doctrine:fixtures:load"/>
125 <arg value="--no-interaction"/>
126 <arg value="--env=test"/>
127 </exec>
128 </target>
129
130 <target name="prepare_pgsql" description="Run test for PostgreSQL">
131 <delete dir="${basedir}/app/config/parameters.yml"/>
132 <exec executable="cp">
133 <arg value="${basedir}/app/config/tests/parameters_test.pgsql.yml"/>
134 <arg value="${basedir}/app/config/parameters_test.yml"/>
135 </exec>
136 <exec executable="php">
137 <arg value="${basedir}/bin/console"/>
138 <arg value="cache:clear"/>
139 <arg value="--env=test"/>
140 </exec>
141 <exec executable="php">
142 <arg value="${basedir}/bin/console"/>
143 <arg value="doctrine:database:drop"/>
144 <arg value="--force"/>
145 <arg value="--env=test"/>
146 </exec>
147 <exec executable="php">
148 <arg value="${basedir}/bin/console"/>
149 <arg value="doctrine:database:create"/>
150 <arg value="--env=test"/>
151 </exec>
152 <exec executable="php">
153 <arg value="${basedir}/bin/console"/>
154 <arg value="doctrine:database:import"/>
155 <arg value="data/sql/pgsql_base.sql"/>
156 <arg value="--env=test"/>
157 </exec>
158 <exec executable="psql">
159 <!-- psql -h host -d database -U username -f data/sql/pgsql_base.sql -->
160 <arg value="-h"/>
161 <arg value="localhost"/>
162 <arg value="-d"/>
163 <arg value="wallabag_test"/>
164 <arg value="-U"/>
165 <arg value="travis"/>
166 <arg value="-f"/>
167 <arg value="data/sql/pgsql_base.sql"/>
168 </exec>
169 <exec executable="php">
170 <arg value="${basedir}/bin/console"/>
171 <arg value="doctrine:fixtures:load"/>
172 <arg value="--no-interaction"/>
173 <arg value="--env=test"/>
174 </exec>
175 </target>
176
177 <target name="phpunit" description="Run unit tests with PHPUnit + HTML Coverage">
178 <exec executable="phpunit" failonerror="true">
179 <arg value="--coverage-html"/>
180 <arg value="build/coverage"/>
181 </exec>
182 </target>
183 </project>