Best JavaScript code snippet using appium-base-driver
1_testInvoiceManager.js
Source:1_testInvoiceManager.js
...7 const manager = await InvoiceManager.deployed();8 const storage = await InvoiceStorage.deployed();9 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);10 await manager.approveInvoice(1, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);11 assert.equal(await storage.getStatus(0), 1);12 assert.deepEqual(await storage.getDataHash(0), [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')]);13 numOfInvoices++;14 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);15 });16 it('approve same invoice and same bank bad status, no duplicates fail', async () => {17 const storage = await InvoiceStorage.deployed();18 const manager = await InvoiceManager.deployed();19 assert.equal(await storage.getStatus(0), 1);20 for (var i = 1; i <= 10; i++) {21 if (i !== 3) {22 await storage.setStatus(0, i);23 await manager.approveInvoice(1, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);24 assert.notEqual(await storage.getStatus(0), 3);25 }26 }27 await storage.setStatus(0, 1);28 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);29 });30 it('reverse non-existent invoice fail', async () => {31 const storage = await InvoiceStorage.deployed();32 const manager = await InvoiceManager.deployed();33 await manager.reverseInvoice(2, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);34 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);35 });36 it('reverse existing non-approved invoice, no duplicates fail', async () => {37 const storage = await InvoiceStorage.deployed();38 const manager = await InvoiceManager.deployed();39 assert.equal(await storage.getStatus(0), 1);40 for (var i = 1; i <= 10; i++) {41 if (i !== 1) {42 await storage.setStatus(0, i);43 await manager.reverseInvoice(1, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);44 assert.equal(await storage.getStatus(0), i);45 }46 }47 await storage.setStatus(0, 1);48 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);49 });50 it('reverse existing approved invoice, no duplicates success', async () => {51 const storage = await InvoiceStorage.deployed();52 const manager = await InvoiceManager.deployed();53 assert.equal(await storage.getStatus(0), 1);54 await manager.reverseInvoice(1, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);55 assert.equal(await storage.getStatus(0), 3);56 assert.deepEqual(await storage.getDataHash(0), [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')]);57 });58 it('approve existing not reversed invoice, no duplicates fail', async () => {59 const storage = await InvoiceStorage.deployed();60 const manager = await InvoiceManager.deployed();61 assert.deepEqual(await storage.getDataHash(0), [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')]);62 for (var i = 2; i <= 10; i++) {63 if (i !== 3) {64 await storage.setStatus(0, i);65 await manager.approveInvoice(1, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);66 assert.equal(await storage.getStatus(0), i);67 }68 }69 await storage.setStatus(0, 3);70 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);71 });72 it('approve existing reversed invoice, no duplicates success', async () => {73 const storage = await InvoiceStorage.deployed();74 const manager = await InvoiceManager.deployed();75 assert.equal(await storage.getStatus(0), 3);76 await manager.approveInvoice(1, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);77 assert.equal(await storage.getStatus(0), 1);78 assert.deepEqual(await storage.getDataHash(0), [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')]);79 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);80 });81 it('finance non-existent invoice fail', async () => {82 const storage = await InvoiceStorage.deployed();83 const manager = await InvoiceManager.deployed();84 await manager.financeInvoice(2, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);85 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);86 });87 it('finance existing non-approved invoice, no duplicates fail', async () => {88 const storage = await InvoiceStorage.deployed();89 const manager = await InvoiceManager.deployed();90 assert.equal(await storage.getStatus(0), 1);91 for (var i = 2; i <= 10; i++) {92 if (i !== 1) {93 await storage.setStatus(0, i);94 await manager.financeInvoice(1, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);95 assert.equal(await storage.getStatus(0), i);96 }97 }98 await storage.setStatus(0, 1);99 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);100 });101 it('finance existing approved invoice, no duplicates success', async () => {102 const storage = await InvoiceStorage.deployed();103 const manager = await InvoiceManager.deployed();104 await manager.financeInvoice(1, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);105 assert.equal(await storage.getStatus(0), 2);106 assert.deepEqual(await storage.getDataHash(0), [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')]);107 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);108 });109 it('approve same invoice and different bank, one wrong status duplicate fail', async () => {110 const storage = await InvoiceStorage.deployed();111 const manager = await InvoiceManager.deployed();112 await manager.approveInvoice(1, [web3.utils.soliditySha3('second'), web3.utils.soliditySha3('wind')], 222);113 assert.equal(await storage.getStatus(1), 1);114 assert.deepEqual(await storage.getDataHash(1), [web3.utils.soliditySha3('second'), web3.utils.soliditySha3('wind')]);115 numOfInvoices++;116 for (var i = 4; i <= 10; i++) {117 await storage.setStatus(1, i);118 await manager.approveInvoice(2, [web3.utils.soliditySha3('second'), web3.utils.soliditySha3('wind')], 222);119 }120 await storage.setStatus(1, 1);121 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);122 });123 it('approve same invoice and different bank, one financed duplicate success', async () => {124 const storage = await InvoiceStorage.deployed();125 const manager = await InvoiceManager.deployed();126 await manager.approveInvoice(2, [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')], 222);127 assert.equal(await storage.getStatus(0), 6);128 assert.equal(await storage.getStatus(2), 5);129 assert.deepEqual(await storage.getDataHash(0), [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')]);130 assert.deepEqual(await storage.getDataHash(2), [web3.utils.soliditySha3('hello'), web3.utils.soliditySha3('world')]);131 numOfInvoices++;132 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);133 });134 it('approve same invoice and different bank, one approved duplicate success', async () => {135 const storage = await InvoiceStorage.deployed();136 const manager = await InvoiceManager.deployed();137 await manager.approveInvoice(1, [web3.utils.soliditySha3('third'), web3.utils.soliditySha3('bird')], 222);138 assert.equal(await storage.getStatus(3), 1);139 await manager.approveInvoice(2, [web3.utils.soliditySha3('third'), web3.utils.soliditySha3('bird')], 222);140 assert.equal(await storage.getStatus(3), 4);141 assert.equal(await storage.getStatus(4), 4);142 numOfInvoices += 2;143 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);144 });145 it('approve same invoice and different bank, one reversed duplicate success', async () => {146 const storage = await InvoiceStorage.deployed();147 const manager = await InvoiceManager.deployed();148 await manager.approveInvoice(1, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);149 assert.equal(await storage.getStatus(5), 1);150 await manager.reverseInvoice(1, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);151 assert.equal(await storage.getStatus(5), 3);152 await manager.approveInvoice(2, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);153 assert.equal(await storage.getStatus(5), 8);154 assert.equal(await storage.getStatus(6), 1);155 numOfInvoices += 2;156 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);157 });158 it('approve existing status 8 invoice, one approved duplicate success', async () => {159 const storage = await InvoiceStorage.deployed();160 const manager = await InvoiceManager.deployed();161 assert.equal(await storage.getStatus(5), 8);162 assert.equal(await storage.getStatus(6), 1);163 await manager.approveInvoice(1, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);164 assert.equal(await storage.getStatus(5), 4);165 assert.equal(await storage.getStatus(6), 4);166 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);167 });168 it('reverse approved invoice, one wrong status duplicate fail', async () => {169 const storage = await InvoiceStorage.deployed();170 const manager = await InvoiceManager.deployed();171 assert.deepEqual(await storage.getDataHash(5), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);172 assert.deepEqual(await storage.getDataHash(6), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);173 assert.equal(await storage.getStatus(5), 4);174 assert.equal(await storage.getStatus(6), 4);175 for (var i = 1; i <= 10; i++) {176 if(i !== 4 && i !== 6 && i !== 8) {177 await storage.setStatus(6, i);178 await manager.reverseInvoice(1, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);179 assert.equal(await storage.getStatus(5), 4);180 assert.equal(await storage.getStatus(6), i);181 }182 }183 await storage.setStatus(6, 4);184 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);185 });186 it('finance approved invoice, one wrong status duplicate fail', async () => {187 const storage = await InvoiceStorage.deployed();188 const manager = await InvoiceManager.deployed();189 assert.deepEqual(await storage.getDataHash(5), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);190 assert.deepEqual(await storage.getDataHash(6), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);191 assert.equal(await storage.getStatus(5), 4);192 assert.equal(await storage.getStatus(6), 4);193 for (var i = 1; i <= 10; i++) {194 if(i !== 4 && i !== 6 && i !== 8) {195 await storage.setStatus(6, i);196 await manager.financeInvoice(1, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);197 assert.equal(await storage.getStatus(5), 4);198 assert.equal(await storage.getStatus(6), i);199 }200 }201 await storage.setStatus(6, 4);202 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);203 });204 it('reverse approved invoice, one status 4 duplicate success', async () => {205 const storage = await InvoiceStorage.deployed();206 const manager = await InvoiceManager.deployed();207 assert.deepEqual(await storage.getDataHash(5), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);208 assert.deepEqual(await storage.getDataHash(6), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);209 assert.equal(await storage.getStatus(5), 4);210 assert.equal(await storage.getStatus(6), 4);211 await manager.reverseInvoice(1, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);212 assert.equal(await storage.getStatus(5), 8);213 assert.equal(await storage.getStatus(6), 1);214 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);215 });216 it('reverse approved invoice, one status 8 duplicate success', async () => {217 const storage = await InvoiceStorage.deployed();218 const manager = await InvoiceManager.deployed();219 assert.deepEqual(await storage.getDataHash(5), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);220 assert.deepEqual(await storage.getDataHash(6), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);221 assert.equal(await storage.getStatus(5), 8);222 assert.equal(await storage.getStatus(6), 1);223 await manager.reverseInvoice(2, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);224 assert.equal(await storage.getStatus(5), 3);225 assert.equal(await storage.getStatus(6), 3);226 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);227 });228 it('finance approved invoice, one status 8 duplicate success', async () => {229 const storage = await InvoiceStorage.deployed();230 const manager = await InvoiceManager.deployed();231 await manager.approveInvoice(2, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);232 assert.equal(await storage.getStatus(5), 8);233 assert.equal(await storage.getStatus(6), 1);234 assert.deepEqual(await storage.getDataHash(5), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);235 assert.deepEqual(await storage.getDataHash(6), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);236 await manager.financeInvoice(2, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);237 assert.equal(await storage.getStatus(5), 9);238 assert.equal(await storage.getStatus(6), 2);239 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);240 });241 it('finance approved invoice, one status 4 duplicate success', async () => {242 const storage = await InvoiceStorage.deployed();243 const manager = await InvoiceManager.deployed();244 await manager.approveInvoice(1, [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')], 222);245 await manager.approveInvoice(2, [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')], 222);246 await manager.financeInvoice(1, [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')], 222);247 assert.equal(await storage.getStatus(7), 6);248 assert.equal(await storage.getStatus(8), 5);249 assert.deepEqual(await storage.getDataHash(7), [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')]);250 assert.deepEqual(await storage.getDataHash(8), [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')]);251 numOfInvoices += 2;252 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);253 });254 it('reverse approved invoice, one status 6 duplicate success', async () => {255 const storage = await InvoiceStorage.deployed();256 const manager = await InvoiceManager.deployed();257 assert.deepEqual(await storage.getDataHash(7), [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')]);258 assert.deepEqual(await storage.getDataHash(8), [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')]);259 assert.equal(await storage.getStatus(7), 6);260 assert.equal(await storage.getStatus(8), 5);261 await manager.reverseInvoice(2, [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')], 222);262 assert.equal(await storage.getStatus(7), 2);263 assert.equal(await storage.getStatus(8), 9);264 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);265 });266 it('finance approved invoice, one status 6 duplicate success', async () => {267 const storage = await InvoiceStorage.deployed();268 const manager = await InvoiceManager.deployed();269 await manager.approveInvoice(2, [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')], 222);270 assert.equal(await storage.getStatus(7), 6);271 assert.equal(await storage.getStatus(8), 5);272 assert.deepEqual(await storage.getDataHash(7), [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')]);273 assert.deepEqual(await storage.getDataHash(8), [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')]);274 await manager.financeInvoice(2, [web3.utils.soliditySha3('fifth'), web3.utils.soliditySha3('force')], 222);275 assert.equal(await storage.getStatus(7), 7);276 assert.equal(await storage.getStatus(8), 7);277 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);278 });279 it('approve same invoice and different bank, multiple duplicates status 6 success', async () => {280 const storage = await InvoiceStorage.deployed();281 const manager = await InvoiceManager.deployed();282 await manager.approveInvoice(1, [web3.utils.soliditySha3('sixth'), web3.utils.soliditySha3('sense')], 222);283 await manager.approveInvoice(2, [web3.utils.soliditySha3('sixth'), web3.utils.soliditySha3('sense')], 222);284 await manager.financeInvoice(1, [web3.utils.soliditySha3('sixth'), web3.utils.soliditySha3('sense')], 222);285 assert.equal(await storage.getStatus(9), 6);286 assert.equal(await storage.getStatus(10), 5);287 await manager.approveInvoice(3, [web3.utils.soliditySha3('sixth'), web3.utils.soliditySha3('sense')], 222);288 assert.equal(await storage.getStatus(9), 6);289 assert.equal(await storage.getStatus(10), 5);290 assert.equal(await storage.getStatus(11), 5);291 assert.deepEqual(await storage.getDataHash(9), [web3.utils.soliditySha3('sixth'), web3.utils.soliditySha3('sense')]);292 assert.deepEqual(await storage.getDataHash(10), [web3.utils.soliditySha3('sixth'), web3.utils.soliditySha3('sense')]);293 assert.deepEqual(await storage.getDataHash(11), [web3.utils.soliditySha3('sixth'), web3.utils.soliditySha3('sense')]);294 numOfInvoices += 3;295 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);296 });297 it('approve same invoice and different bank, multiple duplicates status 2 success', async () => {298 const storage = await InvoiceStorage.deployed();299 const manager = await InvoiceManager.deployed();300 assert.deepEqual(await storage.getDataHash(5), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);301 assert.deepEqual(await storage.getDataHash(6), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);302 assert.equal(await storage.getStatus(5), 9);303 assert.equal(await storage.getStatus(6), 2);304 await manager.approveInvoice(3, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);305 assert.equal(await storage.getStatus(5), 9);306 assert.equal(await storage.getStatus(6), 6);307 assert.equal(await storage.getStatus(12), 5);308 assert.deepEqual(await storage.getDataHash(5), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);309 assert.deepEqual(await storage.getDataHash(6), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);310 assert.deepEqual(await storage.getDataHash(12), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);311 numOfInvoices++;312 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);313 });314 it('reverse same invoice and same bank, multiple duplicates status 6 success', async () => {315 const storage = await InvoiceStorage.deployed();316 const manager = await InvoiceManager.deployed();317 assert.deepEqual(await storage.getDataHash(5), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);318 assert.deepEqual(await storage.getDataHash(6), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);319 assert.deepEqual(await storage.getDataHash(12), [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')]);320 await manager.approveInvoice(1, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);321 assert.equal(await storage.getStatus(5), 5);322 assert.equal(await storage.getStatus(6), 6);323 assert.equal(await storage.getStatus(12), 5);324 await manager.reverseInvoice(1, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);325 assert.equal(await storage.getStatus(5), 9);326 assert.equal(await storage.getStatus(6), 6);327 assert.equal(await storage.getStatus(12), 5);328 await manager.reverseInvoice(3, [web3.utils.soliditySha3('fourth'), web3.utils.soliditySha3('amendment')], 222);329 assert.equal(await storage.getStatus(5), 9);330 assert.equal(await storage.getStatus(6), 2);331 assert.equal(await storage.getStatus(12), 9);332 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);333 });334 it('approve same invoice and different bank, multiple duplicates status 1 success', async () => {335 const storage = await InvoiceStorage.deployed();336 const manager = await InvoiceManager.deployed();337 await manager.approveInvoice(1, [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')], 222);338 await manager.approveInvoice(2, [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')], 222);339 await manager.reverseInvoice(2, [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')], 222);340 assert.equal(await storage.getStatus(13), 1);341 assert.equal(await storage.getStatus(14), 8);342 await manager.approveInvoice(3, [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')], 222);343 assert.equal(await storage.getStatus(13), 4);344 assert.equal(await storage.getStatus(14), 8);345 assert.equal(await storage.getStatus(15), 4);346 assert.deepEqual(await storage.getDataHash(13), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);347 assert.deepEqual(await storage.getDataHash(14), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);348 assert.deepEqual(await storage.getDataHash(15), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);349 numOfInvoices += 3;350 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);351 });352 it('approve same invoice and same bank, multiple duplicates status 4 success', async () => {353 const storage = await InvoiceStorage.deployed();354 const manager = await InvoiceManager.deployed();355 assert.deepEqual(await storage.getDataHash(13), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);356 assert.deepEqual(await storage.getDataHash(14), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);357 assert.deepEqual(await storage.getDataHash(15), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);358 assert.equal(await storage.getStatus(13), 4);359 assert.equal(await storage.getStatus(14), 8);360 assert.equal(await storage.getStatus(15), 4);361 await manager.approveInvoice(2, [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')], 222);362 assert.equal(await storage.getStatus(13), 4);363 assert.equal(await storage.getStatus(14), 4);364 assert.equal(await storage.getStatus(15), 4);365 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);366 });367 it('reverse same invoice and same bank, multiple duplicates status 4 success', async () => {368 const storage = await InvoiceStorage.deployed();369 const manager = await InvoiceManager.deployed();370 assert.deepEqual(await storage.getDataHash(13), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);371 assert.deepEqual(await storage.getDataHash(14), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);372 assert.deepEqual(await storage.getDataHash(15), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);373 assert.equal(await storage.getStatus(13), 4);374 assert.equal(await storage.getStatus(14), 4);375 assert.equal(await storage.getStatus(15), 4);376 await manager.reverseInvoice(1, [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')], 222);377 assert.equal(await storage.getStatus(13), 8);378 assert.equal(await storage.getStatus(14), 4);379 assert.equal(await storage.getStatus(15), 4);380 await manager.reverseInvoice(2, [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')], 222);381 assert.equal(await storage.getStatus(13), 8);382 assert.equal(await storage.getStatus(14), 8);383 assert.equal(await storage.getStatus(15), 1);384 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);385 });386 it('reverse same invoice and same bank, multiple duplicates status 8 ONLY success', async () => {387 const storage = await InvoiceStorage.deployed();388 const manager = await InvoiceManager.deployed();389 assert.deepEqual(await storage.getDataHash(13), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);390 assert.deepEqual(await storage.getDataHash(14), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);391 assert.deepEqual(await storage.getDataHash(15), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);392 assert.equal(await storage.getStatus(13), 8);393 assert.equal(await storage.getStatus(14), 8);394 assert.equal(await storage.getStatus(15), 1);395 await manager.reverseInvoice(3, [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')], 222);396 assert.equal(await storage.getStatus(13), 3);397 assert.equal(await storage.getStatus(14), 3);398 assert.equal(await storage.getStatus(15), 3);399 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);400 });401 it('approve same invoice and different bank, multiple duplicates status 3 ONLY success', async () => {402 const storage = await InvoiceStorage.deployed();403 const manager = await InvoiceManager.deployed();404 assert.deepEqual(await storage.getDataHash(13), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);405 assert.deepEqual(await storage.getDataHash(14), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);406 assert.deepEqual(await storage.getDataHash(15), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);407 assert.equal(await storage.getStatus(13), 3);408 assert.equal(await storage.getStatus(14), 3);409 assert.equal(await storage.getStatus(15), 3);410 await manager.approveInvoice(1, [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')], 222);411 assert.equal(await storage.getStatus(13), 1);412 assert.equal(await storage.getStatus(14), 8);413 assert.equal(await storage.getStatus(15), 8);414 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);415 });416 it('approve same invoice and different bank, multiple duplicates status 8 ONLY success', async () => {417 const storage = await InvoiceStorage.deployed();418 const manager = await InvoiceManager.deployed();419 await manager.approveInvoice(1, [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')], 222);420 await manager.approveInvoice(2, [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')], 222);421 assert.equal(await storage.getStatus(16), 4);422 assert.equal(await storage.getStatus(17), 4);423 await manager.approveInvoice(3, [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')], 222);424 assert.equal(await storage.getStatus(16), 4);425 assert.equal(await storage.getStatus(17), 4);426 assert.equal(await storage.getStatus(18), 4);427 assert.deepEqual(await storage.getDataHash(16), [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')]);428 assert.deepEqual(await storage.getDataHash(17), [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')]);429 assert.deepEqual(await storage.getDataHash(18), [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')]);430 numOfInvoices += 3;431 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);432 });433 it('finance same invoice and same bank, multiple duplicates status 4 success', async () => {434 const storage = await InvoiceStorage.deployed();435 const manager = await InvoiceManager.deployed();436 await manager.approveInvoice(1, [web3.utils.soliditySha3('ninth'), web3.utils.soliditySha3('cloud')], 222);437 await manager.approveInvoice(2, [web3.utils.soliditySha3('ninth'), web3.utils.soliditySha3('cloud')], 222);438 await manager.approveInvoice(3, [web3.utils.soliditySha3('ninth'), web3.utils.soliditySha3('cloud')], 222);439 assert.deepEqual(await storage.getDataHash(19), [web3.utils.soliditySha3('ninth'), web3.utils.soliditySha3('cloud')]);440 assert.deepEqual(await storage.getDataHash(20), [web3.utils.soliditySha3('ninth'), web3.utils.soliditySha3('cloud')]);441 assert.deepEqual(await storage.getDataHash(21), [web3.utils.soliditySha3('ninth'), web3.utils.soliditySha3('cloud')]);442 assert.equal(await storage.getStatus(19), 4);443 assert.equal(await storage.getStatus(20), 4);444 assert.equal(await storage.getStatus(21), 4);445 await manager.reverseInvoice(1, [web3.utils.soliditySha3('ninth'), web3.utils.soliditySha3('cloud')], 222);446 assert.equal(await storage.getStatus(19), 8);447 assert.equal(await storage.getStatus(20), 4);448 assert.equal(await storage.getStatus(21), 4);449 await manager.financeInvoice(2, [web3.utils.soliditySha3('ninth'), web3.utils.soliditySha3('cloud')], 222);450 assert.equal(await storage.getStatus(19), 9);451 assert.equal(await storage.getStatus(20), 6);452 assert.equal(await storage.getStatus(21), 5);453 await manager.financeInvoice(1, [web3.utils.soliditySha3('ninth'), web3.utils.soliditySha3('cloud')], 222);454 assert.equal(await storage.getStatus(19), 9);455 assert.equal(await storage.getStatus(20), 6);456 assert.equal(await storage.getStatus(21), 5);457 numOfInvoices += 3;458 assert.deepEqual(await storage.getDataHash(16), [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')]);459 assert.deepEqual(await storage.getDataHash(17), [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')]);460 assert.deepEqual(await storage.getDataHash(18), [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')]);461 assert.equal(await storage.getStatus(16), 4);462 assert.equal(await storage.getStatus(17), 4);463 assert.equal(await storage.getStatus(18), 4);464 await manager.financeInvoice(1, [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')], 222);465 assert.equal(await storage.getStatus(16), 6);466 assert.equal(await storage.getStatus(17), 5);467 assert.equal(await storage.getStatus(18), 5);468 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);469 });470 it('finance same invoice and same bank, multiple duplicates status 7 success', async () => {471 const storage = await InvoiceStorage.deployed();472 const manager = await InvoiceManager.deployed();473 assert.deepEqual(await storage.getDataHash(16), [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')]);474 assert.deepEqual(await storage.getDataHash(17), [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')]);475 assert.deepEqual(await storage.getDataHash(18), [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')]);476 assert.equal(await storage.getStatus(16), 6);477 assert.equal(await storage.getStatus(17), 5);478 assert.equal(await storage.getStatus(18), 5);479 await manager.financeInvoice(2, [web3.utils.soliditySha3('eighth'), web3.utils.soliditySha3('gate')], 222);480 assert.equal(await storage.getStatus(16), 7);481 assert.equal(await storage.getStatus(17), 7);482 assert.equal(await storage.getStatus(18), 5);483 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);484 });485 it('finance same invoice and same bank, multiple duplicates status 8 ONLY success', async () => {486 const storage = await InvoiceStorage.deployed();487 const manager = await InvoiceManager.deployed();488 assert.deepEqual(await storage.getDataHash(13), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);489 assert.deepEqual(await storage.getDataHash(14), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);490 assert.deepEqual(await storage.getDataHash(15), [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')]);491 assert.equal(await storage.getStatus(13), 1);492 assert.equal(await storage.getStatus(14), 8);493 assert.equal(await storage.getStatus(15), 8);494 await manager.financeInvoice(1, [web3.utils.soliditySha3('seventh'), web3.utils.soliditySha3('heaven')], 222);495 assert.equal(await storage.getStatus(13), 2);496 assert.equal(await storage.getStatus(14), 9);497 assert.equal(await storage.getStatus(15), 9);498 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);499 });500 it('approve same invoice and same bank, multiple duplicates bad status (does not add invoice) fail', async () => {501 const storage = await InvoiceStorage.deployed();502 const manager = await InvoiceManager.deployed();503 await manager.approveInvoice(1, [web3.utils.soliditySha3('tenth'), web3.utils.soliditySha3('hen')], 222);504 await manager.approveInvoice(2, [web3.utils.soliditySha3('tenth'), web3.utils.soliditySha3('hen')], 222);505 await storage.setStatus(22, 9);506 await storage.setStatus(23, 9);507 await manager.approveInvoice(3, [web3.utils.soliditySha3('tenth'), web3.utils.soliditySha3('hen')], 222);508 assert.equal(await storage.getStatus(22), 9);509 assert.equal(await storage.getStatus(23), 9);510 numOfInvoices += 2;511 assert.equal((await storage.getNumOfInvoices()), numOfInvoices);512 });513 // await expectRevert(manager.useCode(514 // codeHashJSON.codeHashes[1],515 // { from: accounts[0] }516 // ), 'only voting machine has access');...
schedule.draf.js
Source:schedule.draf.js
...235 item.icon = 'fa-calendar-o'236 item.colorIcon = 'blue'237 }238 if (item.schd_d01_m != null) {239 item.schd_d01_m = jet.getStatus(item.schd_d01_m)240 }241 if (item.schd_d01_a != null) {242 item.schd_d01_a = jet.getStatus(item.schd_d01_a)243 }244 if (item.schd_d01_n != null) {245 item.schd_d01_n = jet.getStatus(item.schd_d01_n)246 }247 if (item.schd_d02_m != null) {248 item.schd_d02_m = jet.getStatus(item.schd_d02_m)249 }250 if (item.schd_d02_a != null) {251 item.schd_d02_a = jet.getStatus(item.schd_d02_a)252 }253 if (item.schd_d02_n != null) {254 item.schd_d02_n = jet.getStatus(item.schd_d02_n)255 }256 if (item.schd_d03_m != null) {257 item.schd_d03_m = jet.getStatus(item.schd_d03_m)258 }259 if (item.schd_d03_a != null) {260 item.schd_d03_a = jet.getStatus(item.schd_d03_a)261 }262 if (item.schd_d03_n != null) {263 item.schd_d03_n = jet.getStatus(item.schd_d03_n)264 }265 if (item.schd_d04_m != null) {266 item.schd_d04_m = jet.getStatus(item.schd_d04_m)267 }268 if (item.schd_d04_a != null) {269 item.schd_d04_a = jet.getStatus(item.schd_d04_a)270 }271 if (item.schd_d04_n != null) {272 item.schd_d04_n = jet.getStatus(item.schd_d04_n)273 }274 if (item.schd_d05_m != null) {275 item.schd_d05_m = jet.getStatus(item.schd_d05_m)276 }277 if (item.schd_d05_a != null) {278 item.schd_d05_a = jet.getStatus(item.schd_d05_a)279 }280 if (item.schd_d05_n != null) {281 item.schd_d05_n = jet.getStatus(item.schd_d05_n)282 }283 if (item.schd_d06_m != null) {284 item.schd_d06_m = jet.getStatus(item.schd_d06_m)285 }286 if (item.schd_d06_a != null) {287 item.schd_d06_a = jet.getStatus(item.schd_d06_a)288 }289 if (item.schd_d06_n != null) {290 item.schd_d06_n = jet.getStatus(item.schd_d06_n)291 }292 if (item.schd_d07_m != null) {293 item.schd_d07_m = jet.getStatus(item.schd_d07_m)294 }295 if (item.schd_d07_a != null) {296 item.schd_d07_a = jet.getStatus(item.schd_d07_a)297 }298 if (item.schd_d07_n != null) {299 item.schd_d07_n = jet.getStatus(item.schd_d07_n)300 }301 if (item.schd_d08_m != null) {302 item.schd_d08_m = jet.getStatus(item.schd_d08_m)303 }304 if (item.schd_d08_a != null) {305 item.schd_d08_a = jet.getStatus(item.schd_d08_a)306 }307 if (item.schd_d08_n != null) {308 item.schd_d08_n = jet.getStatus(item.schd_d08_n)309 }310 if (item.schd_d09_m != null) {311 item.schd_d09_m = jet.getStatus(item.schd_d09_m)312 }313 if (item.schd_d09_a != null) {314 item.schd_d09_a = jet.getStatus(item.schd_d09_a)315 }316 if (item.schd_d09_n != null) {317 item.schd_d09_n = jet.getStatus(item.schd_d09_n)318 }319 if (item.schd_d10_m != null) {320 item.schd_d10_m = jet.getStatus(item.schd_d10_m)321 }322 if (item.schd_d10_a != null) {323 item.schd_d10_a = jet.getStatus(item.schd_d10_a)324 }325 if (item.schd_d10_n != null) {326 item.schd_d10_n = jet.getStatus(item.schd_d10_n)327 }328 if (item.schd_d11_m != null) {329 item.schd_d11_m = jet.getStatus(item.schd_d11_m)330 }331 if (item.schd_d11_a != null) {332 item.schd_d11_a = jet.getStatus(item.schd_d11_a)333 }334 if (item.schd_d11_n != null) {335 item.schd_d11_n = jet.getStatus(item.schd_d11_n)336 }337 if (item.schd_d12_m != null) {338 item.schd_d12_m = jet.getStatus(item.schd_d12_m)339 }340 if (item.schd_d12_a != null) {341 item.schd_d12_a = jet.getStatus(item.schd_d12_a)342 }343 if (item.schd_d12_n != null) {344 item.schd_d12_n = jet.getStatus(item.schd_d12_n)345 }346 if (item.schd_d13_m != null) {347 item.schd_d13_m = jet.getStatus(item.schd_d13_m)348 }349 if (item.schd_d13_a != null) {350 item.schd_d13_a = jet.getStatus(item.schd_d13_a)351 }352 if (item.schd_d13_n != null) {353 item.schd_d13_n = jet.getStatus(item.schd_d13_n)354 }355 if (item.schd_d14_m != null) {356 item.schd_d14_m = jet.getStatus(item.schd_d14_m)357 }358 if (item.schd_d14_a != null) {359 item.schd_d14_a = jet.getStatus(item.schd_d14_a)360 }361 if (item.schd_d14_n != null) {362 item.schd_d14_n = jet.getStatus(item.schd_d14_n)363 }364 if (item.schd_d15_m != null) {365 item.schd_d15_m = jet.getStatus(item.schd_d15_m)366 }367 if (item.schd_d15_a != null) {368 item.schd_d15_a = jet.getStatus(item.schd_d15_a)369 }370 if (item.schd_d15_n != null) {371 item.schd_d15_n = jet.getStatus(item.schd_d15_n)372 }373 if (item.schd_d16_m != null) {374 item.schd_d16_m = jet.getStatus(item.schd_d16_m)375 }376 if (item.schd_d16_a != null) {377 item.schd_d16_a = jet.getStatus(item.schd_d16_a)378 }379 if (item.schd_d16_n != null) {380 item.schd_d16_n = jet.getStatus(item.schd_d16_n)381 }382 if (item.schd_d17_m != null) {383 item.schd_d17_m = jet.getStatus(item.schd_d17_m)384 }385 if (item.schd_d17_a != null) {386 item.schd_d17_a = jet.getStatus(item.schd_d17_a)387 }388 if (item.schd_d17_n != null) {389 item.schd_d17_n = jet.getStatus(item.schd_d17_n)390 }391 if (item.schd_d18_m != null) {392 item.schd_d18_m = jet.getStatus(item.schd_d18_m)393 }394 if (item.schd_d18_a != null) {395 item.schd_d18_a = jet.getStatus(item.schd_d18_a)396 }397 if (item.schd_d18_n != null) {398 item.schd_d18_n = jet.getStatus(item.schd_d18_n)399 }400 if (item.schd_d19_m != null) {401 item.schd_d19_m = jet.getStatus(item.schd_d19_m)402 }403 if (item.schd_d19_a != null) {404 item.schd_d19_a = jet.getStatus(item.schd_d19_a)405 }406 if (item.schd_d19_n != null) {407 item.schd_d19_n = jet.getStatus(item.schd_d19_n)408 }409 if (item.schd_d20_m != null) {410 item.schd_d20_m = jet.getStatus(item.schd_d20_m)411 }412 if (item.schd_d20_a != null) {413 item.schd_d20_a = jet.getStatus(item.schd_d20_a)414 }415 if (item.schd_d20_n != null) {416 item.schd_d20_n = jet.getStatus(item.schd_d20_n)417 }418 if (item.schd_d21_m != null) {419 item.schd_d21_m = jet.getStatus(item.schd_d21_m)420 }421 if (item.schd_d21_a != null) {422 item.schd_d21_a = jet.getStatus(item.schd_d21_a)423 }424 if (item.schd_d21_n != null) {425 item.schd_d21_n = jet.getStatus(item.schd_d21_n)426 }427 if (item.schd_d22_m != null) {428 item.schd_d22_m = jet.getStatus(item.schd_d22_m)429 }430 if (item.schd_d22_a != null) {431 item.schd_d22_a = jet.getStatus(item.schd_d22_a)432 }433 if (item.schd_d22_n != null) {434 item.schd_d22_n = jet.getStatus(item.schd_d22_n)435 }436 if (item.schd_d23_m != null) {437 item.schd_d23_m = jet.getStatus(item.schd_d23_m)438 }439 if (item.schd_d23_a != null) {440 item.schd_d23_a = jet.getStatus(item.schd_d23_a)441 }442 if (item.schd_d23_n != null) {443 item.schd_d23_n = jet.getStatus(item.schd_d23_n)444 }445 if (item.schd_d24_m != null) {446 item.schd_d24_m = jet.getStatus(item.schd_d24_m)447 }448 if (item.schd_d24_a != null) {449 item.schd_d24_a = jet.getStatus(item.schd_d24_a)450 }451 if (item.schd_d24_n != null) {452 item.schd_d24_n = jet.getStatus(item.schd_d24_n)453 }454 if (item.schd_d25_m != null) {455 item.schd_d25_m = jet.getStatus(item.schd_d25_m)456 }457 if (item.schd_d25_a != null) {458 item.schd_d25_a = jet.getStatus(item.schd_d25_a)459 }460 if (item.schd_d25_n != null) {461 item.schd_d25_n = jet.getStatus(item.schd_d25_n)462 }463 if (item.schd_d26_m != null) {464 item.schd_d26_m = jet.getStatus(item.schd_d26_m)465 }466 if (item.schd_d26_a != null) {467 item.schd_d26_a = jet.getStatus(item.schd_d26_a)468 }469 if (item.schd_d26_n != null) {470 item.schd_d26_n = jet.getStatus(item.schd_d26_n)471 }472 if (item.schd_d27_m != null) {473 item.schd_d27_m = jet.getStatus(item.schd_d27_m)474 }475 if (item.schd_d27_a != null) {476 item.schd_d27_a = jet.getStatus(item.schd_d27_a)477 }478 if (item.schd_d27_n != null) {479 item.schd_d27_n = jet.getStatus(item.schd_d27_n)480 }481 if (item.schd_d28_m != null) {482 item.schd_d28_m = jet.getStatus(item.schd_d28_m)483 }484 if (item.schd_d28_a != null) {485 item.schd_d28_a = jet.getStatus(item.schd_d28_a)486 }487 if (item.schd_d28_n != null) {488 item.schd_d28_n = jet.getStatus(item.schd_d28_n)489 }490 if (item.schd_d29_m != null) {491 item.schd_d29_m = jet.getStatus(item.schd_d29_m)492 }493 if (item.schd_d29_a != null) {494 item.schd_d29_a = jet.getStatus(item.schd_d29_a)495 }496 if (item.schd_d29_n != null) {497 item.schd_d29_n = jet.getStatus(item.schd_d29_n)498 }499 if (item.schd_d30_m != null) {500 item.schd_d30_m = jet.getStatus(item.schd_d30_m)501 }502 if (item.schd_d30_a != null) {503 item.schd_d30_a = jet.getStatus(item.schd_d30_a)504 }505 if (item.schd_d30_n != null) {506 item.schd_d30_n = jet.getStatus(item.schd_d30_n)507 }508 if (item.schd_d31_m != null) {509 item.schd_d31_m = jet.getStatus(item.schd_d31_m)510 }511 if (item.schd_d31_a != null) {512 item.schd_d31_a = jet.getStatus(item.schd_d31_a)513 }514 if (item.schd_d31_n != null) {515 item.schd_d31_n = jet.getStatus(item.schd_d31_n)516 }517 // get ot518 // $http({519 // url:'API/LISTOFVALUE/sumDataTable.php',520 // method:'POST',521 // data:{522 // 'user_id':item.Mem_ID,523 // 'month_no':$scope.schObj.MONTHNO,524 // 'year_no':$scope.schObj.YEAR,525 // 'ward_no':$scope.schObj.COSTID526 // }527 // }).then(function (resp){528 // $scope.sumTotal = resp.data;529 $http({530 url:'API/DRAF/getUserSumOTData.php',531 method:'POST',532 data:{533 'user_id':item.Mem_ID,534 'month_id':$scope.schObj.MONTHNO,535 'year_id':$scope.schObj.YEAR,536 'ward_id':$scope.schObj.COSTID537 }538 }).then(function (resp){539 item.cTotal = resp.data;540 $scope.OTTotal = $scope.OTTotal + item.cTotal541 $rootScope.criteria.OTTotal = $rootScope.criteria.OTTotal + parseInt(item.cTotal)542 })543 $http({544 url:'API/DRAF/getUserSumHRData.php',545 method:'POST',546 data:{547 'user_id':item.Mem_ID,548 'month_id':$scope.schObj.MONTHNO,549 'year_id':$scope.schObj.YEAR,550 'ward_id':$scope.schObj.COSTID551 }552 }).then(function (resp){553 item.cHour = resp.data;554 if(item.schd_mphr == 0){555 item.cOT = parseInt(item.cHour)*(parseInt(item.Position_OTRate)/8)556 } else {557 item.cOT = parseInt(item.cHour)*(parseInt(item.schd_mphr))558 }559 item.cMoneyOT = Number(item.cOT.toFixed(1)).toLocaleString()560 $rootScope.criteria.OTMoneyTotal = $rootScope.criteria.OTMoneyTotal + parseInt(item.cOT)561 $rootScope.criteria.OTMoneyTotalStr = Number($rootScope.criteria.OTMoneyTotal.toFixed(1)).toLocaleString()562 })563 // })564 $http({565 url:'API/DRAF/getUserSumNMData.php',566 method:'POST',567 data:{568 'user_id':item.Mem_ID,569 'month_id':$scope.schObj.MONTHNO,570 'year_id':$scope.schObj.YEAR,571 'ward_id':$scope.schObj.COSTID572 }573 }).then(function (resp){574 item.sumNMTotal = resp.data575 $rootScope.criteria.NMTotal = $rootScope.criteria.NMTotal + parseInt(item.sumNMTotal)576 })577 // $http({578 // url:'API/LISTOFVALUE/sumNMDataTable.php',579 // method:'POST',580 // data:{581 // 'user_id':item.Mem_ID,582 // 'month_no':$scope.schObj.MONTHNO,583 // 'year_no':$scope.schObj.YEAR,584 // 'ward_no':$scope.schObj.COSTID585 // }586 // }).then(function (resp){587 // $scope.sumNMTotalObj = resp.data;588 // item.sumNMTotal = $scope.sumNMTotalObj.NM589 // $rootScope.criteria.NMTotal = $rootScope.criteria.NMTotal + item.sumNMTotal590 // })591 $http({592 url:'API/SCHEDULE/DRAF/getScheduleOffCount.php',593 method:'POST',594 data:{595 'user_id':item.Mem_ID596 }597 }).then(function (resp){598 $scope.countSch = resp.data;599 item.stale = parseInt($scope.countSch.stale)600 $rootScope.criteria.cStale = $rootScope.criteria.cStale + item.stale601 })602 })603 $scope.drawColorTable($scope.schObj.MONTHNO,$scope.schObj.YEAR)604 })605 })606 }607 $rootScope.criteria.search()608 $scope.drawColorTable = function (month,year){609 var str = year+"-"+month610 $scope.monthTotal = moment(str, "YYYY-MM").daysInMonth()611 $scope.monthTotalBtn = $scope.monthTotal + APP.TABLE_DRAF;612 var i = 1;613 while (i <= $scope.monthTotal) {614 $scope.colorNum(i,month,year)615 i++;616 }617 }618 $scope.checkBackup = function (params_ward,params_month,params_year){619 $http({620 url:'API/SCHEDULE/DRAF/checkBackupHasData.php',621 method:'POST',622 data:{623 'ward_id':params_ward,624 'month_id':params_month,625 'year_id':params_year626 }627 }).then(function (resp){628 $scope.checkBackupObj = resp.data;629 $rootScope.criteria.chbackup = $scope.checkBackupObj.c630 if($scope.checkBackupObj.c > 0){631 $scope.setBackupColor = 'green'632 $scope.setBackupIcon = 'fa-check-circle'633 $scope.setBackupStatus = 'à¸à¸±à¸à¸à¸¶à¸à¹à¸¥à¹à¸§'634 } else {635 $scope.setBackupColor = 'yellow'636 $scope.setBackupIcon = 'fa-question-circle'637 $scope.setBackupStatus = 'à¹à¸¡à¹à¸¡à¸µà¸à¸²à¸£à¸à¸±à¸à¸à¸¶à¸'638 }639 })640 }641 $scope.saveSeq = function (){642 console.log($rootScope.criteria.personalList);643 // jet.getStatus(item.schd_d27_m).then(function (m27){item.schd_d27_m = m27})644 myFunction.confirmSaveBox().result.then(function(ok) {645 if (ok) {646 if (jet.saveSeqService($rootScope.criteria.personalList) == 1){647 $scope.app.addAlert('gritter-success', 'à¸à¸²à¸£à¸à¸±à¸à¸à¸¶à¸à¹à¸ªà¸£à¹à¸à¸ªà¸¡à¸à¸¹à¸£à¸à¹', 4000);648 }649 }650 })651 }652 $scope.saveTemp = function (){653 myFunction.confirmSaveBox().result.then(function(ok) {654 if (ok) {655 backup.save($scope.schObj).then(function (resp){656 if(resp == 1){657 $scope.app.addAlert('gritter-success', 'à¸à¸²à¸£à¸à¸±à¸à¸à¸¶à¸à¹à¸ªà¸£à¹à¸à¸ªà¸¡à¸à¸¹à¸£à¸à¹', 4000);...
mainReducer.js
Source:mainReducer.js
...14 };15 };16 let data = {};17 switch (action.type) {18 case getStatus(ACTION_LOCAL_AUTH, STATUS_START):19 if (action.data && action.data.isQuiet) {20 return state;21 } else {22 return merge('user', {status: USER_STATUS_CHECKING});23 }24 case getStatus(ACTION_LOCAL_AUTH, STATUS_SUCCESS):25 return merge('user', {status: USER_STATUS_LOGGED, ...action.data});26 case getStatus(ACTION_LOCAL_AUTH, STATUS_FAIL):27 return merge('user', {status: USER_STATUS_NOT_LOGGED});28 case getStatus(ACTION_SIGNIN, STATUS_INIT):29 return getConfiguredInitState();30 case getStatus(ACTION_SIGNIN, STATUS_START):31 data = {log: [], status: '', inProcess: true, errorMessage: ''};32 return merge('signin', data);33 case getStatus(ACTION_SIGNIN, STATUS_FAIL):34 data = {inProcess: false, errorMessage: action.data.message};35 return merge('signin', data);36 case getStatus(ACTION_SIGNIN, STATUS_SUCCESS):37 return merge('user', {38 status: USER_STATUS_LOGGED,39 username: action.data.username,40 usernameHash: action.data.usernameHash41 });42 case getStatus(ACTION_SIGNIN, STATUS_COMPLETE):43 data = {inProcess: false};44 return merge('signin', data);45 case getStatus(ACTION_SIGNIN, STATUS_LOG):46 data = {log: [...state.signin.log, action.data], status: action.data, inProcess: true};47 return merge('signin', data);48 case getStatus(ACTION_SIGNUP, STATUS_INIT):49 data = {log: [], status: '', inProcess: false, errorMessage: '', isMining: false};50 return merge('signup', data);51 case getStatus(ACTION_SIGNUP, STATUS_START):52 data = {log: [], status: '', inProcess: true, errorMessage: ''};53 return merge('signup', data);54 case getStatus(ACTION_SIGNUP, STATUS_FAIL):55 data = {inProcess: false, errorMessage: action.data.message};56 return merge('signup', data);57 case getStatus(ACTION_SIGNUP, STATUS_SUCCESS):58 data = {inProcess: false, isMining: true, minedInfo: {}};59 return merge('signup', data);60 case getStatus(ACTION_SIGNUP, STATUS_MINED):61 data = {isMining: false, minedInfo: action.data};62 return merge('signup', data);63 case getStatus(ACTION_SIGNUP, STATUS_COMPLETE):64 data = {inProcess: false};65 return merge('signup', data);66 case getStatus(ACTION_SIGNUP, STATUS_LOG):67 data = {log: [...state.signup.log, action.data], status: action.data, inProcess: true};68 return merge('signup', data);69 case getStatus(ACTION_CHANGE_PASSWORD, STATUS_INIT):70 data = {log: [], status: '', inProcess: false, errorMessage: ''};71 return merge('password', data);72 case getStatus(ACTION_CHANGE_PASSWORD, STATUS_START):73 data = {log: [], status: '', inProcess: true, errorMessage: ''};74 return merge('password', data);75 case getStatus(ACTION_CHANGE_PASSWORD, STATUS_FAIL):76 data = {errorMessage: action.data.message};77 return merge('password', data);78 case getStatus(ACTION_CHANGE_PASSWORD, STATUS_COMPLETE):79 data = {inProcess: false};80 return merge('password', data);81 case getStatus(ACTION_CHANGE_PASSWORD, STATUS_LOG):82 data = {log: [...state.password.log, action.data], status: action.data, inProcess: true};83 return merge('password', data);84 case getStatus(ACTION_CREATE_INVITE, STATUS_START):85 data = {inProcessCreation: true, errorMessage: ''};86 return merge('invite', data);87 case getStatus(ACTION_CREATE_INVITE, STATUS_FAIL):88 data = {errorMessage: action.data.message};89 return merge('invite', data);90 case getStatus(ACTION_CREATE_INVITE, STATUS_SUCCESS):91 data = {createdInvites: [...state.invite.createdInvites, action.data]};92 return merge('invite', data);93 case getStatus(ACTION_CREATE_INVITE, STATUS_COMPLETE):94 data = {inProcessCreation: false};95 return merge('invite', data);96 case getStatus(ACTION_GET_INVITES, STATUS_INIT):97 data = {98 log: [],99 status: '',100 inProcessCreation: false,101 inProcessReceiving: false,102 errorMessage: '',103 invites: []104 };105 return merge('invite', data);106 case getStatus(ACTION_GET_INVITES, STATUS_START):107 data = {108 log: [],109 status: '',110 inProcessCreation: false,111 inProcessReceiving: true,112 errorMessage: '',113 invites: []114 };115 return merge('invite', data);116 case getStatus(ACTION_GET_INVITES, STATUS_FAIL):117 data = {errorMessage: action.data.message};118 return merge('invite', data);119 case getStatus(ACTION_GET_INVITES, STATUS_SUCCESS):120 data = {invites: action.data};121 return merge('invite', data);122 case getStatus(ACTION_GET_INVITES, STATUS_COMPLETE):123 data = {inProcessReceiving: false};124 return merge('invite', data);125 case getStatus(ACTION_GET_INVITES, STATUS_LOG):126 data = {log: [...state.invite.log, action.data], status: action.data, inProcessReceiving: true};127 return merge('invite', data);128 case getStatus(ACTION_GET_INVITE, STATUS_SUCCESS):129 data = {inviteInfo: {...state.invite.inviteInfo, [action.data.inviteAddress]: action.data}};130 //console.log(data);131 return merge('invite', data);132 case getStatus(ACTION_LOGOUT, STATUS_SUCCESS):133 return getConfiguredInitState();134 case getStatus(ACTION_GET_BALANCE, STATUS_SUCCESS):135 //console.log(action.data);136 return merge('user', {balance: action.data});137 case getStatus(ACTION_APP_INFO, STATUS_START):138 data = {139 id: action.data,140 allowedUrls: [],141 title: '',142 description: '',143 isAppLoading: true,144 errorMessage: ''145 };146 return merge('authorizeApp', data);147 case getStatus(ACTION_APP_INFO, STATUS_FAIL):148 data = {isAppLoading: false, errorMessage: action.data.message};149 return merge('authorizeApp', data);150 case getStatus(ACTION_APP_INFO, STATUS_SUCCESS):151 data = {152 id: action.data.id,153 usernameHash: action.data.usernameHash,154 title: action.data.title,155 description: action.data.description,156 allowedUrls: action.data.allowedUrls,157 isAppLoading: false158 };159 return merge('authorizeApp', data);160 case getStatus(ACTION_SESSION, STATUS_START):161 data = {log: [], status: '', isSessionCreating: true, errorMessage: ''};162 return merge('authorizeApp', data);163 /*case getStatus(ACTION_SESSION, STATUS_FAIL):164 data = {inProcess: false, errorMessage: action.data.message};165 return merge('authorizeApp', data);166 case getStatus(ACTION_SESSION, STATUS_SUCCESS):167 data = {168 id: action.data.id,169 title: action.data.title,170 description: action.data.description,171 inProcess: false172 };173 return merge('authorizeApp', data);*/174 case getStatus(ACTION_SESSION, STATUS_COMPLETE):175 data = {log: [], status: '', isSessionCreating: false};176 return merge('authorizeApp', data);177 case getStatus(ACTION_SESSION, STATUS_LOG):178 data = {log: [...state.authorizeApp.log, action.data], status: action.data, isSessionCreating: true};179 return merge('authorizeApp', data);180 case getStatus(ACTION_GET_MY_APPS, STATUS_START):181 data = {inProcessReceiving: true, errorMessage: ''};182 return merge('myApps', data);183 case getStatus(ACTION_GET_MY_APPS, STATUS_FAIL):184 data = {errorMessage: action.data.message};185 return merge('myApps', data);186 case getStatus(ACTION_GET_MY_APPS, STATUS_SUCCESS):187 data = {apps: action.data};188 return merge('myApps', data);189 case getStatus(ACTION_GET_MY_APPS, STATUS_COMPLETE):190 data = {inProcessReceiving: false,};191 return merge('myApps', data);192 case getStatus(ACTION_CREATE_MY_APP, STATUS_START):193 data = {inProcessCreation: true, errorMessage: ''};194 return merge('myApps', data);195 case getStatus(ACTION_CREATE_MY_APP, STATUS_FAIL):196 data = {errorMessage: action.data.message};197 return merge('myApps', data);198 /*case getStatus(ACTION_CREATE_MY_APP, STATUS_SUCCESS):199 data = {apps: action.data};200 return merge('myApps', data);*/201 case getStatus(ACTION_CREATE_MY_APP, STATUS_COMPLETE):202 data = {inProcessCreation: false,};203 return merge('myApps', data);204 case getStatus(ACTION_GET_MY_APPS_INFO, STATUS_START):205 data = {inProcessReceiving: true, errorMessage: ''};206 return merge('appsInfo', data);207 case getStatus(ACTION_GET_MY_APPS_INFO, STATUS_FAIL):208 data = {errorMessage: action.data.message};209 return merge('appsInfo', data);210 case getStatus(ACTION_GET_MY_APPS_INFO, STATUS_SUCCESS):211 //data = {apps: action.data};212 return merge('appsInfo', action.data);213 case getStatus(ACTION_GET_MY_APPS_INFO, STATUS_COMPLETE):214 data = {inProcessReceiving: false,};215 return merge('appsInfo', data);216 case getStatus(ACTION_GET_MY_SESSIONS, STATUS_START):217 data = {inProcessReceiving: true, errorMessage: ''};218 return merge('mySessions', data);219 case getStatus(ACTION_GET_MY_SESSIONS, STATUS_FAIL):220 data = {errorMessage: action.data.message};221 return merge('mySessions', data);222 case getStatus(ACTION_GET_MY_SESSIONS, STATUS_SUCCESS):223 data = {sessions: action.data};224 return merge('mySessions', data);225 case getStatus(ACTION_GET_MY_SESSIONS, STATUS_COMPLETE):226 data = {inProcessReceiving: false,};227 return merge('mySessions', data);228 case getStatus(ACTION_GET_TREZOR_ADDRESSES, STATUS_START):229 data = {inProcessReceiving: true, errorMessage: ''};230 return merge('trezorAddresses', data);231 case getStatus(ACTION_GET_TREZOR_ADDRESSES, STATUS_FAIL):232 data = {errorMessage: action.data.message};233 return merge('trezorAddresses', data);234 case getStatus(ACTION_GET_TREZOR_ADDRESSES, STATUS_SUCCESS):235 data = {addresses: action.data.addresses, publicKey: action.data.publicKey};236 return merge('trezorAddresses', data);237 case getStatus(ACTION_GET_TREZOR_ADDRESSES, STATUS_COMPLETE):238 data = {inProcessReceiving: false,};239 return merge('trezorAddresses', data);240 case getStatus(ACTION_EDIT_MY_APP, STATUS_START):241 data = {inProcessEditing: true, errorMessage: ''};242 return merge('myApps', data);243 case getStatus(ACTION_EDIT_MY_APP, STATUS_FAIL):244 data = {errorMessage: action.data.message};245 return merge('myApps', data);246 case getStatus(ACTION_EDIT_MY_APP, STATUS_SUCCESS):247 //data = {apps: action.data};248 //return merge('myApps', action.data);249 return state;250 case getStatus(ACTION_EDIT_MY_APP, STATUS_COMPLETE):251 data = {inProcessEditing: false,};252 return merge('myApps', data);253 case getStatus(ACTION_RESET_PASSWORD, STATUS_START):254 data = {inProcess: true, errorMessage: ''};255 return merge('resetPasswordData', data);256 case getStatus(ACTION_RESET_PASSWORD, STATUS_FAIL):257 data = {errorMessage: action.data.message};258 return merge('resetPasswordData', data);259 /*case getStatus(ACTION_RESET_PASSWORD, STATUS_SUCCESS):260 return state;*/261 case getStatus(ACTION_RESET_PASSWORD, STATUS_COMPLETE):262 data = {inProcess: false,};263 return merge('resetPasswordData', data);264 case getStatus(ACTION_SET_INVITE_RESET, STATUS_START):265 data = {inProcess: true};266 return merge('settings', data);267 case getStatus(ACTION_SET_INVITE_RESET, STATUS_SUCCESS):268 data = {inviteReset: action.data.toString()};269 return merge('settings', data);270 case getStatus(ACTION_SET_INVITE_RESET, STATUS_COMPLETE):271 data = {inProcess: false};272 return merge('settings', data);273 case getStatus(ACTION_GET_INVITE_INFO, STATUS_START):274 data = {info: {inProcess: true, errorMessage: ''}};275 return merge('invite', data);276 case getStatus(ACTION_GET_INVITE_INFO, STATUS_SUCCESS):277 data = {info: action.data};278 return merge('invite', data);279 case getStatus(ACTION_GET_INVITE_INFO, STATUS_COMPLETE):280 data = {info: {...state.invite.info, inProcess: false}};281 return merge('invite', data);282 case getStatus(ACTION_GET_SETTINGS, STATUS_START):283 data = {inProcess: true};284 return merge('settings', data);285 case getStatus(ACTION_GET_SETTINGS, STATUS_SUCCESS):286 return merge('settings', action.data);287 case getStatus(ACTION_GET_SETTINGS, STATUS_COMPLETE):288 data = {inProcess: false};289 return merge('settings', data);290 case getStatus(ACTION_GET_SESSION_APP, STATUS_START):291 data = {inProcess: true, errorMessage: ''};292 return merge('sessionApp', data);293 case getStatus(ACTION_GET_SESSION_APP, STATUS_SUCCESS):294 return merge('sessionApp', action.data);295 case getStatus(ACTION_GET_SESSION_APP, STATUS_FAIL):296 data = {errorMessage: action.data.message};297 return merge('sessionApp', data);298 case getStatus(ACTION_GET_SESSION_APP, STATUS_COMPLETE):299 data = {inProcess: false};300 return merge('sessionApp', data);301 case getStatus(ACTION_CLOSE_SESSION, STATUS_START):302 data = {inProcessClose: true, closeId: action.data.logId};303 return merge('mySessions', data);304 case getStatus(ACTION_CLOSE_SESSION, STATUS_SUCCESS):305 // JSON.stringify/parse because object not correct clones306 let sessions = JSON.parse(JSON.stringify(state.mySessions.sessions));307 sessions = sessions.map(sourceItem => {308 const item = {...sourceItem};309 if (item.id === action.startData.logId) {310 item.returnValues.iv = '';311 }312 return item;313 });314 return merge('mySessions', {sessions});315 case getStatus(ACTION_CLOSE_SESSION, STATUS_COMPLETE):316 data = {inProcessClose: false, closeId: null};317 return merge('mySessions', data);318 case getStatus(ACTION_GET_LOGIC_CONTRACT, STATUS_SUCCESS):319 data = {smartContractLogicAddress: action.data,};320 return merge('app', data);321 case getStatus(ACTION_GET_INVITE_PRICE, STATUS_START):322 return merge('invite', {inProcessReceivePrice: true});323 case getStatus(ACTION_GET_INVITE_PRICE, STATUS_FAIL):324 return merge('invite', {errorMessage: action.data});325 case getStatus(ACTION_GET_INVITE_PRICE, STATUS_SUCCESS):326 return merge('invite', {...action.data});327 case getStatus(ACTION_GET_INVITE_PRICE, STATUS_COMPLETE):328 return merge('invite', {inProcessReceivePrice: false});329 case getStatus(ACTION_ALLOW_APP, STATUS_SUCCESS):330 data = {transactionHash: action.data.transactionHash};331 return merge('sessionApp', data);332 case getStatus(ACTION_ALLOW_APP, STATUS_FAIL):333 data = {errorMessage: action.data.message};334 return merge('authorizeApp', data);335 case getStatus(ACTION_SELF_APP_INFO, STATUS_INIT):336 return merge('app', action.data);337 default:338 return state;339 }340};341export const USER_STATUS_NOT_LOGGED = 'not_logged';342export const USER_STATUS_LOGGED = 'logged';343export const USER_STATUS_CHECKING = 'checking_auth';344export const initialState = {345 user: {346 isLoggedIn: function () {347 return this.status === USER_STATUS_LOGGED;348 },349 isCheckingAuth: function () {...
keybinding.spec.js
Source:keybinding.spec.js
1const pti = require('puppeteer-to-istanbul');2const puppeteer = require('puppeteer');3const path = require('path');4const testPage = path.resolve(__dirname, './test.html');5/** @type { import('puppeteer').Page } */6let page7let browser8let getStatus;9function sleep(time) {10 return new Promise((resolve) => {11 setTimeout(resolve, time);12 });13}14beforeAll(async () => {15 browser = await puppeteer.launch();16 page = await browser.newPage();17 await page.coverage.startJSCoverage();18 await page.goto(`file://${testPage}`);19 await page.evaluate(() => {20 window.handlerHelper = (handlerSymbol) => {21 const status = handlerSymbol + 'Status';22 window[handlerSymbol] = () => {23 window[status] = window[status] ? (window[status] + 1) : 1;24 };25 return window[handlerSymbol];26 }27 window.getHandler = (handlerSymbol) => {28 return window[handlerSymbol];29 }30 window.clearHelper = (handlerSymbol) => {31 delete window[handlerSymbol];32 delete window[handlerSymbol + 'Status'];33 }34 });35 getStatus = (handlerSymbol) => {36 return window[handlerSymbol + 'Status']37 }38});39afterAll(async () => {40 const jsCoverage = await page.coverage.stopJSCoverage();41 pti.write([...jsCoverage]);42 await browser.close();43});44describe('keybinding basic functionality', () => {45 beforeEach(async () => {46 await page.evaluate(() => {47 window.keybind = new Keybinding();48 });49 });50 afterEach(async () => {51 await page.evaluate(() => {52 window.keybind.destroy();53 delete window.keybind;54 clearHelper('case1');55 clearHelper('case2');56 clearHelper('case3');57 clearHelper('case4');58 clearHelper('case5'); 59 });60 });61 test('keybinding on/off method should work as expect', async () => {62 await page.evaluate(() => {63 keybind.on('ctrl + a', handlerHelper('case1'));64 });65 await page.keyboard.down('ControlLeft');66 await page.keyboard.down('a');67 await page.keyboard.up('ControlLeft');68 await page.keyboard.up('a');69 expect(await page.evaluate(getStatus, 'case1')).toBe(1);70 await page.keyboard.down('ControlLeft');71 await page.keyboard.down('a');72 await page.keyboard.up('ControlLeft');73 await page.keyboard.up('a');74 expect(await page.evaluate(getStatus, 'case1')).toBe(2);75 await page.evaluate(() => {76 keybind.off('ctrl + a', getHandler('case1'));77 });78 await page.keyboard.down('ControlLeft');79 await page.keyboard.down('a');80 await page.keyboard.up('ControlLeft');81 await page.keyboard.up('a');82 expect(await page.evaluate(getStatus, 'case1')).toBe(2);83 await page.evaluate(() => {84 clearHelper('case1');85 });86 })87 test('on/off method should be case-insensitive and space-trimming', async () => {88 await page.evaluate(() => {89 keybind.on('ShiFt + A', handlerHelper('case1'));90 });91 await page.keyboard.down('ShiftLeft');92 await page.keyboard.down('a');93 await page.keyboard.up('ShiftLeft');94 await page.keyboard.up('a');95 expect(await page.evaluate(getStatus, 'case1')).toBe(1);96 await page.evaluate(() => {97 keybind.off('shIFt + a', getHandler('case1'));98 });99 await page.keyboard.down('ShiftLeft');100 await page.keyboard.down('a');101 await page.keyboard.up('ShiftLeft');102 await page.keyboard.up('a');103 expect(await page.evaluate(getStatus, 'case1')).toBe(1);104 await page.evaluate(() => {105 clearHelper('case1');106 });107 });108 test('delay keyup event should work as expected', async() => {109 await page.evaluate(() => {110 keybind.on('shift + a', handlerHelper('case1'));111 });112 await page.keyboard.down('ShiftLeft');113 await page.keyboard.down('a');114 await sleep(100);115 await page.keyboard.up('a');116 expect(await page.evaluate(getStatus, 'case1')).toBe(1);117 await page.keyboard.down('a');118 await page.keyboard.up('a');119 expect(await page.evaluate(getStatus, 'case1')).toBe(2);120 await page.keyboard.up('ShiftLeft');121 });122 test('drop keyup event should work as expected', async () => {123 await page.evaluate(() => {124 keybind.on('shift + a', handlerHelper('case1'));125 });126 await page.keyboard.down('ShiftLeft');127 await page.keyboard.down('a');128 await sleep(100);129 expect(await page.evaluate(getStatus, 'case1')).toBe(1);130 await page.keyboard.down('a');131 await sleep(100);132 expect(await page.evaluate(getStatus, 'case1')).toBe(2);133 await page.keyboard.down('a');134 await sleep(100);135 expect(await page.evaluate(getStatus, 'case1')).toBe(3);136 await page.keyboard.up('ShiftLeft');137 });138 test('shift modifier', async () => {139 await page.evaluate(() => {140 keybind.on('shift + a', handlerHelper('case1'));141 });142 await page.keyboard.down('ShiftLeft');143 await page.keyboard.down('a');144 expect(await page.evaluate(getStatus, 'case1')).toBe(1);145 await page.keyboard.down('a');146 await page.keyboard.down('a');147 await page.keyboard.down('a');148 expect(await page.evaluate(getStatus, 'case1')).toBe(4);149 await page.keyboard.down('ShiftRight');150 expect(await page.evaluate(getStatus, 'case1')).toBe(4);151 await page.keyboard.up('a');152 await page.keyboard.up('ShiftLeft');153 await page.keyboard.up('ShiftRight');154 await page.evaluate(() => {155 keybind.off('shift + a', getHandler('case1'));156 clearHelper('case1');157 });158 });159 test.each(160 ['control', 'ctrl']161 )('control modifier: %s', async (key) => {162 const bindKey = `${key} + a`;163 await page.evaluate((bindKey) => {164 keybind.on(bindKey, handlerHelper('case1'));165 }, bindKey);166 await page.keyboard.down('ControlLeft');167 await page.keyboard.down('a');168 expect(await page.evaluate(getStatus, 'case1')).toBe(1);169 await page.keyboard.down('a');170 await page.keyboard.down('a');171 await page.keyboard.down('a');172 expect(await page.evaluate(getStatus, 'case1')).toBe(4);173 await page.keyboard.down('ControlRight');174 expect(await page.evaluate(getStatus, 'case1')).toBe(4);175 await page.keyboard.up('a');176 await page.keyboard.up('ControlLeft');177 await page.keyboard.up('ControlRight');178 await page.evaluate((bindKey) => {179 keybind.off(bindKey, getHandler('case1'));180 clearHelper('case1');181 }, bindKey);182 });183 test.each(184 ['meta', 'command', 'windows', 'cmd']185 )('meta modifier: %s', async (key) => {186 const bindKey = `${key} + a`;187 await page.evaluate((bindKey) => {188 keybind.on(bindKey, handlerHelper('case1'));189 }, bindKey);190 await page.keyboard.down('MetaLeft');191 await page.keyboard.down('a');192 expect(await page.evaluate(getStatus, 'case1')).toBe(1);193 await page.keyboard.down('a');194 await page.keyboard.down('a');195 await page.keyboard.down('a');196 expect(await page.evaluate(getStatus, 'case1')).toBe(4);197 await page.keyboard.down('MetaRight');198 expect(await page.evaluate(getStatus, 'case1')).toBe(4);199 await page.keyboard.up('a');200 await page.keyboard.up('MetaLeft');201 await page.keyboard.up('MetaRight');202 await page.evaluate((bindKey) => {203 keybind.off(bindKey, getHandler('case1'));204 clearHelper('case1');205 }, bindKey);206 });207 test.each(208 ['alt', 'option']209 )('alt modifier: %s', async (key) => {210 const bindKey = `${key} + a`;211 await page.evaluate((bindKey) => {212 keybind.on(bindKey, handlerHelper('case1'));213 }, bindKey);214 await page.keyboard.down('AltLeft');215 await page.keyboard.down('a');216 expect(await page.evaluate(getStatus, 'case1')).toBe(1);217 await page.keyboard.down('a');218 await page.keyboard.down('a');219 await page.keyboard.down('a');220 expect(await page.evaluate(getStatus, 'case1')).toBe(4);221 await page.keyboard.down('AltLeft');222 expect(await page.evaluate(getStatus, 'case1')).toBe(4);223 await page.keyboard.up('a');224 await page.keyboard.up('AltLeft');225 await page.keyboard.up('AltRight');226 await page.evaluate((bindKey) => {227 keybind.off(bindKey, getHandler('case1'));228 clearHelper('case1');229 }, bindKey);230 });231 test.each([232 ['left', 'ArrowLeft'],233 ['up', 'ArrowUp'],234 ['right', 'ArrowRight'],235 ['down', 'ArrowDown'],236 ['space', ' '],237 ['esc', 'Escape'],238 ['enter', 'Enter'],239 ['tab', 'Tab'],240 ...('1,2,3,4,5,6,7,8,9,10,11,12'.split(',').map(val => [`f${val}`, `F${val}`]))241 ])('special key: %s', async (bindKey, simulateKey) => {242 await page.evaluate((bindKey) => {243 keybind.on(bindKey, handlerHelper('case1'));244 }, bindKey);245 await page.keyboard.down(simulateKey);246 await page.keyboard.up(simulateKey);247 expect(await page.evaluate(getStatus, 'case1')).toBe(1);248 await page.keyboard.down(simulateKey);249 await page.keyboard.up(simulateKey);250 await page.keyboard.down(simulateKey);251 await page.keyboard.up(simulateKey);252 await page.keyboard.down(simulateKey);253 await page.keyboard.up(simulateKey);254 expect(await page.evaluate(getStatus, 'case1')).toBe(4);255 await page.evaluate((bindKey) => {256 keybind.off(bindKey, getHandler('case1'));257 }, bindKey);258 await page.keyboard.down(simulateKey);259 await page.keyboard.up(simulateKey);260 expect(await page.evaluate(getStatus, 'case1')).toBe(4);261 await page.evaluate(() => {262 clearHelper('case1');263 });264 });265 test('should not call handler after destroy', async() => {266 await page.evaluate(() => {267 window.keybind2 = new Keybinding();268 keybind2.on('ctrl + a', handlerHelper('case1'));269 })270 await page.keyboard.down('ControlLeft');271 await page.keyboard.down('a');272 await page.keyboard.up('ControlLeft');273 await page.keyboard.up('a');274 expect(await page.evaluate(getStatus, 'case1')).toBe(1);275 await page.keyboard.down('ControlLeft');276 await page.keyboard.down('a');277 await page.keyboard.up('ControlLeft');278 await page.keyboard.up('a');279 expect(await page.evaluate(getStatus, 'case1')).toBe(2);280 await page.evaluate(() => {281 window.keybind2.destroy();282 });283 await page.keyboard.down('ControlLeft');284 await page.keyboard.down('a');285 await page.keyboard.up('ControlLeft');286 await page.keyboard.up('a');287 expect(await page.evaluate(getStatus, 'case1')).toBe(2);288 await page.evaluate(() => {289 clearHelper('case1');290 delete window.keybind2;291 })292 });293});294describe('keybinding scope functionality', () => {295 beforeAll(async () => {296 await page.evaluate(() => {297 window.keybind = new Keybinding();298 });299 });300 afterAll(async () => {301 await page.evaluate(() => {302 window.keybind.destroy();303 delete window.keybind;304 });305 });306 beforeEach(async () => {307 await page.evaluate(() => {308 keybind.on('ctrl + a', handlerHelper('case1'));309 keybind.on('ctrl + a', handlerHelper('case2'), 'scope2');310 keybind.on('ctrl + a', handlerHelper('case3'), 'scope3');311 });312 });313 afterEach(async () => {314 await page.evaluate(() => {315 keybind.off('ctrl + a', getHandler('case1'));316 keybind.off('ctrl + a', getHandler('case2'), 'scope2');317 keybind.off('ctrl + a', getHandler('case3'), 'scope3');318 clearHelper('case1');319 clearHelper('case2');320 clearHelper('case3');321 });322 });323 test('default enable/disable should work as expected', async () => {324 await page.keyboard.down('ControlLeft');325 await page.keyboard.down('a');326 await page.keyboard.up('ControlLeft');327 await page.keyboard.up('a');328 expect(await page.evaluate(getStatus, 'case1')).toBe(1);329 expect(await page.evaluate(getStatus, 'case2')).toBe(1);330 expect(await page.evaluate(getStatus, 'case3')).toBe(1);331 await page.evaluate(() => {332 window.keybind.disable();333 });334 await page.keyboard.down('ControlLeft');335 await page.keyboard.down('a');336 await page.keyboard.up('ControlLeft');337 await page.keyboard.up('a');338 expect(await page.evaluate(getStatus, 'case1')).toBe(1);339 expect(await page.evaluate(getStatus, 'case2')).toBe(1);340 expect(await page.evaluate(getStatus, 'case3')).toBe(1);341 await page.evaluate(() => {342 window.keybind.enable();343 });344 await page.keyboard.down('ControlLeft');345 await page.keyboard.down('a');346 await page.keyboard.up('ControlLeft');347 await page.keyboard.up('a');348 expect(await page.evaluate(getStatus, 'case1')).toBe(2);349 expect(await page.evaluate(getStatus, 'case2')).toBe(2);350 expect(await page.evaluate(getStatus, 'case3')).toBe(2);351 });352 test('enable/disable should work with parameter', async () => {353 await page.keyboard.down('ControlLeft');354 await page.keyboard.down('a');355 await page.keyboard.up('ControlLeft');356 await page.keyboard.up('a');357 expect(await page.evaluate(getStatus, 'case1')).toBe(1);358 expect(await page.evaluate(getStatus, 'case2')).toBe(1);359 expect(await page.evaluate(getStatus, 'case3')).toBe(1);360 await page.evaluate(() => {361 keybind.disable('scope2');362 });363 await page.keyboard.down('ControlLeft');364 await page.keyboard.down('a');365 await page.keyboard.up('ControlLeft');366 await page.keyboard.up('a');367 expect(await page.evaluate(getStatus, 'case1')).toBe(2);368 expect(await page.evaluate(getStatus, 'case2')).toBe(1);369 expect(await page.evaluate(getStatus, 'case3')).toBe(2);370 await page.evaluate(() => {371 keybind.disable('scope3');372 });373 await page.keyboard.down('ControlLeft');374 await page.keyboard.down('a');375 await page.keyboard.up('ControlLeft');376 await page.keyboard.up('a');377 expect(await page.evaluate(getStatus, 'case1')).toBe(3);378 expect(await page.evaluate(getStatus, 'case2')).toBe(1);379 expect(await page.evaluate(getStatus, 'case3')).toBe(2);380 await page.evaluate(() => {381 keybind.enable();382 });383 await page.keyboard.down('ControlLeft');384 await page.keyboard.down('a');385 await page.keyboard.up('ControlLeft');386 await page.keyboard.up('a');387 expect(await page.evaluate(getStatus, 'case1')).toBe(4);388 expect(await page.evaluate(getStatus, 'case2')).toBe(2);389 expect(await page.evaluate(getStatus, 'case3')).toBe(3);390 });...
get-status.spec.js
Source:get-status.spec.js
1const grpc = require('grpc')2const path = require('path')3const { expect, rewire, sinon } = require('test/test-helper')4const LndEngine = rewire(path.resolve(__dirname, '..', 'index'))5const getStatus = rewire(path.resolve(__dirname, 'get-status'))6const VERSION = '0.7.1-beta commit=v0.7.1-beta-rc1'7describe('get-status', () => {8 describe('getStatus', () => {9 let reverts = []10 let engine11 let getInfoStub12 let genSeedStub13 let getInfoResponse14 let statuses15 beforeEach(() => {16 getInfoResponse = {17 chains: [{ chain: 'bitcoin', network: 'testnet' }],18 version: VERSION,19 syncedToChain: true20 }21 getInfoStub = sinon.stub().resolves(getInfoResponse)22 genSeedStub = sinon.stub().resolves(true)23 statuses = LndEngine.__get__('ENGINE_STATUSES')24 engine = {25 minVersion: '0.7.0-beta',26 client: sinon.stub(),27 walletUnlocker: sinon.stub(),28 logger: {29 error: sinon.stub()30 },31 chainName: 'bitcoin'32 }33 reverts.push(getStatus.__set__('getInfo', getInfoStub))34 reverts.push(getStatus.__set__('genSeed', genSeedStub))35 })36 afterEach(() => {37 reverts.forEach(r => r())38 })39 context('engine is valid', () => {40 it('returns VALIDATED if the lnd engine is valid', async () => {41 expect(await getStatus.call(engine)).to.be.eql(statuses.VALIDATED)42 })43 })44 context('engines wallet needs to be created', () => {45 it('if getInfo rejects with UNIMPLEMENTED AND genSeed is a successful call', async () => {46 const error = new Error('Something Happened')47 error.code = grpc.status.UNIMPLEMENTED48 getInfoStub.rejects(error)49 expect(await getStatus.call(engine)).to.be.eql(statuses.NEEDS_WALLET)50 })51 })52 context('engine is unlocked', () => {53 it('returns UNLOCKED if getInfo returns a blank response', async () => {54 getInfoStub.resolves({})55 expect(await getStatus.call(engine)).to.be.eql(statuses.UNLOCKED)56 })57 })58 context('engine is locked', () => {59 it('if getInfo rejects with UNIMPLEMENTED AND genSeed rejects with `wallet exists`', async () => {60 const error = new Error('Something Happened')61 error.code = grpc.status.UNIMPLEMENTED62 getInfoStub.rejects(error)63 const WALLET_EXISTS_ERROR_MESSAGE = getStatus.__get__('WALLET_EXISTS_ERROR_MESSAGE')64 const walletExistsError = new Error(WALLET_EXISTS_ERROR_MESSAGE)65 genSeedStub.rejects(walletExistsError)66 expect(await getStatus.call(engine)).to.be.eql(statuses.LOCKED)67 })68 })69 context('engine is unavailable', () => {70 it('if getInfo returns a real error (non-unimplemented)', async () => {71 const error = new Error('Something Happened')72 error.code = 273 getInfoStub.rejects(error)74 expect(await getStatus.call(engine)).to.be.eql(statuses.UNAVAILABLE)75 })76 it('if getInfo rejects with UNIMPLEMENTED AND genSeed reject with real errors', async () => {77 const error = new Error('Something Happened')78 error.code = grpc.status.UNIMPLEMENTED79 getInfoStub.rejects(error)80 const walletExistsError = new Error('Something else happened')81 genSeedStub.rejects(walletExistsError)82 expect(await getStatus.call(engine)).to.be.eql(statuses.UNAVAILABLE)83 })84 })85 context('engine is unlocked', () => {86 it('returns UNLOCKED if getInfo returns a blank response', async () => {87 getInfoStub.resolves({})88 expect(await getStatus.call(engine)).to.be.eql(statuses.UNLOCKED)89 })90 it('returns UNLOCKED if getInfo returns more than one chain', async () => {91 getInfoStub.resolves({92 chains: [93 { chain: 'bitcoin', network: 'testnet' },94 { chain: 'litecoin', network: 'mainnet' }95 ],96 version: VERSION,97 syncedToChain: true98 })99 expect(await getStatus.call(engine)).to.be.eql(statuses.UNLOCKED)100 })101 it('returns UNLOCKED if chain names do not match', async () => {102 getInfoStub.resolves({103 chains: [{ chain: 'badnet', network: 'testnet' }]104 })105 expect(await getStatus.call(engine)).to.be.eql(statuses.UNLOCKED)106 })107 })108 context('engine is not synced', () => {109 it('returns NOT_SYNCED if getInfo returns syncedToChain as false', async () => {110 getInfoStub.resolves({111 chains: [{ chain: 'bitcoin', network: 'testnet' }],112 version: VERSION,113 syncedToChain: false114 })115 expect(await getStatus.call(engine)).to.be.eql(statuses.NOT_SYNCED)116 })117 })118 context('engine is an old version', () => {119 it('returns OLD_VERSION if getInfo returns an old version', async () => {120 getInfoStub.resolves({121 chains: [{ chain: 'bitcoin', network: 'testnet' }],122 version: '0.6.0-beta',123 syncedToChain: true124 })125 expect(await getStatus.call(engine)).to.be.eql(statuses.OLD_VERSION)126 })127 })128 })...
state_test.js
Source:state_test.js
2var State = require('../lib/state.js');3describe('State', function() {4 describe('State()', function () {5 var s1 = State();6 it('should return pending when getStatus()', function() {7 var a = {};8 assert.equal('pending', s1.getStatus());9 });10 it('should return Error when run() beacuse no machine', function() {11 assert.throws(function () {12 s1.run();13 });14 });15 it('should return pending when after run() and get error', function() {16 assert.equal('pending', s1.getStatus());17 });18 it('should return pending when done() and run() get error', function() {19 assert.equal('pending', s1.done().getStatus());20 });21 });22 describe('State(machine, options)', function () {23 var i = 0;24 var machine = function () {25 return 'c';26 };27 var options = {28 afterDoing: function () {29 i++;30 },31 afterDone: function () {32 i++;33 }34 };35 var s1 = State(machine, options);36 it('should return pending when getStatus()', function() {37 var a = {};38 assert.equal('pending', s1.getStatus());39 });40 it('should return pending when done()', function() {41 assert.equal('pending', s1.done().getStatus());42 });43 it('should return "c" when run()', function() {44 assert.equal('c', s1.run());45 });46 it('should return 1 after run() and do afterDoing()', function() {47 assert.equal(1, i);48 });49 it('should return doing when after run()', function() {50 assert.equal('doing', s1.getStatus());51 });52 it('should return undefined when again run()', function() {53 assert.equal(undefined, s1.run());54 });55 it('should return 1 after again run() and do afterDoing()', function() {56 assert.equal(1, i);57 });58 it('should return doing when after again run()', function() {59 assert.equal('doing', s1.getStatus());60 });61 it('should return done when done()', function() {62 assert.equal('done', s1.done().getStatus());63 });64 it('should return 2 after done() and do afterDone()', function() {65 assert.equal(2, i);66 });67 it('should return done when agin done()', function() {68 assert.equal('done', s1.done().getStatus());69 });70 it('should return 2 after agin done() and do afterDone()', function() {71 assert.equal(2, i);72 });73 });74 describe('State(machine, options) and machine isPromise setTimeout 100', function () {75 var machine = function () {76 var promise = new Promise(function (resolve) {77 setTimeout(function () {78 resolve();79 }, 100);80 });81 return promise;82 };83 var s2 = State(machine2);84 var machine2 = function () {85 var promise = new Promise(function (resolve, reject) {86 setTimeout(function () {87 reject();88 }, 100);89 });90 return promise;91 };92 var s1 = State(machine);93 it('should return true when run() instanceof Promise', function() {94 assert.instanceOf(s1.run(), Promise);95 });96 it('should return false when agian run() instanceof Promise', function() {97 assert.notInstanceOf(s1.run(), Promise);98 });99 it('should return doing when after run() and getStatus()', function() {100 assert.equal('doing', s1.getStatus());101 });102 setTimeout(function () {103 it('should return done when after run() dalay 500 and getStatus() and promise is reslove', function() {104 assert.equal('done', s1.getStatus());105 });106 }, 500);107 setTimeout(function () {108 it('should return done when after run() dalay 500 and getStatus() and promise is reject', function() {109 assert.equal('done', s2.getStatus());110 });111 }, 500);112 });113 describe('State(machine, options) and machine like Promise', function () {114 var i = 0;115 var machine = function () {116 return {117 then: function (cb) {118 cb && cb();119 }120 };121 };122 var s1 = State(machine);123 s1.run();124 it('should return done when getStatus()', function() {125 var a = {};126 assert.equal('done', s1.getStatus());127 });128 });...
UpdateTab.js
Source:UpdateTab.js
1// Copyright (c) 2019 LG Electronics, Inc.2//3// Licensed under the Apache License, Version 2.0 (the "License");4// you may not use this file except in compliance with the License.5// You may obtain a copy of the License at6//7// http://www.apache.org/licenses/LICENSE-2.08//9// Unless required by applicable law or agreed to in writing, software10// distributed under the License is distributed on an "AS IS" BASIS,11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.12// See the License for the specific language governing permissions and13// limitations under the License.14//15// SPDX-License-Identifier: Apache-2.016import React from 'react';17import {Layout, Cell, Row, Column} from '@enact/ui/Layout';18import {createToast, subscribe} from '../components/LunaAPI';19import ControlView from './ControlView';20import DetailView from './DetailView';21const SERVICE_SWUPDATER = 'com.webos.service.swupdater';22const URI_SERVICE_SWUPDATER = 'luna://' + SERVICE_SWUPDATER;23const ID_NONE = "";24const STATUS_NONE = "none";25const STATUS_COMPLETED = "completed";26class UpdateTab extends React.Component {27 constructor() {28 super();29 this.state = {30 id: ID_NONE,31 status: STATUS_NONE,32 softwareModules: [],33 };34 this.onGetStatus = this.onGetStatus.bind(this);35 }36 onGetStatus(res) {37 console.log("onGetStatus");38 const id = res.id || ID_NONE;39 const status = res.status || STATUS_NONE;40 const softwareModules = res.softwareModules || [];41 if (id !== ID_NONE && this.state.id === ID_NONE) {42 // createToast(`Update available<br> ${softwareModules[0].name} (${softwareModules[0].version})`);43 }44 if (status === STATUS_COMPLETED && this.state.status !== STATUS_COMPLETED) {45 // createToast(`Update completed<br> ${softwareModules[0].name} (${softwareModules[0].version})`);46 }47 this.setState({48 id: id,49 status: status,50 softwareModules: softwareModules,51 });52 }53 componentDidMount() {54 const {serverStatus} = this.props;55 if (serverStatus && serverStatus.connected) {56 this.getStatus = subscribe(URI_SERVICE_SWUPDATER, 'getStatus', {}, this.onGetStatus);57 }58 }59 componentWillUnmount() {60 if (this.getStatus) {61 this.getStatus.cancel();62 this.getStatus = null;63 }64 }65 shouldComponentUpdate(nextProps, nextState) {66 if (this.props.serverStatus !== nextProps.serverStatus) {67 if (nextProps.serverStatus.connected) {68 this.getStatus = subscribe(URI_SERVICE_SWUPDATER, 'getStatus', {}, this.onGetStatus);69 } else {70 if (this.getStatus) {71 this.getStatus.cancel();72 this.getStatus = null;73 }74 }75 return false;76 }77 return true;78 }79 render() {80 const {status, softwareModules} = this.state;81 return (82 <Layout style={{height: '100%'}}>83 <Cell size="25%">84 <ControlView actionId={this.state.id} status={status}/>85 </Cell>86 <Cell>87 <DetailView softwareModules={softwareModules}/>88 </Cell>89 </Layout>90 );91 }92}...
browser_gcli_inspect.js
Source:browser_gcli_inspect.js
...42}43function testCreateCommands() {44 type("inspec");45 is(gcliterm.completeNode.textContent, " inspect", "Completion for \"inspec\"");46 is(requisition.getStatus().toString(), "ERROR", "inspec is ERROR");47 type("inspect");48 is(requisition.getStatus().toString(), "ERROR", "inspect is ERROR");49 type("inspect h1");50 is(requisition.getStatus().toString(), "ERROR", "inspect h1 is ERROR");51 type("inspect span");52 is(requisition.getStatus().toString(), "ERROR", "inspect span is ERROR");53 type("inspect div");54 is(requisition.getStatus().toString(), "VALID", "inspect div is VALID");55 type("inspect .someclass");56 is(requisition.getStatus().toString(), "VALID", "inspect .someclass is VALID");57 type("inspect #someid");58 is(requisition.getStatus().toString(), "VALID", "inspect #someid is VALID");59 type("inspect button[disabled]");60 is(requisition.getStatus().toString(), "VALID", "inspect button[disabled] is VALID");61 type("inspect p>strong");62 is(requisition.getStatus().toString(), "VALID", "inspect p>strong is VALID");63 type("inspect :root");64 is(requisition.getStatus().toString(), "VALID", "inspect :root is VALID");65}66function type(command) {67 gcliterm.inputNode.value = command.slice(0, -1);68 gcliterm.inputNode.focus();69 EventUtils.synthesizeKey(command.slice(-1), {});...
Using AI Code Generation
1var AppiumBaseDriver = require('appium-base-driver');2var appiumBaseDriver = new AppiumBaseDriver();3appiumBaseDriver.getStatus().then(function (status) {4 console.log(status);5});6var AndroidDriver = require('appium-android-driver');7var androidDriver = new AndroidDriver();8androidDriver.getStatus().then(function (status) {9 console.log(status);10});11var IOSDriver = require('appium-ios-driver');12var iosDriver = new IOSDriver();13iosDriver.getStatus().then(function (status) {14 console.log(status);15});16var WindowsDriver = require('appium-windows-driver');17var windowsDriver = new WindowsDriver();18windowsDriver.getStatus().then(function (status) {19 console.log(status);20});21var MacDriver = require('appium-mac-driver');22var macDriver = new MacDriver();23macDriver.getStatus().then(function (status) {24 console.log(status);25});26var YouiEngineDriver = require('appium-youiengine-driver');27var youiEngineDriver = new YouiEngineDriver();28youiEngineDriver.getStatus().then(function (status) {29 console.log(status);30});31var SelendroidDriver = require('appium-selendroid-driver');32var selendroidDriver = new SelendroidDriver();33selendroidDriver.getStatus().then(function (status) {34 console.log(status);35});36var XCUITestDriver = require('appium-xcuitest-driver');37var xcuiTestDriver = new XCUITestDriver();38xcuiTestDriver.getStatus().then(function (status) {39 console.log(status);40});41var EspressoDriver = require('appium-espresso-driver');42var espressoDriver = new EspressoDriver();43espressoDriver.getStatus().then(function (status) {44 console.log(status);45});46var TizenDriver = require('appium-tizen-driver');47var tizenDriver = new TizenDriver();48tizenDriver.getStatus().then(function (status) {49 console.log(status);50});
Using AI Code Generation
1var appiumBaseDriver = require('appium-base-driver');2var appiumBaseDriverInstance = new appiumBaseDriver();3appiumBaseDriverInstance.getStatus(function(err, response) {4 console.log(response);5});6var appiumAndroidDriver = require('appium-android-driver');7var appiumAndroidDriverInstance = new appiumAndroidDriver();8appiumAndroidDriverInstance.getStatus(function(err, response) {9 console.log(response);10});11var appiumBaseDriver = require('appium-base-driver');12var appiumBaseDriverInstance = new appiumBaseDriver();13appiumBaseDriverInstance.getStatus(function(err, response) {14 console.log(response);15});16#### getStatus(callback)17appiumBaseDriverInstance.getStatus(function(err, response) {18 console.log(response);19});20#### createSession(desiredCapabilities, requiredCapabilities, callback)21appiumBaseDriverInstance.createSession(desiredCapabilities, requiredCapabilities, function(err, response) {22 console.log(response);23});24#### getSession(callback)25appiumBaseDriverInstance.getSession(function(err, response) {26 console.log(response);27});28#### deleteSession(callback)29appiumBaseDriverInstance.deleteSession(function(err, response) {30 console.log(response);31});32#### getSessions(callback)33appiumBaseDriverInstance.getSessions(function(err, response) {34 console.log(response);35});36#### getTimeouts(callback)
Using AI Code Generation
1var BaseDriver = require('appium-base-driver');2var driver = new BaseDriver();3driver.getStatus().then(function(status){4console.log(status);5});6{ build: { version: '1.0.0', revision: null } }
Using AI Code Generation
1driver.getStatus().then(function (status) {2 console.log(status);3});4driver.getStatus().then(function (status) {5 console.log(status);6});7driver.getSessions().then(function (sessions) {8 console.log(sessions);9});10driver.getSessions().then(function (sessions) {11 console.log(sessions);12});13driver.getSessions().then(function (sessions) {14 console.log(sessions);15});16driver.getSessions().then(function (sessions) {17 console.log(sessions);18});19driver.getSessions().then(function (sessions) {20 console.log(sessions);21});22driver.getSessions().then(function (sessions) {23 console.log(sessions);24});25driver.getSessions().then(function (sessions) {26 console.log(sessions);27});28driver.getSessions().then(function (sessions) {29 console.log(sessions);30});31driver.getSessions().then(function (sessions) {32 console.log(sessions);33});34driver.getSessions().then(function (sessions) {35 console.log(sessions);36});37driver.getSessions().then(function (sessions) {38 console.log(sessions);39});
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!