тесты в rust
От: Аноним  
Дата: 11.04.12 03:12
Оценка:
в этом языке тесты проходятся в момент компиляции. Т.е. Сломать тесты не возможно так как проект Просто не скомпилируется. Думаю для немерле это уже стало актуально. Возможно ли такое сделать?
Re: тесты в rust
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 11.04.12 03:24
Оценка:
Здравствуйте, Аноним, Вы писали:

А>в этом языке тесты проходятся в момент компиляции. Т.е. Сломать тесты не возможно так как проект Просто не скомпилируется. Думаю для немерле это уже стало актуально. Возможно ли такое сделать?


Вполне возможно, но зачем? Тесты можно добавить в скрипт сборки, как это и сделано в компиляторе Немерле.
Ce n'est que pour vous dire ce que je vous dis.
Re[2]: тесты в rust
От: Аноним  
Дата: 11.04.12 03:29
Оценка:
Здравствуйте, Don Reba, Вы писали:

DR>Здравствуйте, Аноним, Вы писали:


DR>Вполне возможно, но зачем? Тесты можно добавить в скрипт сборки, как это и сделано в компиляторе Немерле.


За тем что бы если что сломается увидеть сразу. Пример 667
Re[3]: тесты в rust
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 11.04.12 03:39
Оценка:
Здравствуйте, Аноним, Вы писали:

А>За тем что бы если что сломается увидеть сразу. Пример 667


Это достигается добавлением тестов в скрипт сборки.
Ce n'est que pour vous dire ce que je vous dis.
Re[4]: тесты в rust
От: Аноним  
Дата: 11.04.12 03:43
Оценка:
Здравствуйте, Don Reba, Вы писали:

DR>Здравствуйте, Аноним, Вы писали:


А>>За тем что бы если что сломается увидеть сразу. Пример 667


DR>Это достигается добавлением тестов в скрипт сборки.


Зачем усложнять? Если можно Просто добавить тесты в сам немерле? Вопрос в том возможно ли это сделать в принципе. Можно ли при компиляции вызвать компилируемую функцию пусть даже из другого модуля
Re[5]: тесты в rust
От: Ziaw Россия  
Дата: 11.04.12 03:58
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Зачем усложнять? Если можно Просто добавить тесты в сам немерле? Вопрос в том возможно ли это сделать в принципе. Можно ли при компиляции вызвать компилируемую функцию пусть даже из другого модуля


Из другого модуля возможно. Но это действительно мало чем будет отличаться, от запуска тестов в postbuild step.
Re[6]: тесты в rust
От: Аноним  
Дата: 11.04.12 04:04
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>Из другого модуля возможно. Но это действительно мало чем будет отличаться, от запуска тестов в postbuild step.

Тесты можно забыть запустить что в немерле было не однократно.
Кстати почему тесты нельзя делать но месту? Это крайне не удобно разбивать один логический модуля на 2 файла.
Re[7]: тесты в rust
От: para  
Дата: 11.04.12 05:08
Оценка:
Здравствуйте, Аноним, Вы писали:
сделать можно всё что угодно и в Н это не так сложно, было бы кому делать и для кого

я например первый раз услышал про такую потребность и (возможно в силу консерватизма) абсолютно не понимаю зачем оно надо и в чём выигрыш
я например для c# пользуюсь TestDriven.Net и вообще не компилирую сам, а сразу запускаю тест (всего то надо нажать 1 кнопку)
для Н это к сожалению не работает. хотел посмотреть в чём дело но руки не доходят. Разговаривал с автором TestDriven.Net — он сказал что это особенность студии и кроме шарпа и вб нигде работать и не должно (хотя мне всё равно интересно посмотреть)

А>Тесты можно забыть запустить что в немерле было не однократно.

по уму надо бы сделать авто проверку перед комитом в основную ветку

вы пробовали запускать тесты компилятора. это долго. на каждый чих перекомпиляции это совсем неудобно

А>Кстати почему тесты нельзя делать но месту? Это крайне не удобно разбивать один логический модуля на 2 файла.

