Author: ygrego Date: 2015-02-18 17:15:33 +0000 (Wed, 18 Feb 2015) New Revision: 823 Url: http://forge.nuiton.org/projects/sandbox/repository/revisions/823 Log: Usage of method resolve and reject in tests methods to set promises and return information in asynchrone method. Modified: oipf/js/test/SearchManagerTest.js Modified: oipf/js/test/SearchManagerTest.js =================================================================== --- oipf/js/test/SearchManagerTest.js 2015-02-18 17:13:47 UTC (rev 822) +++ oipf/js/test/SearchManagerTest.js 2015-02-18 17:15:33 UTC (rev 823) @@ -4,43 +4,47 @@ * */ var SearchManagerTest = TestCase.extend({ - - searchManagerTest: null, - - init: function() { - - }, - - testInstanceCreation: function() { - var state = "Pending"; - console.log("[TEST-RUNNING][Info] Id: smTestInstanceCreation, Label: Object creation, State: "+state); - this.searchManagerTest = oipfObjectFactory.createSearchManagerObject(); - - this.assertNotNull(this.searchManagerTest); - this.assertNotUndefined(this.searchManagerTest); - - state = "Finished"; - console.log("[TEST-RUNNING][Info] Id: smTestInstanceCreation, Label: Object creation, State: "+state); - - return true; - }, - - testGetCurrentProgram: function(searchTarget, channel, startTime, offset, count) { - var searchManagerObject = oipfObjectFactory.createSearchManagerObject(); - var stat = "Pending"; - console.log("[TEST-RUNNING][Info] "+"Id: smTestGetCurrentProgram, Label: Obtain current program according to oipf norm, State: "+stat); - searchManagerObject.onMetadataSearch = function(search, state) { + searchManagerTest: null, + init: function () { + }, + testInstanceCreation: function (resolve, reject) { + var state = "Pending"; + console.log("[TEST-RUNNING][Info] Id: smTestInstanceCreation, Label: Object creation, State: " + state); + this.searchManagerTest = oipfObjectFactory.createSearchManagerObject(); + + if ((this.assertNotNull(this.searchManagerTest) === true) && (this.assertNotUndefined(this.searchManagerTest))) { + state = "Successfull"; + console.log("[TEST-RUNNING][Info] Id: smTestInstanceCreation, Label: Object creation, State: " + state); + resolve(state); + } else { + state = "Failure"; + console.log("[TEST-RUNNING][Info] Id: smTestInstanceCreation, Label: Object creation, State: " + state); + reject(new Error(state)); + } + }, + testGetCurrentProgram: function (resolve, reject) { + var searchManagerObject = oipfObjectFactory.createSearchManagerObject(); + var stat = "Pending"; + console.log("[TEST-RUNNING][Info] " + "Id: smTestGetCurrentProgram, Label: Obtain current program according to oipf norm, State: " + stat); + var self = this; + + searchManagerObject.onMetadataSearch = function (search, state) { + console.log("[INFO]: onMetadataSearch called"); - switch(state) { + switch (state) { case 0: - - console.log("[INFO] Result found."); - //console.log(search.result[0]); - stat = "Finished"; - console.log("[TEST-RUNNING][Info] "+"Id: smTestGetCurrentProgram, Label: Obtain current program according to oipf norm, State: "+stat); + if (self.assertNotNull(search.result[0]) === true) { + stat = "Success"; + console.log("[TEST-RUNNING][Info] " + "Id: smTestGetCurrentProgram, Label: Obtain current program according to oipf norm, State: " + stat); + resolve("Success"); + } else { + stat = "Failed"; + console.log("[TEST-RUNNING][Info] " + "Id: smTestGetCurrentProgram, Label: Obtain current program according to oipf norm, State: " + stat); + reject(new Error("Failed")); + } break; case 3: @@ -59,13 +63,17 @@ console.log("Unknow state"); } - return true; }; + var channelConfig = oipfObjectFactory.createChannelConfig(); + var searchTarget = 1; var metaDataSearch = searchManagerObject.createSearch(searchTarget); + var startTime = null; metaDataSearch.findProgrammesFromStream(channelConfig.currentChannel, startTime); + var offset = 0; + var count = 1; metaDataSearch.result.getResults(offset, count); - //metaDataSearch.result[0];Must return undefined else wrong behaviour of this method + //metaDataSearch.result[0];Must return undefined else wrong behaviour of this method } - + }); \ No newline at end of file