{ "app" : "messagesoverlay", "tests" : [{ "description": "Test handler backgrounding", "steps" : [ {"t":"upload", "file": "modules/widget_utils.js", "as": "widget_utils"}, {"t":"cmd", "js": "Bangle.loadWidgets()", "text": "Load widgets"}, {"t":"assertArray", "js": "Bangle['#onswipe']", "is":"undefinedOrEmpty", "text": "No swipe handlers"}, {"t":"cmd", "js": "require('widget_utils').swipeOn(0)", "text": "Store widgets in overlay"}, {"t":"assert", "js": "Bangle['#onswipe']", "is":"function", "text": "One swipe handler for widgets"}, {"t":"emit", "event":"swipe", "paramsArray": [ 0, 1 ], "text": "Show widgets"}, {"t":"assert", "js": "Bangle['#onswipe']", "is":"function", "text": "One swipe handler for widgets"}, {"t":"cmd", "js": "require('messagesoverlay').message('text', {src:'Messenger',t:'add',type:'text',id:Date.now().toFixed(0),title:'title',body:'body'})", "text": "Show a message overlay"}, {"t":"assertArray", "js": "Bangle['#onswipe']", "is":"undefinedOrEmpty", "text": "No swipe handlers while message overlay is on screen"}, {"t":"emit", "event":"touch", "paramsArray": [ 1, { "x": 10, "y": 10, "type": 0 } ], "text": "Close message"}, {"t":"assert", "js": "Bangle['#onswipe']", "is":"function", "text": "One swipe handler restored"} ] },{ "description": "Test handler backgrounding with fastloading (setUI)", "steps" : [ {"t":"cmd", "js": "Bangle.on('swipe',print)", "text": "Create listener for swipes"}, {"t":"cmd", "js": "Bangle.setUI({mode: 'clock',remove: ()=>{}})", "text": "Init UI for clock"}, {"t":"cmd", "js": "require('messagesoverlay').message('text', {src:'Messenger',t:'add',type:'text',id:Date.now().toFixed(0),title:'title',body:'body'})", "text": "Show a message overlay"}, {"t":"assertArray", "js": "Bangle['#onswipe']", "is":"undefinedOrEmpty", "text": "No swipe handlers while message overlay is on screen"}, {"t":"cmd", "js": "Bangle.setUI()", "text": "Trigger removal of UI"}, {"t":"assertArray", "js": "Bangle['#onswipe']", "is":"undefinedOrEmpty", "text": "Still no swipe handlers"}, {"t":"cmd", "js": "Bangle.on('touch', print)"}, {"t":"emit", "event":"touch", "paramsArray": [ 1, { "x": 10, "y": 10, "type": 0 } ], "text": "Close message"}, {"t":"assert", "js": "Bangle['#onswipe']", "is":"function", "text": "One swipe handler restored"} ] }] }