private.tests.js 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*global ZeroClipboard, _clientConstructor, _clientClip, _clientShouldEmit */
  2. (function(module, test) {
  3. "use strict";
  4. module("client/private.js unit tests");
  5. test("`_clientShouldEmit` works", function(assert) {
  6. assert.expect(9);
  7. // Arrange
  8. var currentEl = document.getElementById("d_clip_button");
  9. var client = new ZeroClipboard();
  10. _clientConstructor.call(client);
  11. // Act
  12. var actual1 = _clientShouldEmit.call(client, null);
  13. var actual2 = _clientShouldEmit.call(client, {});
  14. var actual3 = _clientShouldEmit.call(client, { type: "beforecopy", client: {} });
  15. var actual4 = _clientShouldEmit.call(client, { type: "beforecopy", target: {} });
  16. _clientClip.call(client, currentEl);
  17. var actual5 = _clientShouldEmit.call(client, { type: "beforecopy", target: {}, relatedTarget: {} });
  18. var actual6 = _clientShouldEmit.call(client, { type: "beforecopy", client: client });
  19. var actual7 = _clientShouldEmit.call(client, { type: "beforecopy", target: null });
  20. var actual8 = _clientShouldEmit.call(client, { type: "beforecopy", target: currentEl });
  21. var actual9 = _clientShouldEmit.call(client, { type: "beforecopy", relatedTarget: currentEl });
  22. // Assert
  23. assert.strictEqual(actual1, false, "Non-event returns `false`");
  24. assert.strictEqual(actual2, false, "Event without `type` returns `false`");
  25. assert.strictEqual(actual3, false, "Event with non-matching `client` returns `false`");
  26. assert.strictEqual(actual4, false, "Event with non-clipped `target` returns `false`");
  27. assert.strictEqual(actual5, false, "Event with non-clipped `relatedTarget` returns `false`");
  28. assert.strictEqual(actual6, true, "Event with matching `client` returns `true`");
  29. assert.strictEqual(actual7, true, "Event with `target` of `null` returns `true`");
  30. assert.strictEqual(actual8, true, "Event with clipped `target` returns `true`");
  31. assert.strictEqual(actual9, true, "Event with clipped `relatedTarget` returns `true`");
  32. });
  33. })(QUnit.module, QUnit.test);