[ Index ]

PHP Cross Reference of vtigercrm-6.1.0

title

Body

[close]

/libraries/jquery/defunkt-jquery-pjax/test/unit/ -> fn_pjax.js (source)

   1  if ($.support.pjax) {
   2    module("$.fn.pjax", {
   3      setup: function() {
   4        var self = this
   5        stop()
   6        window.iframeLoad = function(frame) {
   7          self.frame = frame
   8          window.iframeLoad = $.noop
   9          start()
  10        }
  11        $("#qunit-fixture").append("<iframe src='home.html'>")
  12      },
  13      teardown: function() {
  14        delete window.iframeLoad
  15      }
  16    })
  17  
  18  
  19    asyncTest("pushes new url", function() {
  20      var frame = this.frame
  21  
  22      frame.$("a").pjax({ container: "#main" })
  23  
  24      frame.$("#main").on("pjax:end", function() {
  25        equal(frame.location.pathname, "/dinosaurs.html")
  26        start()
  27      })
  28  
  29      frame.$("a[href='/dinosaurs.html']").click()
  30    })
  31  
  32    asyncTest("replaces container html from response data", function() {
  33      var frame = this.frame
  34  
  35      frame.$("a").pjax({ container: "#main" })
  36  
  37      frame.$("#main").on("pjax:end", function() {
  38        equal(frame.$("iframe").attr('title'), "YouTube video player")
  39        start()
  40      })
  41  
  42      frame.$("a[href='/dinosaurs.html']").click()
  43    })
  44  
  45    asyncTest("sets title to response title tag", function() {
  46      var frame = this.frame
  47  
  48      frame.$("a").pjax({ container: "#main" })
  49  
  50      frame.$("#main").on("pjax:end", function() {
  51        equal(frame.document.title, "dinosaurs")
  52        start()
  53      })
  54  
  55      frame.$("a[href='/dinosaurs.html']").trigger('click')
  56    })
  57  
  58  
  59    asyncTest("uses first argument as container", function() {
  60      var frame = this.frame
  61  
  62      frame.$("a").pjax("#main")
  63  
  64      frame.$("#main").on("pjax:end", function() {
  65        equal(frame.location.pathname, "/dinosaurs.html")
  66        start()
  67      })
  68  
  69      frame.$("a[href='/dinosaurs.html']").click()
  70    })
  71  
  72    asyncTest("uses first argument as options", function() {
  73      var frame = this.frame
  74  
  75      frame.$("a").pjax({container: "#main", push: true})
  76  
  77      frame.$("#main").on("pjax:end", function() {
  78        equal(frame.location.pathname, "/dinosaurs.html")
  79        start()
  80      })
  81  
  82      frame.$("a[href='/dinosaurs.html']").click()
  83    })
  84  
  85    asyncTest("uses first argument as container and second as options", function() {
  86      var frame = this.frame
  87  
  88      frame.$("a").pjax("#main", {push: true})
  89  
  90      frame.$("#main").on("pjax:end", function() {
  91        equal(frame.location.pathname, "/dinosaurs.html")
  92        start()
  93      })
  94  
  95      frame.$("a[href='/dinosaurs.html']").click()
  96    })
  97  
  98  
  99    asyncTest("defaults to data-pjax container", function() {
 100      var frame = this.frame
 101  
 102      frame.$("a").attr('data-pjax', "#main")
 103  
 104      frame.$("a").pjax()
 105  
 106      frame.$("#main").on("pjax:end", function() {
 107        equal(frame.location.pathname, "/dinosaurs.html")
 108        start()
 109      })
 110  
 111      frame.$("a[href='/dinosaurs.html']").click()
 112    })
 113  
 114    asyncTest("sets clickedElement to target jquery object", function() {
 115      var frame = this.frame
 116  
 117      frame.$("a").pjax({ container: "#main" })
 118  
 119      var link = frame.$("a[href='/dinosaurs.html']")[0]
 120  
 121      frame.$("#main").on("pjax:end", function(event, xhr, options) {
 122        equal(link, options.clickedElement[0])
 123        start()
 124      })
 125  
 126      frame.$(link).click()
 127    })
 128  
 129    asyncTest("sets relatedTarget to clicked element", function() {
 130      var frame = this.frame
 131  
 132      frame.$("a").pjax({ container: "#main" })
 133  
 134      var link = frame.$("a[href='/dinosaurs.html']")[0]
 135  
 136      frame.$("#main").on("pjax:end", function(event, xhr, options) {
 137        equal(link, event.relatedTarget)
 138        start()
 139      })
 140  
 141      frame.$(link).click()
 142    })
 143  
 144  
 145    asyncTest("doesn't ignore left click", function() {
 146      var frame = this.frame
 147  
 148      frame.$("a").pjax({ container: "#main" })
 149  
 150      var event = frame.$.Event('click')
 151      event.which = 0
 152      frame.$("a[href='/dinosaurs.html']").trigger(event)
 153      ok(event.isDefaultPrevented())
 154  
 155      start()
 156    })
 157  
 158    asyncTest("ignores middle clicks", function() {
 159      var frame = this.frame
 160  
 161      frame.$("a").pjax({ container: "#main" })
 162  
 163      var event = frame.$.Event('click')
 164      event.which = 3
 165      frame.$("a[href='/dinosaurs.html']").trigger(event)
 166      ok(!event.isDefaultPrevented())
 167  
 168      start()
 169    })
 170  
 171    asyncTest("ignores command clicks", function() {
 172      var frame = this.frame
 173  
 174      frame.$("a").pjax({ container: "#main" })
 175  
 176      var event = frame.$.Event('click')
 177      event.metaKey = true
 178      frame.$("a[href='/dinosaurs.html']").trigger(event)
 179      ok(!event.isDefaultPrevented())
 180  
 181      start()
 182    })
 183  
 184    asyncTest("ignores ctrl clicks", function() {
 185      var frame = this.frame
 186  
 187      frame.$("a").pjax({ container: "#main" })
 188  
 189      var event = frame.$.Event('click')
 190      event.ctrlKey = true
 191      frame.$("a[href='/dinosaurs.html']").trigger(event)
 192      ok(!event.isDefaultPrevented())
 193  
 194      start()
 195    })
 196  
 197    asyncTest("ignores cross origin links", function() {
 198      var frame = this.frame
 199  
 200      frame.$("a").pjax({ container: "#main" })
 201  
 202      var event = frame.$.Event('click')
 203      frame.$("a[href='https://www.google.com/']").trigger(event)
 204      notEqual(event.result, false)
 205  
 206      start()
 207    })
 208  
 209    asyncTest("ignores same page anchors", function() {
 210      var frame = this.frame
 211  
 212      frame.$("a").pjax({ container: "#main" })
 213  
 214      var event = frame.$.Event('click')
 215      frame.$("a[href='#main']").trigger(event)
 216      notEqual(event.result, false)
 217  
 218      start()
 219    })
 220  
 221    asyncTest("scrolls to anchor after load", function() {
 222      var frame = this.frame
 223  
 224      frame.$("a").pjax({ container: "#main" })
 225  
 226      frame.$("#main").on("pjax:end", function() {
 227        equal(frame.location.pathname, "/dinosaurs.html")
 228        equal(frame.location.hash, "#main")
 229        start()
 230      })
 231  
 232      var link = frame.$("a[href='/dinosaurs.html']")
 233      link.attr('href', "/dinosaurs.html#main")
 234      link.click()
 235    })
 236  }


Generated: Fri Nov 28 20:08:37 2014 Cross-referenced by PHPXref 0.7.1