Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
ci: no publicar en PR; tests: estabilizar modebar y Clipboard API; fi…
…x: case duplicado en test.sh
  • Loading branch information
Harry-GNS committed Sep 26, 2025
commit e5a7f9d7cbbbfa56b69f19740d8bceb2675538e5
10 changes: 8 additions & 2 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -581,9 +581,15 @@ workflows:
requires:
- install-and-cibuild

- publish-dist
- publish-dist:
filters:
branches:
only: master

- publish-dist-node-v22
- publish-dist-node-v22:
filters:
branches:
only: master

- test-stackgl-bundle

Expand Down
2 changes: 1 addition & 1 deletion .circleci/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ case $1 in
exit $EXIT_STATE
;;

mathjax-firefox)
mathjax-firefox-legacy)
./node_modules/karma/bin/karma start test/jasmine/karma.conf.js --FF --bundleTest=mathjax --nowatch || EXIT_STATE=$?
exit $EXIT_STATE
;;
Expand Down
16 changes: 15 additions & 1 deletion test/jasmine/tests/modebar_test.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,16 @@ var destroyGraphDiv = require('../assets/destroy_graph_div');
var selectButton = require('../assets/modebar_button');
var failTest = require('../assets/fail_test');

// Ensure default environment doesn't expose clipboard API so button counts remain stable
// Individual clipboard tests will explicitly mock/enable it as needed.
var __origClipboard__ = (typeof navigator !== 'undefined') ? navigator.clipboard : undefined;
beforeAll(function() {
if(typeof navigator !== 'undefined') navigator.clipboard = undefined;
});
afterAll(function() {
if(typeof navigator !== 'undefined') navigator.clipboard = __origClipboard__;
});

describe('ModeBar', function() {
'use strict';

Expand Down Expand Up @@ -2001,13 +2011,15 @@ describe('ModeBar', function() {
it('should call clipboard API when clicked', function(done) {
var clipboardWriteCalled = false;
var originalClipboard = navigator.clipboard;
var originalClipboardItem = window.ClipboardItem;

// Mock successful clipboard API
window.ClipboardItem = window.ClipboardItem || function ClipboardItem(data) { this.data = data; };
navigator.clipboard = {
write: function(items) {
clipboardWriteCalled = true;
expect(items.length).toBe(1);
expect(items[0]).toEqual(jasmine.any(ClipboardItem));
expect(items[0] instanceof ClipboardItem).toBeTrue();
return Promise.resolve();
}
};
Expand All @@ -2026,12 +2038,14 @@ describe('ModeBar', function() {

// Restore original clipboard
navigator.clipboard = originalClipboard;
window.ClipboardItem = originalClipboardItem;
done();
}, 100);
})
.catch(function(err) {
// Restore original clipboard
navigator.clipboard = originalClipboard;
window.ClipboardItem = originalClipboardItem;
failTest(err);
});
});
Expand Down