Le rapporteur clear() ne fonctionne pas

J'ai deux tests:

  it('should filter the phone list as user types into the search box', function() {

    var results = ptor.findElements(protractor.By.repeater('phone in phones').column('phone.name'));
    results.then(function(arr) {
            expect(arr.length).toEqual(3);
    });

    var queryInput = ptor.findElement(protractor.By.input('query'));

    queryInput.sendKeys('nexus');

    results = ptor.findElements(protractor.By.repeater('phone in phones').column('phone.name'));
    results.then(function(arr) {
        expect(arr.length).toEqual(1);
    });

    queryInput.clear();
    queryInput.sendKeys('motorola');

    results = ptor.findElements(protractor.By.repeater('phone in phones').column('phone.name'));
    results.then(function(arr) {
        expect(arr.length).toEqual(2);
    });

});

it('should display the current filter value within an element with id "status"',
    function() {
        //expect(element('#status').text()).toMatch(/Current filter: \s*$/);
        var queryInput = ptor.findElement(protractor.By.input('query'));
        queryInput.clear();

        expect(ptor.findElement(protractor.By.id('status')).getText()).toMatch('Current Filter:');

        //input('query').enter('nexus');

        //queryInput.clear();
        //queryInput.sendKeys('nexus');

        //expect(element('#status').text()).toMatch(/Current filter: nexus\s*$/);
        //expect(ptor.findElement(protractor.By.id('status')).getText()).toMatch('^\Current Filter:.');

        //alternative version of the last assertion that tests just the value of the binding
        //using('#status').expect(binding('query')).toBe('nexus');
    });

le premier test, la zone de recherche, fonctionne très bien.
le deuxième test, du statut, de ne pas passer parce que la dernière valeur saisie dans queryInput est reporté à la deuxième test, et la queryInput.clear() ne fonctionne pas.
Cependant, dans le deuxième essai, si je fais un appel queryInput.sendKeys("quelque chose"), "quelque chose" s'affiche.
Si je sors de l'clear() dans le deuxième essai, je vais voir "motorolasomething".
Ainsi, s'il semble clair() fonctionne, mon test ne passe pas si j'ai juste clear() dans le deuxième essai, quand je lance le deuxième essai, je vais voir "motorola", même quand clear() est appelée avant le deuxième test.

Je me demandais pourquoi le clear() n'est pas de compensation dans le deuxième test, quand je n'ai pas un sendKeys ().

Plz ignorer, je vois le problème. Le clear() fonctionne, mais le statut div doit être mis à jour sur la page d'une autre méthode après clear() est appelée

OriginalL'auteur bmw0128 | 2013-11-13