Size: a a a

2020 March 30

PK

Pavel Kazakov in pro.cxx
ARCHANGEL
парни, если у меня в анонимном неймспейсе есть метод, который нужно покрыть юниттестами, какой правильный подход выбрать, чтоб до него добраться?
линкер скрипты и кастомный компилятор) нельзя такие функции покрывать тестами -- они специально спрятаны
источник

PK

Pavel Kazakov in pro.cxx
как ты к этой функции из другого TU обратишься?
источник

A

ARCHANGEL in pro.cxx
что такое TU? translation unit?
источник

PK

Pavel Kazakov in pro.cxx
да
источник

A

ARCHANGEL in pro.cxx
да в коде продукта - никак, мне бы только для тестов её дёрнуть
источник

DK

Denis Kormalev in pro.cxx
ARCHANGEL
парни, если у меня в анонимном неймспейсе есть метод, который нужно покрыть юниттестами, какой правильный подход выбрать, чтоб до него добраться?
теоретически можно #include "myfile.cpp", но не факт что это будет работать для твоего случая
источник

A

ARCHANGEL in pro.cxx
Denis Kormalev
теоретически можно #include "myfile.cpp", но не факт что это будет работать для твоего случая
спасибо, помогло
источник
2020 March 31

ПК

Побитый Кирпич in pro.cxx
ARCHANGEL
парни, если у меня в анонимном неймспейсе есть метод, который нужно покрыть юниттестами, какой правильный подход выбрать, чтоб до него добраться?
Дак выпили из анонимного неймспейса
источник

IS

Iskander Saitbatalov in pro.cxx
Побитый Кирпич
Дак выпили из анонимного неймспейса
- Доктор, у меня, если надавить вот здесь, болит.
- А если не надавливать, не болит?
- Нет.
- Ну так и не надавливайте. С вас 1000 рублей.
источник

AB

Artöm Bakri Al-Sarmini in pro.cxx
ARCHANGEL
парни, если у меня в анонимном неймспейсе есть метод, который нужно покрыть юниттестами, какой правильный подход выбрать, чтоб до него добраться?
namespace TEST_ONLY_NAME {}
источник

CD

Constantine Drozdov in pro.cxx
самое время инклудить cpp
источник

CD

Constantine Drozdov in pro.cxx
ARCHANGEL
парни, если у меня в анонимном неймспейсе есть метод, который нужно покрыть юниттестами, какой правильный подход выбрать, чтоб до него добраться?
Зачем ты вообще метод в details тестами покрываешь? Чтобы при любом изменении их выполнить?
источник

AT

Anatoly Tomilov in pro.cxx
Объект, композиция объектов, конструируется так, что каждый следующий данное-член зависит от предыдущего (используется при инициализации). При вызове деструктора в деструкторах данных-членов происходит освобождение ресурсов, которыми они владеют. Это происходит в порядке обратном порядку инициализации. Что корректно. Но если я вызываю оператор присваивания (автогенерированный), то он разрушает данные-члены в прямом порядке, что некорректно. Как этого избежать?
источник

AT

Anatoly Tomilov in pro.cxx
Вообще в языке/библиотеке зависит что-то от порядка присваивания данных-членов для композитных типов данных?
источник

ДЛ

Дмитрий ⬡ Лапшин in pro.cxx
Anatoly Tomilov
Объект, композиция объектов, конструируется так, что каждый следующий данное-член зависит от предыдущего (используется при инициализации). При вызове деструктора в деструкторах данных-членов происходит освобождение ресурсов, которыми они владеют. Это происходит в порядке обратном порядку инициализации. Что корректно. Но если я вызываю оператор присваивания (автогенерированный), то он разрушает данные-члены в прямом порядке, что некорректно. Как этого избежать?
Оператор присваивания не разрушает, вот и ответ.
источник

AT

Anatoly Tomilov in pro.cxx
Дмитрий ⬡ Лапшин
Оператор присваивания не разрушает, вот и ответ.
можно поразвёрнутее, не делая умный вид?
источник

ДЛ

Дмитрий ⬡ Лапшин in pro.cxx
Не хотел делать умный вид) Хотя конечно если бы он разрушал конфликт очевидно есть.

operator = по умолчанию вызывает operator = для всех баз и полей, и так далее. Идеологически operator = и уничтожить-и-создать-поверх развязанные операции.
источник

AT

Anatoly Tomilov in pro.cxx
ладно. Там каждое данное-член, допустим, это std::unique_ptr над ресурсом
источник

AT

Anatoly Tomilov in pro.cxx
так что ресурс разрушается
источник

AT

Anatoly Tomilov in pro.cxx
и оператор пусть будет move-assignment operator-ом
источник