Browse Source

Update journey test to build trackler.

Track data has been factored into a separate gem: trackler.  The build
was breaking.
  (see also exercism/x-api#141)
John S. Ryan 10 years ago
parent
commit
2a5cd84f8d
1 changed files with 34 additions and 10 deletions
  1. 34
    10
      bin/journey-test.sh

+ 34
- 10
bin/journey-test.sh View File

44
 
44
 
45
 assert_required_ruby_installed() {
45
 assert_required_ruby_installed() {
46
   echo ">>> assert_required_ruby_installed(\"$1\")"
46
   echo ">>> assert_required_ruby_installed(\"$1\")"
47
-  local RACKAPP_HOME="$1"
47
+  local RUBY_APP_HOME="$1"
48
 
48
 
49
-  pushd "${RACKAPP_HOME}" >/dev/null
49
+  pushd "${RUBY_APP_HOME}" >/dev/null
50
   local CURRENT_RUBY_VER=`ruby --version | egrep --only-matching "[0-9]+\.[0-9]+\.[0-9]+"`
50
   local CURRENT_RUBY_VER=`ruby --version | egrep --only-matching "[0-9]+\.[0-9]+\.[0-9]+"`
51
   local EXPECTED_RUBY_VER=`cat Gemfile | awk -F\' '/ruby /{print $2}'`
51
   local EXPECTED_RUBY_VER=`cat Gemfile | awk -F\' '/ruby /{print $2}'`
52
   popd >/dev/null
52
   popd >/dev/null
53
-  if [ "$CURRENT_RUBY_VER" != "$EXPECTED_RUBY_VER" ]; then
54
-    echo "${RACKAPP_HOME} requires Ruby ${EXPECTED_RUBY_VER}; current Ruby version is ${CURRENT_RUBY_VER}."
53
+  if [ "$EXPECTED_RUBY_VER" != "" -a "$CURRENT_RUBY_VER" != "$EXPECTED_RUBY_VER" ]; then
54
+    echo "${RUBY_APP_HOME} requires Ruby ${EXPECTED_RUBY_VER}; current Ruby version is ${CURRENT_RUBY_VER}."
55
     echo -e "Ruby used: `which ruby`.\n"
55
     echo -e "Ruby used: `which ruby`.\n"
56
     echo -e "Have you completed the setup instructions at https://github.com/exercism/xjava ?\n"
56
     echo -e "Have you completed the setup instructions at https://github.com/exercism/xjava ?\n"
57
     echo "PATH=${PATH}"
57
     echo "PATH=${PATH}"
124
   local XAPI_HOME="$1"
124
   local XAPI_HOME="$1"
125
 
125
 
126
   git clone https://github.com/exercism/x-api ${XAPI_HOME}
126
   git clone https://github.com/exercism/x-api ${XAPI_HOME}
127
-  pushd ${XAPI_HOME} >/dev/null
128
-  git submodule init -- metadata
127
+
128
+  echo "<<< fetch_x_api()"
129
+}
130
+
131
+fetch_trackler() {
132
+  echo ">>> fetch_trackler(\"$1\")"
133
+  local TRACKLER_HOME="$1"
134
+
135
+  git clone https://github.com/exercism/trackler ${TRACKLER_HOME}
136
+
137
+  echo "<<< fetch_trackler()"
138
+}
139
+
140
+build_trackler() {
141
+  echo ">>> build_trackler(\"$1\")"
142
+  local TRACKLER_HOME="$1"
143
+
144
+  pushd ${TRACKLER_HOME} >/dev/null
145
+  git submodule init -- common
129
   git submodule update
146
   git submodule update
130
   rmdir tracks/java
147
   rmdir tracks/java
131
-  ln -s $REPO_ROOT tracks/java
148
+  mkdir -p tracks/java/exercises
149
+  cp $REPO_ROOT/config.json tracks/java
150
+  cp -r $REPO_ROOT/exercises tracks/java
151
+  gem build trackler.gemspec
152
+  gem install --local trackler-*.gem
153
+
132
   popd > /dev/null
154
   popd > /dev/null
133
-  echo "<<< fetch_x_api()"
155
+  echo "<<< build_trackler()"
134
 }
156
 }
135
 
157
 
136
 start_x_api() {
158
 start_x_api() {
139
 
161
 
140
   pushd $XAPI_HOME >/dev/null
162
   pushd $XAPI_HOME >/dev/null
141
 
163
 
142
-  SET_RUBY_VER_CMD="rbenv local 2.2.1"
143
   gem install bundler
164
   gem install bundler
144
   bundle install
165
   bundle install
145
-
146
   RACK_ENV=development rackup &
166
   RACK_ENV=development rackup &
147
   XAPI_PID=$!
167
   XAPI_PID=$!
148
   sleep 5
168
   sleep 5
208
   local REPO_ROOT="${PWD}"
228
   local REPO_ROOT="${PWD}"
209
   local BUILD_DIR="${REPO_ROOT}/build"
229
   local BUILD_DIR="${REPO_ROOT}/build"
210
   local XAPI_HOME="${BUILD_DIR}/x-api"
230
   local XAPI_HOME="${BUILD_DIR}/x-api"
231
+  local TRACKLER_HOME="${BUILD_DIR}/trackler"
211
   local EXERCISM_HOME="${BUILD_DIR}/exercism"
232
   local EXERCISM_HOME="${BUILD_DIR}/exercism"
212
   local EXERCISM_CONFIGFILE=".journey-test.exercism.json"
233
   local EXERCISM_CONFIGFILE=".journey-test.exercism.json"
213
   local XAPI_PORT=9292
234
   local XAPI_PORT=9292
217
   clean_build "${REPO_ROOT}" "${BUILD_DIR}"
238
   clean_build "${REPO_ROOT}" "${BUILD_DIR}"
218
   fetch_exercism_cli $(get_operating_system) $(get_cpu_architecture) "${EXERCISM_HOME}"
239
   fetch_exercism_cli $(get_operating_system) $(get_cpu_architecture) "${EXERCISM_HOME}"
219
   fetch_x_api "${XAPI_HOME}"
240
   fetch_x_api "${XAPI_HOME}"
241
+  fetch_trackler "${TRACKLER_HOME}"
220
   assert_required_ruby_installed "${XAPI_HOME}"
242
   assert_required_ruby_installed "${XAPI_HOME}"
243
+  assert_required_ruby_installed "${TRACKLER_HOME}"
244
+  build_trackler "${TRACKLER_HOME}"
221
   start_x_api "${XAPI_HOME}"
245
   start_x_api "${XAPI_HOME}"
222
   configure_exercism_cli "${EXERCISM_HOME}" "${EXERCISM_CONFIGFILE}" "${XAPI_PORT}"
246
   configure_exercism_cli "${EXERCISM_HOME}" "${EXERCISM_CONFIGFILE}" "${XAPI_PORT}"
223
   solve_all_exercises "${EXERCISM_HOME}" "${EXERCISM_CONFIGFILE}"
247
   solve_all_exercises "${EXERCISM_HOME}" "${EXERCISM_CONFIGFILE}"