почему нельзя? можно. но не для макросов конечно — для них тесты должны быть в отдельной сборке
Re: тесты в rust
От: catbert  
Дата: 11.04.12 08:40
Оценка:
Здравствуйте, Аноним, Вы писали:

А>в этом языке тесты проходятся в момент компиляции. Т.е. Сломать тесты не возможно так как проект Просто не скомпилируется. Думаю для немерле это уже стало актуально. Возможно ли такое сделать?


Это к сожалению не поможет. Разве что добавлять поддержку тестов в git Чтобы в результате успешной работы всех тестов выдавался криптоключ, без которого нельзя коммитить .
Re: тесты в rust
От: hardcase Пират http://nemerle.org
Дата: 11.04.12 11:43
Оценка:
Здравствуйте, Аноним, Вы писали:

А>в этом языке тесты проходятся в момент компиляции. Т.е. Сломать тесты не возможно так как проект Просто не скомпилируется. Думаю для немерле это уже стало актуально. Возможно ли такое сделать?


Ты не поверишь, утиллита тестирования компилятора занимается хостингом самого компилятора. Конечно ее можно включить в компилятор, тоьлко смысла в этом нет никакого хотя бы потому, что никто из разработчиков не вызывает ncc из коносли. Для перед коммитом все запускают полную 4-стадийную пересборку с прогоном тестов, сборкой сопутствующих библиотек, прогоном тестов библиотек, сборкой интеграции в вижак и прогом тестов для нее.
/* иЗвиНите зА неРовнЫй поЧерК */
Re[2]: тесты в rust
От: Аноним  
Дата: 11.04.12 11:59
Оценка:
Здравствуйте, hardcase, Вы писали:

H>Ты не поверишь, утиллита тестирования компилятора занимается хостингом самого компилятора. Конечно ее можно включить в компилятор, тоьлко смысла в этом нет никакого хотя бы потому, что никто из разработчиков не вызывает ncc из коносли. Для перед коммитом все запускают полную 4-стадийную пересборку с прогоном тестов, сборкой сопутствующих библиотек, прогоном тестов библиотек, сборкой интеграции в вижак и прогом тестов для нее.


Вообще в Rust тесты применяются не из консоли.
При компиляции запускаются тесты и если есть ошибки то вываливаются в виде error.
В принципе вещь довольно полезная и интересная.
секция [test] может располагаться в том же файле что и тестируемый код

use std;

fn twice(x: int) -> int { x + x }

#[test]
fn test_twice() {
let mut i = -100;
while i < 100 {
assert twice(i) == 2 * i;
i += 1;
}
}

Вообще выглядит крайне интересно
Re[3]: тесты в rust
От: Аноним  
Дата: 11.04.12 12:11
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, hardcase, Вы писали:


Вогобще это мысль для Н2 сделать макрсами.
http://doc.rust-lang.org/doc/tutorial.html
Re[3]: тесты в rust
От: hardcase Пират http://nemerle.org
Дата: 11.04.12 12:28
Оценка:
Здравствуйте, Аноним, Вы писали:

А>При компиляции запускаются тесты и если есть ошибки то вываливаются в виде error.


У нас ошибка при прохождении теста == Build failed для msbuild.
Только использются не ассерты, а сравнение вывода программы с эталонным. Причем тест — это законеченная изолированная программа, при желании можно на таких входных данных (файле) отлаживать компилятор.
/* иЗвиНите зА неРовнЫй поЧерК */
Re[3]: тесты в rust
От: para  
Дата: 11.04.12 13:31
Оценка:
Здравствуйте, Аноним, Вы писали:

А>#[test]

А>fn test_twice() {
А> let mut i = -100;
А> while i < 100 {
А> assert twice(i) == 2 * i;
А> i += 1;
А> }
А>}

Nemerle, C# и вся остальная компания + например Nunit
class LogicClass
{
  LogicMethod():int
  {
    3
  }
  [Test]
  TestLogicMethod():void
  {
    Assert.That(LogicMethod(), Is.Equal(3));
  }
}

но я не считаю что это удобно
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.