2014-11-27 2 views
0

У меня есть список из примерно 8000 тестов, из которых я хочу удалить определенное подмножество тестов (из них 432 из них), которые теперь передаются и больше не требуются.Удаление большого количества тестов из тестового набора

The тесты записи в следующем формате

[img.hidden: setAttribute() to "" followed by IDL get] 
    expected: FAIL 

    [img.hidden: setAttribute() to " foo " followed by IDL get] 
    expected: FAIL 

Список тестов Я хочу удалить доступны мне в следующем формате

img.hidden: setAttribute() to "" followed by IDL get 
img.hidden: setAttribute() to " foo " followed by IDL get 

Что бы быстрый способ поиска и удалить записи для всех этих тестов?

EDIT: Пример в соответствии с запросом. Записи:

[img.hidden: IDL set to undefined followed by hasAttribute()] 
    expected: FAIL 

    [img.hidden: IDL set to undefined followed by IDL get] 
    expected: FAIL 

    [img.hidden: IDL set to null followed by hasAttribute()] 
    expected: FAIL 

    [img.hidden: IDL set to null followed by IDL get] 
    expected: FAIL 

    [img.hidden: IDL set to 7 followed by IDL get] 
    expected: FAIL 

список Удаление:

img.hidden: IDL set to undefined followed by IDL get 
img.hidden: IDL set to null followed by IDL get 
img.hidden: IDL set to 7 followed by IDL get 

Ожидаемый результат:

[img.hidden: IDL set to undefined followed by hasAttribute()] 
    expected: FAIL 

    [img.hidden: IDL set to null followed by hasAttribute()] 
    expected: FAIL 

ответ

0

Вы можете использовать sed в

while read pattern 
do 
sed -i "/$pattern/, +1 d" inputFile 
done < test 

Test

$ cat input 
[img.hidden: IDL set to undefined followed by hasAttribute()] 
    expected: FAIL 

[img.hidden: IDL set to undefined followed by IDL get] 
    expected: FAIL 

[img.hidden: IDL set to null followed by hasAttribute()] 
    expected: FAIL 

[img.hidden: IDL set to null followed by IDL get] 
    expected: FAIL 

[img.hidden: IDL set to 7 followed by IDL get] 
    expected: FAIL 

$ cat test 
img.hidden: IDL set to undefined followed by IDL get 
img.hidden: IDL set to null followed by IDL get 
img.hidden: IDL set to 7 followed by IDL get 

$ while read pattern; do sed -i "/$pattern/, +1 d" input ; done < test 

$ cat input 
[img.hidden: IDL set to undefined followed by hasAttribute()] 
    expected: FAIL 


[img.hidden: IDL set to null followed by hasAttribute()] 
    expected: FAIL 
+0

Это, похоже, не работает, как ни странно, он превращает мой входной файл в 8000 пустых строк. –

+0

Добавлен пример. –

+0

Выключает изменение шаблона из ''/$ pattern /, +1 d "' to '"/$ pattern /, + 1d "' делает трюк. Интересно, почему...? Также он должен быть '+ 2d' вместо этого, чтобы удалить пустые строки после каждого теста. –

Смежные вопросы