0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 67
|
|||||||||||
1 | |||||||||||
Юнит тесты18.04.2015, 21:07. Показов 1519. Ответов 11
Метки нет (Все метки)
Помогите разобраться, не проходят два теста, я уже не знаю почему.
//Проверка на ввод посторонних символов
0
|
18.04.2015, 21:07 | |
Ответы с готовыми решениями:
11
Юнит-тесты Юнит-тесты А что вообще такое юнит тесты? Написать юнит-тесты и реализовать следующую функцию: Заполняет квадратную подматрицу заданным числом |
Ушел с форума
|
|
18.04.2015, 21:13 | 2 |
isNumber - какая-то ну очень уж странная функция.
Логика работы непонятна, несмотря на то, что всего несколько строк. И почему "return true" закомментирована ?..
0
|
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 67
|
||||||
18.04.2015, 21:36 [ТС] | 3 | |||||
Я понимаю
Сама убедилась. А так надо ввести длинное число. И чтобы отрицательные распознавала. В общем, походу я сделала какую-то фигню))
Добавлено через 5 минут Убежденный, Хотя при компиляции никаких проблем, число 50118 проходит, почему же тест не хочет?
0
|
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,353
|
|
18.04.2015, 21:36 | 4 |
А там и нет логики. Это catch сущности "целое со знаком" из массива ASCII байт.
flo, Проверка знака (которым кстати может быть и +) выносится из цикла, дальше пока isdigit(str[i]) крутим цикл, потом вовзращаем isDelimiter(str[i]). В таком варианте просто минус или плюс тоже будут числом (равным нулю), ну или обработать на своё усмотрение.
0
|
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 67
|
|
18.04.2015, 21:41 [ТС] | 5 |
castorsky, будем пробовать. У меня с программированием не очень и это мягко сказано
0
|
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,353
|
|
18.04.2015, 21:50 | 6 |
flo, кстати по опыту говорю что булева проверка любой сущности, которую мы формируем из потока это занятие бессмысленное. Обработчик терма должен возвращать два значения, в первом будет результат обработки если она прошла успешно, во втором будет флаг истинности проверки. А то получается так что Вы пробегаете по всему потоку и фозвращаете только флаг, и если флаг - истина, то надо опять бегать по потоку и собирать значение. Это делается всё сразу.
Добавлено через 4 минуты вот это надо выпилить else if (str[i] >'0' || str[i]<'9') return true; возвращаемое значение раскомментировать
0
|
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 67
|
|
18.04.2015, 21:53 [ТС] | 7 |
castorsky, я Вас очень плохо понимаю, как и программирование)
Добавлено через 1 минуту Это я уже бездумно вписала, изначально было так, как Вы сказали. Просто я не понимаю, почему тест с числом проходит с ошибкой.
0
|
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,353
|
|
18.04.2015, 21:56 | 8 |
видимо второй тест проверяет не то, что ему сказано проверять. Что это за сущность FirstCharacter_is_Negative?
0
|
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 67
|
|
18.04.2015, 21:58 [ТС] | 9 |
0
|
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,353
|
|
18.04.2015, 21:59 | 10 |
0
|
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 67
|
|
18.04.2015, 22:26 [ТС] | 11 |
Вот этот тест ошибочный
Добавлено через 2 минуты Это просто название теста Добавлено через 23 минуты Скорее всего не нужно было создавать таких тестов
0
|
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,353
|
|
18.04.2015, 22:30 | 12 |
Не то чтобы. Судя по всему сами тесты неправильно оформлены. Функция корректна (будет после указанных правок), а про буст тесты пусть плюсисты с черным поясом расскажут. Можете еще посмотреть во что развернутся макросы, скорее всего поможет.
0
|
18.04.2015, 22:30 | |
18.04.2015, 22:30 | |
Помогаю со студенческими работами здесь
12
Юнит-тесты: приложение, считающее количество слов с заданной буквой в текстовом файле через тестирование Реализовать функцию построчной записи значений двумерного массива в одномерный и наоборот; написать юнит-тесты Юнит-тестирование Юнит-тестирование Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |