zulip/zephyr/tests/frontend/casperjs/samples/googlelinks.coffee

31 lines
888 B
CoffeeScript

links = []
casper = require("casper").create()
getLinks = ->
links = document.querySelectorAll("h3.r a")
Array::map.call links, (e) ->
try
(/url\?q=(.*)&sa=U/).exec(e.getAttribute("href"))[1]
catch e
e.getAttribute "href"
casper.start "http://google.fr/", ->
# search for 'casperjs' from google form
@fill "form[action=\"/search\"]", q: "casperjs", true
casper.then ->
# aggregate results for the 'casperjs' search
links = @evaluate(getLinks)
# now search for 'phantomjs' by fillin the form again
@fill "form[action=\"/search\"]", q: "phantomjs", true
casper.then ->
# aggregate results for the 'phantomjs' search
links = links.concat(@evaluate(getLinks))
casper.run ->
# echo results in some pretty fashion
@echo links.length + " links found:"
@echo " - " + links.join("\n - ")
@exit()