A few questions about regression system

Hello All, I am currently setting up the test system for typeof. My understanding is that I have to do the following: 1) put each test in a separate CPP file; 2) import testing rules; 3) put the following in the Jamfile: compile test1.cpp ; compile test2.cpp ; . . . 4) mention typeof in the file that lists all the boost tests. Is this correct and all that needs to be done? Also, where is it specified which compilers are supportred? Thanks in advance. Regards, Arkadiy

"Arkadiy Vertleyb" <vertleyb@hotmail.com> writes:
Hello All,
I am currently setting up the test system for typeof. My understanding is that I have to do the following:
1) put each test in a separate CPP file;
That's the easiest way, but it's not required.
2) import testing rules;
Yes, you'll need to do that.
3) put the following in the Jamfile:
compile test1.cpp ; compile test2.cpp ; . . .
No, follow the formula used in libs/parameter/test/Jamfile
4) mention typeof in the file that lists all the boost tests.
Yes.
Also, where is it specified which compilers are supportred?
I think status/explicit-failures-markup.xml might be what you're after? -- Dave Abrahams Boost Consulting www.boost-consulting.com

"David Abrahams" <dave@boost-consulting.com> wrote
"Arkadiy Vertleyb" <vertleyb@hotmail.com> writes:
3) put the following in the Jamfile:
compile test1.cpp ; compile test2.cpp ; . . .
No, follow the formula used in libs/parameter/test/Jamfile
Understood.
Also, where is it specified which compilers are supportred?
I think status/explicit-failures-markup.xml might be what you're after?
Yes, it seems to be, thanks. One more question: where are such rules as "compile", "link_fail", etc., defined, and (even better) are they documented anywhere? For example, is it possible to do something like this to test both native and emulation mode: compile -D BOOST_TYPEOF_NATIVE -Name test_native test.cpp compile -D BOOST_TYPEOF_COMPLIANT -Name test_emulation test.cpp (test.cpp is compiled with different defines, the resulting tests have distinct names)? Or should separate CPP files be defined? Will I then have to define expected failures for the compilers that don't support the native typeof mode? Also, do we need both Jamfile and Jamfile.v2? Which version of build is currently used by the regression system? Thanks, Arkadiy

"Arkadiy Vertleyb" <vertleyb@hotmail.com> writes:
"David Abrahams" <dave@boost-consulting.com> wrote
"Arkadiy Vertleyb" <vertleyb@hotmail.com> writes:
3) put the following in the Jamfile:
compile test1.cpp ; compile test2.cpp ; . . .
No, follow the formula used in libs/parameter/test/Jamfile
Understood.
Also, where is it specified which compilers are supportred?
I think status/explicit-failures-markup.xml might be what you're after?
Yes, it seems to be, thanks.
One more question: where are such rules as "compile", "link_fail", etc., defined,
tools/build/v1/testing.jam
and (even better) are they documented anywhere?
http://www.boost.org/status/compiler_status.html#quick-reference is the best I can do.
For example, is it possible to do something like this to test both native and emulation mode:
compile -D BOOST_TYPEOF_NATIVE -Name test_native test.cpp compile -D BOOST_TYPEOF_COMPLIANT -Name test_emulation test.cpp
(test.cpp is compiled with different defines, the resulting tests have distinct names)? Or should separate CPP files be defined?
compile test.cpp : <define>BOOST_TYPEOF_NATIVE : native ; compile test.cpp : <define>BOOST_TYPEOF_COMPLIANT : emulation ;
Will I then have to define expected failures for the compilers that don't support the native typeof mode?
I don't know.
Also, do we need both Jamfile and Jamfile.v2? Which version of build is currently used by the regression system?
v1, but it is being obsoleted ASAP. Jamfile.v2 will be called just Jamfile when that happens, though. Add a Jamfile.v2 as a convenience for those of use using v2, if you like. -- Dave Abrahams Boost Consulting www.boost-consulting.com
participants (2)
-
Arkadiy Vertleyb
-
David Abrahams