From 821bdaaba4923fa4e6fdc4749ea5c625dcfd0fe0 Mon Sep 17 00:00:00 2001 From: Carlos Lizaga <carlos.lizaga@pronovias.com> Date: Wed, 22 Nov 2017 17:50:00 +0100 Subject: [PATCH] Added accordion.test.js for Jasmine testing. Removed accordion.js and index.html for jsTestDriver test. --- .../testsuite/mage/accordion/accordion.js | 57 ------------- .../testsuite/mage/accordion/index.html | 31 ------- .../jasmine/tests/lib/mage/accordion.test.js | 81 +++++++++++++++++++ 3 files changed, 81 insertions(+), 88 deletions(-) delete mode 100644 dev/tests/js/JsTestDriver/testsuite/mage/accordion/accordion.js delete mode 100644 dev/tests/js/JsTestDriver/testsuite/mage/accordion/index.html create mode 100644 dev/tests/js/jasmine/tests/lib/mage/accordion.test.js diff --git a/dev/tests/js/JsTestDriver/testsuite/mage/accordion/accordion.js b/dev/tests/js/JsTestDriver/testsuite/mage/accordion/accordion.js deleted file mode 100644 index 562c5c096b6..00000000000 --- a/dev/tests/js/JsTestDriver/testsuite/mage/accordion/accordion.js +++ /dev/null @@ -1,57 +0,0 @@ -/** - * @category mage.js - * @package test - * Copyright © Magento, Inc. All rights reserved. - * See COPYING.txt for license details. - */ - -/* - - */ -test( "Initialization", function() { - expect(2); - var accordion = $("<div></div>"); - accordion.accordion(); - ok( accordion.is(':mage-accordion'), "widget instantiated" ); - accordion.accordion('destroy'); - ok( !accordion.is(':mage-accordion'), "widget destroyed" ); -}); - - - -test( "One-collapsible element", function() { - expect(4); - var accordion = $('<div></div>'); - var title1 = $('<div data-role="collapsible"></div>').appendTo(accordion); - var content1 = $('<div data-role="content"></div>').appendTo(accordion); - var title2 = $('<div data-role="collapsible"></div>').appendTo(accordion); - var content2 = $('<div data-role="content"></div>').appendTo(accordion); - accordion.appendTo("body"); - - accordion.accordion(); - ok( content1.is(':visible'), "content visible" ); - ok( content2.is(':hidden'), "content hidden" ); - title2.trigger('click'); - ok( content1.is(':hidden'), "content hidden" ); - ok( content2.is(':visible'), "content visible" ); - accordion.accordion('destroy'); - -}); - -test( "Multi-collapsible elements", function() { - expect(4); - var accordion = $('<div></div>'); - var title1 = $('<div data-role="collapsible"></div>').appendTo(accordion); - var content1 = $('<div data-role="content"></div>').appendTo(accordion); - var title2 = $('<div data-role="collapsible"></div>').appendTo(accordion); - var content2 = $('<div data-role="content"></div>').appendTo(accordion); - accordion.appendTo("body"); - - accordion.accordion({multipleCollapsible:true}); - ok( content1.is(':visible'), "content visible" ); - ok( content2.is(':hidden'), "content hidden" ); - title2.trigger('click'); - ok( content1.is(':visible'), "content visible" ); - ok( content2.is(':visible'), "content visible" ); - accordion.accordion('destroy'); -}); diff --git a/dev/tests/js/JsTestDriver/testsuite/mage/accordion/index.html b/dev/tests/js/JsTestDriver/testsuite/mage/accordion/index.html deleted file mode 100644 index 093284c6f4f..00000000000 --- a/dev/tests/js/JsTestDriver/testsuite/mage/accordion/index.html +++ /dev/null @@ -1,31 +0,0 @@ -<!-- -/** - * @category mage.accordion - * @package test - * Copyright © Magento, Inc. All rights reserved. - * See COPYING.txt for license details. - */ ---> - -<!DOCTYPE html> -<html> -<head> - <meta charset="utf-8"> - <title>Accordion Widget: QUnit Tests </title> - <base href="../../../"/> - <link type="text/css" rel="stylesheet" href="framework/qunit/qunit-1.14.0.css"/> - <script type="text/javascript" src="../../../pub/lib/jquery.js"></script> - <script type="text/javascript" src="../../../pub/lib/jquery/jquery-ui.js"></script> - <script type="text/javascript" src="framework/qunit/qunit-1.14.0.js"></script> - <script type="text/javascript" src="../../../pub/lib/mage/mage.js"></script> - <script type="text/javascript" src="../../../pub/lib/mage/tabs.js"></script> - <script type="text/javascript" src="../../../pub/lib/mage/accordion.js"></script> - <script type="text/javascript" src="../../../pub/lib/mage/collapsible.js"></script> - <script type="text/javascript" src="testsuite/mage/accordion/accordion.js"></script> -</head> -<body> -<div id="qunit"></div> -<div id="qunit-fixture"> -</div> -</body> -</html> diff --git a/dev/tests/js/jasmine/tests/lib/mage/accordion.test.js b/dev/tests/js/jasmine/tests/lib/mage/accordion.test.js new file mode 100644 index 00000000000..a3536794634 --- /dev/null +++ b/dev/tests/js/jasmine/tests/lib/mage/accordion.test.js @@ -0,0 +1,81 @@ +/** + * Copyright © Magento, Inc. All rights reserved. + * See COPYING.txt for license details. + */ +define([ + 'jquery', + 'mage/accordion' +], function ($) { + 'use strict'; + + describe('Test for mage/accordion jQuery plugin', function () { + it('check if accordion can be initialized', function () { + var accordion = $("<div/>"); + + accordion.accordion(); + expect(accordion.is(':mage-accordion')).toBeTruthy(); + + accordion.accordion('destroy'); + expect(accordion.is(':mage-accordion')).toBeFalsy(); + }); + it('check one-collapsible element accordion', function () { + var accordion = $('<div/>'), + title1 = $('<div data-role="collapsible"></div>').appendTo(accordion), + content1 = $('<div data-role="content"></div>').appendTo(accordion), + title2 = $('<div data-role="collapsible"></div>').appendTo(accordion), + content2 = $('<div data-role="content"></div>').appendTo(accordion); + + accordion.appendTo("body"); + + accordion.accordion(); + + expect(accordion.is(':mage-accordion')).toBeTruthy(); + + expect(content1.is(':visible')).toBeTruthy(); + expect(content2.is(':hidden')).toBeTruthy(); + + title2.trigger('click'); + + expect(content1.is(':hidden')).toBeTruthy(); + expect(content2.is(':visible')).toBeTruthy(); + + title1.trigger('click'); + + expect(content1.is(':visible')).toBeTruthy(); + expect(content2.is(':hidden')).toBeTruthy(); + + accordion.accordion('destroy'); + + expect(accordion.is(':mage-accordion')).toBeFalsy(); + }); + it('check multi-collapsible element accordion', function () { + var accordion = $('<div/>'); + + $('<div data-role="collapsible"></div>').appendTo(accordion); + + var content1 = $('<div data-role="content"></div>').appendTo(accordion), + title2 = $('<div data-role="collapsible"></div>').appendTo(accordion), + content2 = $('<div data-role="content"></div>').appendTo(accordion); + + accordion.appendTo("body"); + + accordion.accordion({ + multipleCollapsible: true + }); + + expect(accordion.is(':mage-accordion')).toBeTruthy(); + + expect(content1.is(':visible')).toBeTruthy(); + expect(content2.is(':hidden')).toBeTruthy(); + + title2.trigger('click'); + + expect(content1.is(':visible')).toBeTruthy(); + expect(content2.is(':visible')).toBeTruthy(); + + accordion.accordion('destroy'); + + expect(accordion.is(':mage-accordion')).toBeFalsy(); + }); + }); +}); -- GitLab