Przeglądaj źródła

Serve exercises from the HEAD of master of xjava

- otherwise this journey is testing not the latest copy of xjava, but
  what's at origin/master.
- add progress indicator.
- x-api can't serve binaries; must clean xjava of any build artifacts
  (e.g. .class files) before attempting to serve.

Signed-off-by: Bronwyn Perry-Huston <bronhuston@gmail.com>
Signed-off-by: Cen Ge <cge@corelogic.com>
Signed-off-by: John Ryan <jtigger@infosysengr.com>
Dan Neumann 10 lat temu
rodzic
commit
2c3fcdfb0d

+ 2
- 2
.travis.yml Wyświetl plik

@@ -10,10 +10,10 @@ addons:
10 10
   apt:
11 11
     packages:
12 12
       - tree
13
-      - jq
14 13
 before_install:
15 14
   - rvm install 2.2.1
16 15
   - rvm use 2.2.1
17 16
 
18 17
 script:
19
-  - bin/journey-setup-ci.sh
18
+  - bin/run-unit-tests-in-ci.sh
19
+  - bin/run-journey-test-in-ci.sh

+ 0
- 49
bin/journey-setup-local.sh Wyświetl plik

@@ -1,49 +0,0 @@
1
-#!/bin/bash
2
-
3
-# Local clean-up
4
-rm -rf ~/workspace/exercism/x-api
5
-killall ruby
6
-
7
-set -e
8
-
9
-export GOPATH=$HOME/workspace
10
-REPO_ROOT=~/workspace/exercism/xjava
11
-EXERCISM_HOME=~/workspace/exercism/exercises
12
-SET_RUBY_VER_CMD="rbenv local 2.2.1"
13
-
14
-mkdir -p ~/workspace/exercism
15
-cd ~/workspace/exercism/
16
-git clone https://github.com/exercism/x-api
17
-cd x-api
18
-git submodule init -- metadata
19
-git submodule init -- tracks/java
20
-git submodule update
21
-
22
-$SET_RUBY_VER_CMD
23
-gem install bundler
24
-bundle install
25
-
26
-RACK_ENV=development rackup&
27
-
28
-sleep 5
29
-
30
-export PATH=$PATH:$GOPATH/bin
31
-go get -u github.com/exercism/cli/exercism
32
-exercism -v
33
-
34
-mkdir -p $EXERCISM_HOME
35
-cd $EXERCISM_HOME
36
-exercism configure --dir=$EXERCISM_HOME
37
-exercism configure --api http://localhost:9292
38
-
39
-exercism debug
40
-
41
-cd $REPO_ROOT
42
-EXERCISES=`cat config.json | jq '.problems []' --raw-output`
43
-
44
-for EXERCISE in $EXERCISES; do
45
-  exercism fetch java $EXERCISE
46
-  cp -R -H $REPO_ROOT/exercises/$EXERCISE/src/example/java/* $EXERCISM_HOME/java/$EXERCISE/src/main/java/
47
-  cd $EXERCISM_HOME/java/$EXERCISE/
48
-  gradle test
49
-done

bin/journey-setup-ci.sh → bin/run-journey-test-in-ci.sh Wyświetl plik

@@ -2,10 +2,10 @@
2 2
 set -e
3 3
 
4 4
 eval "$(curl -sL https://raw.githubusercontent.com/travis-ci/gimme/master/gimme | GIMME_GO_VERSION=1.5.3 bash)"
5
-export HOME=$HOME/build/bronhuston
5
+export HOME=$PWD/..
6 6
 export GOPATH=$HOME
7 7
 
8
-REPO_ROOT=$HOME
8
+REPO_ROOT=~/xjava
9 9
 EXERCISM_HOME=~/workspace/exercism/exercises
10 10
 SET_RUBY_VER_CMD=""
11 11
 
@@ -14,8 +14,8 @@ cd ~/workspace/exercism/
14 14
 git clone https://github.com/exercism/x-api
15 15
 cd x-api
16 16
 git submodule init -- metadata
17
-git submodule init -- tracks/java
18 17
 git submodule update
18
+( cd tracks && rmdir java && ln -s $REPO_ROOT java && cd java/exercises && gradle clean )
19 19
 
20 20
 $SET_RUBY_VER_CMD
21 21
 gem install bundler
@@ -38,10 +38,18 @@ exercism debug
38 38
 
39 39
 cd $REPO_ROOT
40 40
 EXERCISES=`cat config.json | jq '.problems []' --raw-output`
41
+TOTAL_EXERCISES=`cat config.json | jq '.problems | length'`
42
+CURRENT_EXERCISE_NUMBER=1
41 43
 
42 44
 for EXERCISE in $EXERCISES; do
45
+  echo ''
46
+  echo '****' Testing $EXERCISE '('$CURRENT_EXERCISE_NUMBER / $TOTAL_EXERCISES') ****'
47
+  echo ''
43 48
   exercism fetch java $EXERCISE
44 49
   cp -R -H $REPO_ROOT/exercises/$EXERCISE/src/example/java/* $EXERCISM_HOME/java/$EXERCISE/src/main/java/
45 50
   cd $EXERCISM_HOME/java/$EXERCISE/
46 51
   gradle test
52
+
53
+  CURRENT_EXERCISE_NUMBER=$((CURRENT_EXERCISE_NUMBER + 1))
47 54
 done
55
+

+ 75
- 0
bin/run-journey-test-locally.sh Wyświetl plik

@@ -0,0 +1,75 @@
1
+#!/bin/bash
2
+
3
+if [ "$0" != "./bin/run-journey-test-locally.sh" ]; then
4
+  echo "This script must be run from the root of the xjava checkout."
5
+  echo "Please change directory there and try again."
6
+  echo -e "\n  $ ./bin/run-journey-test-locally.sh"
7
+  exit 1
8
+fi
9
+
10
+function teardown() {
11
+  if [ "$XAPI_PID" != "" ] ; then
12
+     kill $XAPI_PID
13
+  fi
14
+}
15
+
16
+trap teardown EXIT
17
+
18
+set -e
19
+
20
+REPO_ROOT=$PWD
21
+BUILD_DIR=$REPO_ROOT/build
22
+export GOPATH=$BUILD_DIR/go
23
+XAPI_HOME=$BUILD_DIR/x-api
24
+EXERCISM_HOME=$BUILD_DIR/exercism
25
+SET_RUBY_VER_CMD="rbenv local 2.2.1"
26
+
27
+if [ -d "$BUILD_DIR" ] ; then
28
+  rm -rf "$BUILD_DIR"
29
+fi
30
+
31
+mkdir -p $XAPI_HOME
32
+cd $XAPI_HOME
33
+git clone https://github.com/exercism/x-api .
34
+git submodule init -- metadata
35
+git submodule update
36
+( cd tracks && rmdir java && ln -s $REPO_ROOT java && cd java/exercises && gradle clean )
37
+
38
+
39
+$SET_RUBY_VER_CMD
40
+gem install bundler
41
+bundle install
42
+
43
+RACK_ENV=development rackup&
44
+export XAPI_PID=$!
45
+
46
+sleep 5
47
+
48
+export PATH=$PATH:$GOPATH/bin
49
+go get -u github.com/exercism/cli/exercism
50
+EXERCISM="exercism --config $EXERCISM_HOME/.exercism.json"
51
+
52
+
53
+mkdir -p $EXERCISM_HOME
54
+cd $EXERCISM_HOME
55
+$EXERCISM configure --dir=$EXERCISM_HOME
56
+$EXERCISM configure --api http://localhost:9292
57
+
58
+$EXERCISM debug
59
+
60
+cd $REPO_ROOT
61
+EXERCISES=`cat config.json | jq '.problems []' --raw-output`
62
+TOTAL_EXERCISES=`cat config.json | jq '.problems | length'`
63
+CURRENT_EXERCISE_NUMBER=1
64
+
65
+for EXERCISE in $EXERCISES; do
66
+  echo ''
67
+  echo '****' Testing $EXERCISE '('$CURRENT_EXERCISE_NUMBER / $TOTAL_EXERCISES') ****'
68
+  echo ''
69
+  $EXERCISM fetch java $EXERCISE
70
+  cp -R -H $REPO_ROOT/exercises/$EXERCISE/src/example/java/* $EXERCISM_HOME/java/$EXERCISE/src/main/java/
71
+  cd $EXERCISM_HOME/java/$EXERCISE/
72
+  gradle test
73
+
74
+  CURRENT_EXERCISE_NUMBER=$((CURRENT_EXERCISE_NUMBER + 1))
75
+done

bin/build.sh → bin/run-unit-tests-in-ci.sh Wyświetl plik

@@ -1,13 +1,15 @@
1 1
 #!/bin/bash
2 2
 set -e
3
-pushd exercises
4 3
 gradle --version
5
-echo ""
6
-echo ">>> Running tests..."
7
-TERM=dumb gradle check compileStarterSourceJava --continue
8
-popd
9 4
 
10 5
 echo ""
11 6
 echo ">>> Running configlet..."
12 7
 bin/fetch-configlet
13 8
 bin/configlet .
9
+
10
+pushd exercises
11
+echo ""
12
+echo ">>> Running tests..."
13
+TERM=dumb gradle check compileStarterSourceJava --continue
14
+popd
15
+

+ 0
- 1
x-api

@@ -1 +0,0 @@
1
-Subproject commit eecf15a0af868a1611e7e5b82cdb955beb9a8605