From 8f72d5cedf83484567bb5b4d7ee0f21fc8621b9a Mon Sep 17 00:00:00 2001 From: Sergey Gaychuk Date: Thu, 22 Oct 2009 17:29:31 +0300 Subject: [PATCH] app: implement open/close actions for page, add fill action --- app/test/aaUITestFrame.jsm | 73 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) diff --git a/app/test/aaUITestFrame.jsm b/app/test/aaUITestFrame.jsm index cda5a0d..321acf1 100644 --- a/app/test/aaUITestFrame.jsm +++ b/app/test/aaUITestFrame.jsm @@ -136,3 +136,76 @@ function aaJSCommandOpenPageTest(input) { } return base; } + +/* +example for: +1. open +{ + cid: Components.ID(), + object: { + command: "cmd_view_entity" + } +} +2. close +{ + cid: Components.ID(), + object: { + command: "cmd_page1_submit", + checkF: null //function for check result page + } +} +example for extended actions: +[ + { + name: fill, + data: null //page specific data + }, +] +*/ +function aaJSTestPageModule(pgName) { + var base = JSTestPageModuleUI(); + + base._contractIDBase = "@aasii.org/abstract/test/"; + base._pageName = pgName; + base._version = 1; + + base._contractID = base._contractIDBase + base._pageName + "/page;" + base._version; + base._name = "aaPage_" + base._pageName; + + base.generateContractID = function(inner_str) { + return this._contractIDBase + this._pageName + "/" + inner_str + ";" + this._version; + } + + base.JSTestPage_parseAction = base.parseAction; + base.parseAction = function(action) { + switch(action.name) { + case 'fill': + this.addFillTest(action.data); + return true; + break; + } + return this.JSTestPage_parseAction(action); + } + base.addCommandPageOpenTest = function(data) { + this._add(aaJSCommandOpenPageTest(data)); + } + base.addCommandTest = function(data) { + this._add(aaJSDoCommandTest(data)); + } + base.addFillTest = null; + base.checkPage = function(runner) { + this.addJSFailure(runner, "aaJSTestPage.checkPage - not implemented"); + } + base.addOpenPage = function(data) { + data.contractID = this.generateContractID("open" + this._parse_counter + "/" + data.object.command); + data.name = "aaPage_" + this._pageName + "_Open" + this._parse_counter + "_" + data.object.command; + data.object.checkF = this.checkPage; + this.addCommandPageOpenTest(data); + } + base.addClosePage = function(data) { + data.contractID = this.generateContractID("close" + this._parse_counter + "/" + data.object.command); + data.name = "aaPage_" + this._pageName + "_Close" + this._parse_counter + "_" + data.object.command; + this.addCommandPageOpenTest(data); + } + return base; +} -- 2.11.4.GIT