This test verifies that navigator.contacts.select succeeds after another call to navigator.contacts.select was completed.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


Performing first contacts request.
PASS areArraysEqual(contact1.name, addressBook[0].name) is true
PASS areArraysEqual(contact1.email, addressBook[0].email) is true
PASS areArraysEqual(contact1.tel, addressBook[0].tel) is true
PASS areArraysEqual(contact2.name, addressBook[1].name) is true
PASS areArraysEqual(contact2.email, addressBook[1].email) is true
PASS contact2.tel.length is 0
PASS areArraysEqual(contact3.name, addressBook[2].name) is true
PASS contact3.email.length is 0
PASS areArraysEqual(contact3.tel, addressBook[2].tel) is true
PASS finishedContactSelection became true

Performing second contacts request.
PASS areArraysEqual(contact1.name, addressBook[0].name) is true
PASS areArraysEqual(contact1.email, addressBook[0].email) is true
PASS areArraysEqual(contact1.tel, addressBook[0].tel) is true
PASS areArraysEqual(contact2.name, addressBook[1].name) is true
PASS areArraysEqual(contact2.email, addressBook[1].email) is true
PASS contact2.tel.length is 0
PASS areArraysEqual(contact3.name, addressBook[2].name) is true
PASS contact3.email.length is 0
PASS areArraysEqual(contact3.tel, addressBook[2].tel) is true
PASS successfullyParsed is true

TEST COMPLETE
Show contacts
