25
25
var should = require ( 'should' ) ;
26
26
var compilerPackage = require ( '../' ) ;
27
27
var Compiler = compilerPackage . compiler ;
28
+ var packageInfo = require ( '../package.json' ) ;
28
29
var Semver = require ( 'semver' ) ;
29
30
var compilerVersionExpr = / ^ V e r s i o n : \s v ( .* ) $ / m;
31
+ var spawn = require ( 'child_process' ) . spawnSync ;
30
32
require ( 'mocha' ) ;
31
33
32
34
var assertError = new should . Assertion ( 'compiler version' ) ;
@@ -51,7 +53,6 @@ describe('compiler.jar', function() {
51
53
52
54
it ( 'version should be equal to the package major version' , function ( done ) {
53
55
var compiler = new Compiler ( { version : true } ) ;
54
- var packageInfo = require ( '../package.json' ) ;
55
56
var packageVer = new Semver ( packageInfo . version ) ;
56
57
compiler . run ( function ( exitCode , stdout , stderr ) {
57
58
var versionInfo = ( stdout || '' ) . match ( compilerVersionExpr ) ;
@@ -69,3 +70,16 @@ describe('compiler.jar', function() {
69
70
} ) ;
70
71
} ) ;
71
72
} ) ;
73
+
74
+ describe ( 'compiler submodule' , function ( ) {
75
+ it ( 'should be synced to the tagged commit' , function ( ) {
76
+ var gitCmd = spawn ( 'git' , [ 'tag' , '--points-at' , 'HEAD' ] , {
77
+ cwd : './compiler'
78
+ } ) ;
79
+ should ( gitCmd . status ) . eql ( 0 )
80
+ var currentTag = gitCmd . stdout . toString ( ) . replace ( / \s / g, '' ) ;
81
+ var packageVer = new Semver ( packageInfo . version ) ;
82
+ var mvnVersion = 'v' + packageVer . major ;
83
+ should ( currentTag ) . eql ( mvnVersion )
84
+ } ) ;
85
+ } ) ;
0 commit comments