at 15.09-beta 46 lines 1.6 kB view raw
1{ stdenv, fetchgit, python, phantomjs }: 2 3stdenv.mkDerivation rec { 4 name = "casperjs-1.0.0-RC5"; 5 6 src = fetchgit { 7 url = "git://github.com/n1k0/casperjs.git"; 8 rev = "refs/tags/1.0.0-RC5"; 9 sha256 = "e7fd6b94b4b304416159196208dea7f6e8841a667df102eb378a698a92f0f2c7"; 10 }; 11 12 patchPhase = '' 13 substituteInPlace bin/casperjs --replace "/usr/bin/env python" "${python}/bin/python" \ 14 --replace "'phantomjs'" "'${phantomjs}/bin/phantomjs'" 15 ''; 16 17 installPhase = '' 18 mkdir -p $out/share/casperjs $out/bin 19 cp -a . $out/share/casperjs/. 20 ln -s $out/share/casperjs/bin/casperjs $out/bin 21 ''; 22 23 meta = { 24 description = "Navigation scripting & testing utility for PhantomJS"; 25 longDescription = '' 26 CasperJS is a navigation scripting & testing utility for PhantomJS. 27 It eases the process of defining a full navigation scenario and provides useful high-level 28 functions, methods & syntaxic sugar for doing common tasks such as: 29 - defining & ordering navigation steps 30 - filling forms 31 - clicking links 32 - capturing screenshots of a page (or an area) 33 - making assertions on remote DOM 34 - logging & events 35 - downloading base64 encoded resources, even binary ones 36 - catching errors and react accordingly 37 - writing functional test suites, exporting results as JUnit XML (xUnit) 38 ''; 39 40 homepage = http://casperjs.org; 41 license = stdenv.lib.licenses.mit; 42 43 maintainers = [ stdenv.lib.maintainers.bluescreen303 ]; 44 platforms = stdenv.lib.platforms.linux; 45 }; 46}