Commit 2e81fc51 by Steve Strassmann

sync with master

parents d55d5c93 143ad0ca
...@@ -31,3 +31,4 @@ cover_html/ ...@@ -31,3 +31,4 @@ cover_html/
chromedriver.log chromedriver.log
/nbproject /nbproject
ghostdriver.log ghostdriver.log
node_modules
...@@ -8,7 +8,7 @@ def rooted_glob(root, glob): ...@@ -8,7 +8,7 @@ def rooted_glob(root, glob):
Uses glob2 globbing Uses glob2 globbing
""" """
return remove_root(root, glob2.glob('{root}/{glob}'.format(root=root, glob=glob))) return remove_root(root, sorted(glob2.glob('{root}/{glob}'.format(root=root, glob=glob))))
def remove_root(root, paths): def remove_root(root, paths):
......
...@@ -37,7 +37,7 @@ xdescribe 'VideoPlayer', -> ...@@ -37,7 +37,7 @@ xdescribe 'VideoPlayer', ->
expect(window.VideoProgressSlider).toHaveBeenCalledWith el: $('.slider', @player.el) expect(window.VideoProgressSlider).toHaveBeenCalledWith el: $('.slider', @player.el)
it 'create Youtube player', -> it 'create Youtube player', ->
expect(YT.Player).toHaveBeenCalledWith 'example' expect(YT.Player).toHaveBeenCalledWith('example', {
playerVars: playerVars:
controls: 0 controls: 0
wmode: 'transparent' wmode: 'transparent'
...@@ -48,6 +48,7 @@ xdescribe 'VideoPlayer', -> ...@@ -48,6 +48,7 @@ xdescribe 'VideoPlayer', ->
events: events:
onReady: @player.onReady onReady: @player.onReady
onStateChange: @player.onStateChange onStateChange: @player.onStateChange
})
it 'bind to video control play event', -> it 'bind to video control play event', ->
expect($(@player.control)).toHandleWith 'play', @player.play expect($(@player.control)).toHandleWith 'play', @player.play
......
...@@ -68,7 +68,7 @@ def _write_styles(selector, output_root, classes): ...@@ -68,7 +68,7 @@ def _write_styles(selector, output_root, classes):
css_fragments[idx, filetype, fragment].add(class_.__name__) css_fragments[idx, filetype, fragment].add(class_.__name__)
css_imports = defaultdict(set) css_imports = defaultdict(set)
for (idx, filetype, fragment), classes in sorted(css_fragments.items()): for (idx, filetype, fragment), classes in sorted(css_fragments.items()):
fragment_name = "{idx}-{hash}.{type}".format( fragment_name = "{idx:0=3d}-{hash}.{type}".format(
idx=idx, idx=idx,
hash=hashlib.md5(fragment).hexdigest(), hash=hashlib.md5(fragment).hexdigest(),
type=filetype) type=filetype)
...@@ -102,7 +102,7 @@ def _write_js(output_root, classes): ...@@ -102,7 +102,7 @@ def _write_js(output_root, classes):
module_js = [] module_js = []
for idx, filetype, fragment in sorted(js_fragments): for idx, filetype, fragment in sorted(js_fragments):
path = output_root / "{idx}-{hash}.{type}".format( path = output_root / "{idx:0=3d}-{hash}.{type}".format(
idx=idx, idx=idx,
hash=hashlib.md5(fragment).hexdigest(), hash=hashlib.md5(fragment).hexdigest(),
type=filetype) type=filetype)
......
...@@ -40,6 +40,8 @@ yes w | pip install -q -r requirements.txt ...@@ -40,6 +40,8 @@ yes w | pip install -q -r requirements.txt
bundle install bundle install
npm install
rake clobber rake clobber
rake pep8 > pep8.log || cat pep8.log rake pep8 > pep8.log || cat pep8.log
rake pylint > pylint.log || cat pylint.log rake pylint > pylint.log || cat pylint.log
......
...@@ -93,7 +93,7 @@ end ...@@ -93,7 +93,7 @@ end
def template_jasmine_runner(lib) def template_jasmine_runner(lib)
coffee_files = Dir["#{lib}/**/js/**/*.coffee", "common/static/coffee/src/**/*.coffee"] coffee_files = Dir["#{lib}/**/js/**/*.coffee", "common/static/coffee/src/**/*.coffee"]
if !coffee_files.empty? if !coffee_files.empty?
sh("coffee -c #{coffee_files.join(' ')}") sh("node_modules/.bin/coffee -c #{coffee_files.join(' ')}")
end end
phantom_jasmine_path = File.expand_path("common/test/phantom-jasmine") phantom_jasmine_path = File.expand_path("common/test/phantom-jasmine")
common_js_root = File.expand_path("common/static/js") common_js_root = File.expand_path("common/static/js")
...@@ -128,7 +128,7 @@ def compile_assets(watch=false, debug=false) ...@@ -128,7 +128,7 @@ def compile_assets(watch=false, debug=false)
--command='#{xmodule_cmd}' \ --command='#{xmodule_cmd}' \
common/lib/xmodule" common/lib/xmodule"
end end
coffee_cmd = "coffee #{watch ? '--watch' : ''} --compile */static" coffee_cmd = "node_modules/.bin/coffee #{watch ? '--watch' : ''} --compile */static"
sass_cmd = "sass #{debug ? '--debug-info' : '--style compressed'} " + sass_cmd = "sass #{debug ? '--debug-info' : '--style compressed'} " +
"--load-path ./common/static/sass " + "--load-path ./common/static/sass " +
"--require ./common/static/sass/bourbon/lib/bourbon.rb " + "--require ./common/static/sass/bourbon/lib/bourbon.rb " +
...@@ -142,6 +142,9 @@ def compile_assets(watch=false, debug=false) ...@@ -142,6 +142,9 @@ def compile_assets(watch=false, debug=false)
puts "Waiting for `#{cmd}` to complete (pid #{pid})" puts "Waiting for `#{cmd}` to complete (pid #{pid})"
Process.wait(pid) Process.wait(pid)
puts "Completed" puts "Completed"
if !$?.exited? || $?.exitstatus != 0
abort "`#{cmd}` failed"
end
end end
end end
end end
...@@ -155,6 +158,24 @@ default_options = { ...@@ -155,6 +158,24 @@ default_options = {
:cms => '8001', :cms => '8001',
} }
desc "Install all prerequisites needed for the lms and cms"
task :install_prereqs => [:install_node_prereqs, :install_ruby_prereqs, :install_python_prereqs]
desc "Install all node prerequisites for the lms and cms"
task :install_node_prereqs do
sh('npm install')
end
desc "Install all ruby prerequisites for the lms and cms"
task :install_ruby_prereqs do
sh('bundle install')
end
desc "Install all python prerequisites for the lms and cms"
task :install_python_prereqs do
sh('pip install -r requirements.txt')
end
task :predjango do task :predjango do
sh("find . -type f -name *.pyc -delete") sh("find . -type f -name *.pyc -delete")
sh('pip install -q --no-index -r local-requirements.txt') sh('pip install -q --no-index -r local-requirements.txt')
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment