<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Apollo Systems Contracts &#187; Embunit</title>
	<atom:link href="http://www.apollo-systems.co.uk/dev/tag/embunit/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.apollo-systems.co.uk/dev</link>
	<description>Embedded Software Consultants</description>
	<lastBuildDate>Wed, 03 Mar 2021 08:59:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>New website for Embunit www.embunit.com</title>
		<link>http://www.apollo-systems.co.uk/dev/2012/new-website-for-embunit-www-embunit-com/</link>
		<comments>http://www.apollo-systems.co.uk/dev/2012/new-website-for-embunit-www-embunit-com/#comments</comments>
		<pubDate>Wed, 14 Mar 2012 16:20:26 +0000</pubDate>
		<dc:creator>Greg Philpott</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Embunit]]></category>
		<category><![CDATA[unit testing]]></category>

		<guid isPermaLink="false">http://www.apollo-systems.co.uk/dev/?p=450</guid>
		<description><![CDATA[<p>The new website is up and running with features, file downloads, online purchase, support and maintenance details, etc.</p> <p>Visit embunit.com</p>]]></description>
			<content:encoded><![CDATA[<p>The new website is up and running with features, file downloads, online purchase, support and maintenance details, etc.</p>
<p>Visit <a href="http://www.embunit.com">embunit.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.apollo-systems.co.uk/dev/2012/new-website-for-embunit-www-embunit-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Embunit is here!</title>
		<link>http://www.apollo-systems.co.uk/dev/2012/embunit-is-here/</link>
		<comments>http://www.apollo-systems.co.uk/dev/2012/embunit-is-here/#comments</comments>
		<pubDate>Fri, 24 Feb 2012 12:12:55 +0000</pubDate>
		<dc:creator>Greg Philpott</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Embunit]]></category>
		<category><![CDATA[unit testing]]></category>

		<guid isPermaLink="false">http://www.apollo-systems.co.uk/dev/?p=432</guid>
		<description><![CDATA[<p>Version 1.0.0 of Embunit is now available for download.</p> <p>The download is 48MB, most of which is the .NET 4.0 Client Profile. If you don&#8217;t want to download the whole thing straightaway, have a look at the User Guide to get a feel for what it can do.</p> <p>The download includes a 30 day evaluation &#8230; </p><p><a class="more-link block-button" href="http://www.apollo-systems.co.uk/dev/2012/embunit-is-here/">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Version 1.0.0 of Embunit is now available for download.</p>
<p>The download is 48MB, most of which is the .NET 4.0 Client Profile. If you don&#8217;t want to download the whole thing straightaway, have a look at the User Guide to get a feel for what it can do.</p>
<p>The download includes a 30 day evaluation license. If you need to evaluate for longer, contact me and I will send you a different license key.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.apollo-systems.co.uk/dev/2012/embunit-is-here/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Coming soon &#8211; Embunit</title>
		<link>http://www.apollo-systems.co.uk/dev/2012/coming-soon-embunit/</link>
		<comments>http://www.apollo-systems.co.uk/dev/2012/coming-soon-embunit/#comments</comments>
		<pubDate>Fri, 20 Jan 2012 15:59:41 +0000</pubDate>
		<dc:creator>Greg Philpott</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Embunit]]></category>
		<category><![CDATA[unit testing]]></category>

		<guid isPermaLink="false">http://www.apollo-systems.co.uk/dev/?p=370</guid>
		<description><![CDATA[<p>The first version of the unit testing tool is complete. I am just sorting out the final details like the installer, license keys, web site, example projects etc.</p> <p>The name of the product is Embunit and it runs on .NET 4.0, which means if you are running Windows XP you need SP3. If this proves &#8230; </p><p><a class="more-link block-button" href="http://www.apollo-systems.co.uk/dev/2012/coming-soon-embunit/">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<p>The first version of the unit testing tool is complete. I am just sorting out the final details like the installer, license keys, web site, example projects etc.</p>
<p>The name of the product is Embunit and it runs on .NET 4.0, which means if you are running Windows XP you need SP3. If this proves to be an obstacle I will build a version that runs on an earlier version of .NET (most likely 2.0 or 3.5). The problem with the earlier versions is that if you don&#8217;t already have the .NET framework you&#8217;re looking at a 200MB download, whereas .NET 4.0 is about 41MB for the Client Profile. I was really surprised to discover that my laptop runs Microsoft Office 2010 with no .NET framework whatsoever!</p>
<p>Note: There is a sourceforge project called Embedded Unit that uses the abbreviation embUnit. That is nothing to do with my product and hopefully there won&#8217;t be too much (added) confusion. A quick search of unit testing tools and frameworks throws up a plethora of similar sounding names; so I&#8217;m in good company.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.apollo-systems.co.uk/dev/2012/coming-soon-embunit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Test harness code generation</title>
		<link>http://www.apollo-systems.co.uk/dev/2011/test-harness-code-generation/</link>
		<comments>http://www.apollo-systems.co.uk/dev/2011/test-harness-code-generation/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 16:48:16 +0000</pubDate>
		<dc:creator>Greg Philpott</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[blackbox testing]]></category>
		<category><![CDATA[code generation]]></category>
		<category><![CDATA[Embunit]]></category>
		<category><![CDATA[unit testing]]></category>
		<category><![CDATA[whitebox testing]]></category>

		<guid isPermaLink="false">http://www.apollo-systems.co.uk/dev/?p=336</guid>
		<description><![CDATA[<p>The development of our new unit testing tool has reached its first milestone with the completion of the test harness generator.</p> <p>The generator takes an XML file containing the test case definitions and automatically generates C or C++ source code for the test harness. Some of the C++ features are:</p> Objects can be instantiated (on &#8230; </p><p><a class="more-link block-button" href="http://www.apollo-systems.co.uk/dev/2011/test-harness-code-generation/">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<p>The development of our new unit testing tool has reached its first milestone with the completion of the test harness generator.</p>
<p>The generator takes an XML file containing the test case definitions and automatically generates C or C++ source code for the test harness. Some of the C++ features are:</p>
<ul>
<li>Objects can be instantiated (on the heap or the stack), methods called, and objects deleted.</li>
<li>Exceptions can be tested (including those thrown by constructors), and unexpected exceptions are trapped.</li>
<li>The output of the test harness is easily configured to suit the target hardware.</li>
<li>The test context is accessable from user stub-code.</li>
<li>Whitebox testing is implemented by adding a friend to the class being tested.</li>
<li>Exception handling can be disabled to make the generated code compatible with Embedded C++ compilers.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.apollo-systems.co.uk/dev/2011/test-harness-code-generation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Embedded C++ Compiler Limitations</title>
		<link>http://www.apollo-systems.co.uk/dev/2011/embedded-c-compiler-limitations/</link>
		<comments>http://www.apollo-systems.co.uk/dev/2011/embedded-c-compiler-limitations/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 15:23:45 +0000</pubDate>
		<dc:creator>Greg Philpott</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[embedded C++]]></category>
		<category><![CDATA[embedded software]]></category>
		<category><![CDATA[embedded systems]]></category>
		<category><![CDATA[Embunit]]></category>

		<guid isPermaLink="false">http://www.apollo-systems.co.uk/dev/?p=313</guid>
		<description><![CDATA[<p>These days there are many C++ compilers available for developing embedded software.  However, they often provide a restricted set of language features, or have the facility to switch-off certain features. Some examples are given below, and from these it seems the feature most likely to be omitted is exception handling.</p> ARM <p>ARM’s C++ compiler has &#8230; </p><p><a class="more-link block-button" href="http://www.apollo-systems.co.uk/dev/2011/embedded-c-compiler-limitations/">Continue reading &#187;</a>]]></description>
			<content:encoded><![CDATA[<p>These days there are many C++ compilers available for developing embedded software.  However, they often provide a restricted set of language features, or have the facility to switch-off certain features. Some examples are given below, and from these it seems the feature most likely to be omitted is <strong>exception handling</strong>.</p>
<div class="important_block">The unit testing tool being developed by Apollo Systems Contracts supports <strong>exception handling</strong> (including testing that exceptions are generated and detecting uncaught exceptions). However exception handling can be disabled, making it compatible with <strong>&#8216;Embedded C++&#8217;</strong> as defined below.</div>
<h2>ARM</h2>
<p>ARM’s C++ compiler has exceptions disabled by default.</p>
<h2>IAR</h2>
<p>IAR’s compiler supports exceptions, but can also be run in ‘Embedded C++’ mode (see below), or their own rather less-restricted ‘Extended Embedded C++’ mode (just lacks RTTI and Exceptions).</p>
<h2>Embedded C++</h2>
<p>The <a title="Embedded C++" href="http://en.wikipedia.org/wiki/Embedded_C%2B%2B" target="_blank">Embedded C++</a> language (EC++) lacks the following features:</p>
<ul>
<li>Multiple inheritance</li>
<li>Virtual base classes</li>
<li>Run-time type information (RTTI)</li>
<li>New style casts (static_cast, dynamic_cast, reinterpret_cast, and const_cast)</li>
<li>The mutable type qualifier</li>
<li>Namespaces</li>
<li>Exceptions</li>
<li>Templates</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.apollo-systems.co.uk/dev/2011/embedded-c-compiler-limitations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
