Test Applications

Test Applications

The Test Applications suite is a set of utilities for use when developing applications. Other test applications will be restored from archival records as time permits or as need arises.

The following are property of Happy Cat Technologies, released for public use under the GNU GPL Version 3. Please refer to the license for its terms and conditions. No warranty is made by Happy Cat Technologies or the author as to the fitness, operation, or workability of any application contained here.

AlReaud Mon, 06/06/2011 - 08:12

HTML Tag Functionality Testing

HTML Tag Functionality Testing

Here we test what different HTML tags view like on a given browser. To test the browser, one just reads this page and scans down it. Tags that don't operate correctly on your browser will be obvious. Styles are not tested on this page.

Content Based Style Tags:

  • This is a test of cite.
  • This is a test of code.
  • This is a test of dfn.
  • This is a test of em.
  • This is a test of kbd.
  • This is a test of sample.
  • This is a test of strong.
  • This is a test of var.

Physical Style Tags:

  • This is a test of bold.
  • This is a test of font size=+1.
  • This is a test of font size=-1.
  • This is a test of italics.
  • This is a test of strike.
  • This is a test of subscript.
  • This is a test of superscript.
  • This is a test of teletype.
  • This is a test of underline.

ISO 8859-1 Entities

These are the Latin-1 character entities.

The following is quoted from WDG's Latin-1 Entities:
Browser support is generally best for the decimal character references, except for the accented characters (decimal 192-214, 216-246, 248-255), where the character entity references hold a slight edge.

Note that most Mac browsers will render fourteen Latin-1 characters incorrectly. These characters are decimal 166, 178, 179, 185, 188, 189, 190, 208, 215, 221, 222, 240, 253, and 254. See ISO-8859-1 and the Mac platform for more information.

Entity Decimal
Description Displayed
    Non-breaking space  
¡ ¡ Inverted exclamation mark ¡
¢ ¢ Cent sign ¢
£ £ Pound sterling symbol £
¤ ¤ General currency sign ¤
¥ ¥
Japanese Yen sign
¦ ¦ Broken vertical bar
§ § Section sign §
¨ ¨ Umlaut (dieresis) ¨
© © Copyright sign ©
ª ª Feminine ordinal indicator ª
« « Left angle quotation mark «
¬ ¬ Not sign ¬
­ ­ Soft hyphen ­
® ® Registered sign ®
¯ ¯ Macron ¯
° ° Degree sign °
± ± Plus/minus sign ±
² ² Squared sign (superscript two) ²
³ ³ Cubed sign (superscript three) ³
´ ´ Acute accent ´
µ µ Micro sign µ
¶ ¶ Paragraph sign (pilcrow)
· · Middle dot ·
¸ ¸ Cedilla ¸
¹ ¹ Power of one (superscript one) ¹
º º Masculine ordinal indicator º
» » Right angle quotation mark »
¼ ¼ One-quarter fraction ¼
½ ½ One-half fraction ½
¾ ¾ Three-quarters fraction ¾
¿ ¿ Inverted question mark ¿
À À "A" with grave accent À
Á Á "A" with acute accent Á
  "A" with circumflex accent Â
à à "A" with tilde Ã
Ä Ä "A" with dieresis or umlaut mark Ä
Å Å "A" with ring (angstrom) Å
Æ Æ "AE" diphthong (ligature) Æ
Ç Ç "C" with cedilla Ç
È È "E" with grave accent  È
É É "E" with acute accent É
Ê Ê "E" with circumflex accent Ê
Ë Ë "E" with dieresis or umlaut mark  Ë
Ì Ì "I" with grave accent  Ì
Í Í "I" with acute accent  Í
Î Î "I" with circumflex accent Î
Ï Ï "I" with dieresis or umlaut mark  Ï
Ð Ð "Eth", Icelandic  Ð
Ñ Ñ "N" with tilde (Spanish enye) Ñ
Ò Ò "O" with grave accent Ò
Ó Ó "O" with acute accent Ó
Ô Ô "O" with circumflex accent Ô
Õ Õ "O" with tilde Õ
Ö Ö "O" with dieresis or umlaut mark Ö
× × Multiplication sign ×
Ø Ø "O" with slash, empty set symbol Ø
Ù Ù "U" with grave accent Ù
Ú Ú "U" with acute accent Ú
Û Û "U" with circumflex accent Û
Ü Ü "U" with dieresis or umlaut mark Ü
Ý Ý "Y" with acute accent Ý
Þ Þ "THORN", Icelandic Þ
ß ß Sharp "s", German (sz ligature) ß
à à "a" with grave accent à
á á "a" with acute accent á
â â "a" with circumflex accent â
ã ã "a" with tilde ã
ä ä "a" with dieresis or umlaut mark ä
å å "a" with ring å
æ æ "ae" diphthong (ligature) æ
ç ç "c" with cedilla ç
è è "e" with grave accent è
é é "e" with acute accent é
ê ê "e" with circumflex accent ê
ë ë "e" with dieresis or umlaut mark ë
ì ì "i" with grave accent ì
í í "i" with acute accent í
î î "i" with circumflex accent î
ï ï "i" with dieresis or umlaut mark ï
ð ð "eth", Icelandic ð
ñ ñ "n" with tilde (Spanish enye) ñ
ò ò "o" with grave accent ò
ó ó "o" with acute accent ó
ô ô "o" with circumflex accent ô
õ õ "o" with tilde õ
ö ö "o" with dieresis or umlaut mark ö
÷ ÷ Division sign ÷
ø ø "o" with slash, empty set symbol ø
ù ù "u" with grave accent ù
ú ú "u" with acute accent  ú
û û "u" with circumflex accent  û
ü ü "u" with dieresis or umlaut mark  ü
ý ý "y" with acute accent  ý
þ þ "thorn", Icelandic  þ
ÿ ÿ "y" with dieresis or umlaut mark  ÿ


Entities for Symbols and Greek Letters

The following is quoted from WDG's Entities for Symbols and Greek Letters:
Browser support for these entities is generally quite poor, but recent browsers support some of the character entity references and decimal character references.

Microsoft Internet Explorer version 6.0.2800.1106.xp... represents most of the characters correctly.

Netscape 4.7 does not appear to support a majority of these characters.  Mosaic version 3.0 represents these characters as Latin-1 characters or represents them incorrectly.

Entity Decimal
Description Displayed
ƒ ƒ Function designator ƒ ƒ
Α Α Greek capital alpha Α Α
Β Β Greek capital beta Β Β
Γ Γ Greek capital gamma Γ Γ
Δ Δ Greek capital delta Δ Δ
Ε Ε Greek capital epsilon Ε Ε
Ζ Ζ Greek capital zeta Ζ Ζ
Η Η Greek capital eta Η Η
Θ Θ Greek capital theta Θ Θ
Ι Ι Greek capital iota Ι Ι
Κ Κ Greek capital kappa Κ Κ
Λ Λ Greek capital lambda Λ Λ
Μ Μ Greek capital mu Μ Μ
Ν Ν Greek capital nu Ν Ν
Ξ Ξ Greek capital xi Ξ Ξ
Ο Ο Greek capital omicron Ο Ο
Π Π Greek capital pi Π Π
Ρ Ρ Greek capital rho Ρ Ρ
Σ Σ Greek capital sigma Σ Σ
Τ Τ Greek capital tau Τ Τ
Υ Υ Greek capital upsilon Υ Υ
Φ Φ Greek capital phi Φ Φ
Χ Χ Greek capital chi Χ Χ
Ψ Ψ Greek capital psi Ψ Ψ
Ω Ω Greek capital omega Ω Ω
α α Greek small alpha α α
β β Greek small beta β β
γ γ Greek small gamma γ γ
δ δ Greek small delta δ δ
ε ε Greek small epsilon ε ε
ζ ζ Greek small zeta ζ ζ
η η Greek small eta η η
θ θ Greek small theta θ θ
ι ι Greek small iota ι ι
κ κ Greek small kappa κ κ
λ λ Greek small lambda λ λ
μ μ Greek small mu μ μ
ν ν Greek small nu ν ν
ξ ξ Greek small xi ξ ξ
ο ο Greek small omicron ο ο
π π Greek small pi π π
ρ ρ Greek small rho ρ ρ
ς ς Greek small final sigma ς ς
σ σ Greek small sigma σ σ
τ τ Greek small tau τ τ
υ υ Greek small upsilon υ υ
φ φ Greek small phi φ φ
χ χ Greek small chi χ χ
ψ ψ Greek small psi ψ ψ
ω ω Greek small omega ω ω
ϑ ϑ Greek small theta symbol ϑ ϑ
ϒ ϒ Greek upsilon with hook ϒ ϒ
ϖ ϖ Greek pi symbol ϖ ϖ
• • Bullet symbol
… … Horizontal ellipsis
′ ′ Prime symbol (minutes,  feet)
″ ″ Double prime symbol (seconds, inches)
‾ ‾ Overline (spacing overscore)
⁄ ⁄ Fraction slash
℘ ℘ Script capital P (power set, Weierstrass p)
ℑ ℑ Imaginary part symbol
ℜ ℜ Real part symbol
™ ™ Trade Mark symbol
ℵ ℵ Alef symbol
← ← Left arrow
↑ ↑ Up arrow
→ → Right arrow
↓ ↓ Down arrow
↔ ↔ Left right arrow
↵ ↵ Downwards arrow with corner left
⇐ ⇐ Left double arrow
⇑ ⇑ Up double arrow
⇒ ⇒ Right double arrow
⇓ ⇓ Down double arrow
⇔ ⇔ Left right double arrow
∀ ∀ For All symbol
∂ ∂ Calculus partial differential sign
∃ ∃ There Exists symbol
∅ ∅ Empty set (null set, diameter)
∇ ∇ Vector derivative operator (nabla, backward difference)
∈ ∈ Element Of symbol
∉ ∉ Not An Element Of symbol
∋ ∋ Contains As Member symbol
∏ ∏ Product operator symbol
∑ ∑ Sumation operator symbol
− − Minus sign
∗ ∗ Asterisk operator symbol
√ √ Square root operator symbol
∝ ∝ Proportional To symbol
∞ ∞ Infinity symbol
∠ ∠ Angle designator symbol
∧ ∧ Logical And symbol
∨ ∨ Logical Or symbol
∩ ∩ Intersection symbol
∪ ∪ Union symbol
∫ ∫ Integral sign
∴ ∴ Logical Therefore operator
∼ ∼ Tilde operator (varies with, similar to)
≅ ≅ Congruent symbol
≈ ≈ Approximately equal to symbol (asymptotic to)
≠ ≠ Not Equal To symbol
≡ ≡ Identical To symbol
≤ ≤ Less-Than Or Equal To symbol
≥ ≥ Greater-Than Or Equal To symbol
⊂ ⊂ Subset Of symbol
⊃ ⊃ Superset Of symbol
⊄ ⊄ Not A Subset Of symbol
⊆ ⊆ Subset Of or Equal To symbol
⊇ ⊇ Superset Of Or Equal To symbol
⊕ ⊕ Direct Sum symbol (circled plus)
⊗ ⊗ Vector Product symbol (circled times)
⊥ ⊥ Perpendicular symbol (up tack, orthogonal to)
⋅ ⋅ Vector Dot Operator symbol
⌈ ⌈ Left Ceiling symbol
⌉ ⌉ Right Ceiling symbol
⌊ ⌊ Left Floor symbol
⌋ ⌋ Right Floor symbol
⟨ 〈 Bra symbol (left-pointing angle bracket)
⟩ 〉 Ket Symbol (right-pointing angle bracket)
◊ ◊ Lozenge
♠ ♠ Black spade suit
♣ ♣ Black club suit (shamrock)
♥ ♥ Black heart suit (valentine)
♦ ♦ Black diamond suit

Special Entities

Special character entities not covered in the other tables.  Some of the characters may be apparently reproduced, but actually are not.. 

The following is quoted from WDG's Other Special Characters:
With the exception of HTML 2.0's ", &, <, and >, browser support for these entities is generally quite poor, but recent browsers support some of the character entity references and decimal character references.

Entity Decimal
Description Displayed
" " Quotation marks " "
& & Ampersand character & &
&lt; &#60; Less-Than sign < <
&gt; &#62; Greater-Than sign > >
&OElig; &#338; Capital ligature OE Œ Œ
&oelig; &#339; Small ligature oe œ œ
&Scaron; &#352; "S" with caron Š Š
&scaron; &#353; "s" with caron š š
&Yuml; &#376; "Y" with diaeresis Ÿ Ÿ
&circ; &#710; Circumflex accent ˆ ˆ
&tilde; &#732; Small tilde ˜ ˜
&ensp; &#8194; En space | | | |
&emsp; &#8195; Em space | | | |
&thinsp; &#8201; Thin space | | | |
&zwnj; &#8204; Non-joiner, zero width |‌| |‌|
&zwj; &#8205; Joiner zero width |‍| ||‍
&lrm; &#8206; Left-to-Right mark
&rlm; &#8207; Right-to-Left mark
&ndash; &#8211; En dash
&mdash; &#8212; Em dash
&lsquo; &#8216; Quotation mark, left single
&rsquo; &#8217; Quotation mark, right single
&sbquo; &#8218; Quotation mark, single low (comma)
&ldquo; &#8220; Quotation mark, left double
&rdquo; &#8221; Quotation mark, right double
&bdquo; &#8222; Quotation mark, double low
&dagger; &#8224; Dagger symbol
&Dagger; &#8225; Double dagger symbol
&permil; &#8240; Per mille symbol
&lsaquo; &#8249; Quotation mark, single left-pointing angle
&rsaquo; &#8250; Quotation mark, single right-pointing angle
&euro; &#8364; Euro currency symbol

Color Permutation, Table, and Font Color Test:

Allowable Internet compatible colors are hexadecimal values: 00, 33, 66, 99, CC, and FF, configured as RGB.

Mosaic 3.0 (Windows) accepts the background color changes but does not accept the foreground color changes.  Foreground appears black in all instances.

000000 000033 000066 000099 0000CC 0000FF
003300 003333 003366 003399 0033CC 0033FF
006600 006633 006666 006699 0066CC 0066FF
009900 009933 009966 009999 0099CC 0099FF
00CC00 00CC33 00CC66 00CC99 00CCCC 00CCFF
00FF00 00FF33 00FF66 00FF99 00FFCC 00FFFF
330000 330033 330066 330099 3300CC 3300FF
333300 333333 333366 333399 3333CC 3333FF
336600 336633 336666 336699 3366CC 3366FF
339900 339933 339966 339999 3399CC 3399FF
33CC00 33CC33 33CC66 33CC99 33CCCC 33CCFF
33FF00 33FF33 33FF66 33FF99 33FFCC 33FFFF
660000 660033 660066 660099 6600CC 6600FF
663300 663333 663366 663399 6633CC 6633FF
666600 666633 666666 666699 6666CC 6666FF
669900 669933 669966 669999 6699CC 6699FF
66CC00 66CC33 66CC66 66CC99 66CCCC 66CCFF
66FF00 66FF33 66FF66 66FF99 66FFCC 66FFFF
990000 990033 990066 990099 9900CC 9900FF
993300 993333 993366 993399 9933CC 9933FF
996600 996633 996666 996699 9966CC 9966FF
999900 999933 999966 999999 9999CC 9999FF
99CC00 99CC33 99CC66 99CC99 99CCCC 99CCFF
99FF00 99FF33 99FF66 99FF99 99FFCC 99FFFF
CC0000 CC0033 CC0066 CC0099 CC00CC CC00FF
CC3300 CC3333 CC3366 CC3399 CC33CC CC33FF
CC6600 CC6633 CC6666 CC6699 CC66CC CC66FF
CC9900 CC9933 CC9966 CC9999 CC99CC CC99FF
FF0000 FF0033 FF0066 FF0099 FF00CC FF00FF
FF3300 FF3333 FF3366 FF3399 FF33CC FF33FF
FF6600 FF6633 FF6666 FF6699 FF66CC FF66FF
FF9900 FF9933 FF9966 FF9999 FF99CC FF99FF
AlReaud Thu, 06/09/2011 - 12:43

Test File Generator Version:

Test File Generator Version:

NOTE 2016-09-21: This application is cobwebbed, and has only been tested in Microsoft® Windows XP. Users on later versions of Windows may find this application inoperable without modification. Please use with caution!

© 2004-2016 Alfred P. Reaud, Happy Cat Technologies

Table of Contents:

  1. Introduction.
  2. Changes.
  3. Algorithm.
  4. User Interface.
  5. Cautions.
  6. Prohibited Operations.
  7. Installation and Rebuilding.
  8. Known Bugs and Other.
  9. Download GNU-GPL licensed source code and executable.


This is the third minor release of the TestFileGenerator.  Developed in conjunction with FileCleanerPro as a freeware test file generation tool, it is intended for use in verification and debugging of applications that would operate on files.  Primarily for the Microsoft® Windows XP platform, TestFileGenerator simulates dat, cookie, gif, and html files in the Microsoft® Internet Explorer (IE) temporary internet file areas.  TestFileGenerator is also capable of generating random character files in a user-designated folder.  You may use it concurrently with IE, as it does not modify any files being used by IE, nor does it integrate into the visited web page database (please see the Known Bugs and Other Section for further information).

This author found the need, while developing FileCleanerPro, for a Windows application that generated test files without having to be on-line, browsing through numerous pages to get a sample test file set.  Browsing was inefficient, and unnecessarily consumed connection bandwidth, and sometimes the need for test files in a known folder arose.  The intent of TestFileGenerator is to address those needs, doing so with a user-friendly interface.


  1. Modified to operate with the Microsoft® Internet Explorer 7 file structure.
  2. Prioritized operation in Content.IE5, History.IE5, and Cookie folders.
  3. Corrected numerous bugs in temporary internet file processing.

  1. Changed the arbitrary constraint in the allowed number of files to be 131070.

  1. Initial release on the web.


The current generation of TestFileGenerator was developed using the wxDev-C++ IDE (Integrated Development Environment), and the FLTK (Fast Light Tool Kit) utility.  TestFileGenerator is a standalone program and does not require installation.

TestFileGenerator, with Find Temporary Internet Folders selected, recursively searches for the folders “Temporary Internet Files”, "History”, “Cookies”, “Content.IE5”, and “History.IE5”, starting from the folder “C:\Documents and Settings\<account name>” where <account name> is the current user name.  TestFileGenerator insures that no folder names are duplicated in the search, as in example, “Content.IE5” is a subfolder of “Temporary Internet Files".   TestFileGenerator also allows the user to select a designated folder and to select the number of files to be generated, their average size, their size spread around the average value, and depending on which mode is in use, the extension type of the files.

There are two modes of operating to TestFileGenerator:

  1. Create Files in Temporary Internet Folders.  This is the mode of operation used when the Find Temporary Internet Folders radio button is enabled.  It scans the folders where IE is known to have placed temporary files and generates test files in that area, spaced approximately evenly throughout the folders with special emphasis on sub-folders of Content.IE5 and History.IE5.
    TestFileGenerator generates HTML files, TestFilexxx.htm, and corresponding GIF files, TestFilexxx.gif, counted as two files, in folders corresponding to the places where IE places temporary internet files, i.e. sub-folders of Content.IE5.   xxx corresponds to the instant file count in the given folder when the file is written.  Opening the HTML file should show a valid HTML page with an imbeded image and a displayed creation time that matches the actual file creation time.  TestFileGenerator will also place simulated cookie files, TestFilexxx.txt in the places where IE places cookies, such as in the Cookies folders.  Finally, TestFileGenerator will place simulated data files, TestFilexxx.dat, in places where IE creates an index.dat or other binary data files.  This dat file is always a determinate 1638 bytes long, composed of random characters.
  2. Create Files in User-Designated Folder.  This is the mode of operation used when the Find Temporary Internet Folders radio button is disabled. TestFileGenerator creates random character files in the designated folder, using the rand() function to generate the contents of the new files, and to determine the actual deviation of that file from the average size.  It is highly recommended that you first use TestFileGenerator in this mode to insure compatibility with the operating system installed on your computer.

User Interface:

The user interface is straightforward.  Figure 1 shows the user interface as it appears on startup, user-designated folder mode, with the default entries in their respective input boxes.  Figure 2 shows the user interface after completion of a 100 file write to the folder “c:\test”, with the average file size set for 10000 ±5000 bytes.  This resulted in 100 random character files being generated in the folder, with the smallest being 5060 bytes and the largest being 14980 bytes.  The average size (computed in Excel) was 10295 bytes and the population standard deviation was 2624 bytes.

Figure 3 shows the same entries in the input boxes and Figure 2, however we now have the Find Temporary Internet Folders radio button enabled.  Please observe that some of the inputs are now disabled.  This is because they are not pertinent in temporary internet folders mode.  The only pertinent box is the count of files to generate.  Figure 4 appears the same, however, observe the command buttons.  Cancel and OK are disabled and ABORT is enabled.   In Figure 4, we are waiting for the user to press the Enter key or depress the OK button in Figure 5, which is an information window that pops to indicate to the user the general areas where the files where created and the counts in each area.  The plethora of files in the folder “Content.IE5” is due to there being 4 sub-folders to “Content.IE5” not including itself.  TestFileGenerator attempts to spread the files evenly among temporary internet folders, however it is not possible, in advance to know exactly the count that will occur in a given folder.  Also, as TestFileGenerator is actually writing two files for every htm file generated, the htm file itself and a gif file that corresponds to it, the spread of files will be skewed towards the sub-folders.

Test File Generator user interface on startup.
Figure 1

Test File generator user interface after processing in user-defined folder mode.Figure 2

Test File Generator in find temporary internet folder mode.
Figure 3

  Test File Generator in find temporary internet folder mode awaiting user entry after completion.
Figure 4

Test File Generator in find temporary internet folder mode post-creation information window.

Figure 5

  The user interface detailed description is as follows (all user inputs have tips associated with them):

  1. Find Temporary Internet Folders:  With this button depressed, TestFileGenerator will operate in the IE temporary Internet file area.  Depressing this button disables the Folder to use, File type to use, Average Size(B), and Size Spread(B) input boxes.  Releasing this radio button re-enables those input boxes.  If you don't depress this button then you must enter a valid folder name in the Folder to use text box or you will get a warning window.
  2. Folder to use:  An input text box for the name of the folder on which you wish to create the files in.  No Enter or Return is required.  However, valid Windows folder names are required, and testing is done to insure that the name is valid.  If the folder isn't present, a prompt window opens asking if you wish to create this folder.  Either use the mouse or the keyboard to respond.  Enter is equivalent to Yes, and space (the default, indicated by the dashed lines), indicates No.  Any syntactical errors in this dialog box will result in a warning window popping up explaining the error.  Further, certain folders are prohibited, discussed in the prohibited operations section.
  3. File type to use:  This text input box is for entry of a file extension.  Extensions are actually not required and it is provided for convenience.  It also simplifies viewing of the created files, as txt is associated with Microsoft® Notepad, doc is associated with Microsoft® Word, etc.  This text input box is disabled if Find Temporary Internet Folders is enabled.
  4. Count of files:  This is the count of files that TestFileGenerator is to create.  The minimum value of this numeric input box is one, and the maximum value is 131070.  Entries that exceed those limits will give a warning window and are automatically corrected to fit the corresponding minimum or maximum.  Entries that are decimal are allowed, however only the integer part of the entry is used. The file count limitation is arbitrary, and could be set to any amount up to the NTFS limit of 232-1.
  5. Average Size(B):  This is the average size in bytes of the files to be generated by TestFileGenerator.  The minimum value is 1000, and the maximum value is 1000000.  Entries that exceed those limits will give a warning window and are automatically corrected to fit the corresponding minimum or maximum.  Entries that are decimal are allowed, however only the integer part of the entry is used.  This numeric input box is disabled if Find Temporary Internet Folders is enabled.  As the actual file size is computed by the formula Average Size ±(rand()*Size Spread)), there will never be a determinate output file size unless Find Temporary Internet Folders is enabled.  However, the spread of file sizes should match a bell curve centered on Average Size.
  6. Size Spread(B)This is the maximum spread size in bytes of files created by TestFileGenerator while not in create files in temporary internet folders mode.  The minimum value is 250, and the maximum value is 250000.  Entries that exceed those limits will give a warning window and are automatically corrected to fit the corresponding minimum or maximum.  Entries that are decimal are allowed, however only the integer part of the entry is used.  This numeric input box is disabled if Find Temporary Internet Folders is enabled.  Any file created will be within the range of sizes Average Size ± Size Spread, it's actual size determined by two random number operations.   Further, Size Spread must be less that Average Size - 1, which is to prevent loop overflow happening because a loop counter was given a negative value.  Entries that violate this constraint will give a warning window and are automatically corrected to fit within the constraint.
  7. Progress:  This widget shows the progress of TestFileGenerator.  Its progress depends on the count of files, the options selected, the speed of your disk drive and computer, and on any system, disk, and processor resources consumed by other applications that are active at the same time.
  8. Cancel:  This button cancels TestFileGenerator, similar to the Window Close Window Close button image. button.  Use either to terminate the application.
  9. OK:  This button starts processing of the named folder or the temporary Internet file area respective of the input box values.  Depressing this button also disables all other user input except for the ABORT button.  However the Window Close, Window Close button image., and Window Iconize, Window Iconize button image., buttons are still active.
  10. ABORT:  This button aborts any processing that is currently occurring at the end of the current media write.  Depress this button immediately if you change your mind about creating files in the area TestFileGeneratoris is operating in.  This button also re-enables all user inputs except those listed in the Find Temporary Internet Folders radio button description, above, depending on it's state.  However, see the cautions section for further information.


Please be cautious with the use of TestFileGenerator .  Though this is a benign application, you may accidentally fill a folder with test files.  This will not hurt your computer or it's operation, but can be a mild nuisance to correct.  Hence the limitations on file counts, average file size, and file size spread.   Also be aware TestFileGenerator may fill a hard disk or removable media such as a flash drive with test files, and will easily fill a floppy disk with test files.  Assuming that you set the file count to 1000, the average size to 1000000 bytes, and the size spread to 250000 bytes, this will result in a total character count ranging from 750,000,000 (750MB) to 1,250,000,000 (1.25GB) bytes.  While checking for available space does occur, that won't prevent that available space from being filled up if there is enough to process the configuration you entered in the numeric input boxes.

This author doesn't recommend that you use TestFileGenerator on CD-R, CD-RW, or DVD drives as they have not been tested.  Pass-thru operation may not work, or many not work as advertised on optical media drives that allow pass-thru, as TestFileGenerator uses low level forced flushing to the media which may not be compatible with a pass-thru optical drive.  Further, this author is not and will not be responsible for careless, negligent, and/or malignant use by any individual who uses TestFileGenerator.  Please see the GNU General Public License for more details.

Also, please be aware that TestFileGenerator does not operate on read-only or locked files.  Please be aware that TestFileGenerator, while in create files in temporary internet folders mode, only operates on folders used by Microsoft® Internet Explorer (IE), and does not operate on folders used by other Internet browsers, such as Mozilla, Opera, etc., unless they use the same folders as IE.  Finally, with the above two paragraphs in mind, please be sure that you actually want to do what you configured TestFileGenerator to do before you press that OK button!

Prohibited Operations:

With the cautions section in mind, certain files and folders where prohibited from being used, as follows:

  1. The folders “C:\”, and any folders containing the text "drivers”,  "system”, “windows”, “winnt”, “documents and settings”, and “program files” are prohibited from being used as targets for operation.  This is for obvious reasons, dealing with system security.
  2. TestFileGenerator will not use folders that contain the text “sys” or "admin”, in a case insensitive sense.  Again, this is for obvious reasons.
  3. No temporary Internet folders are bypassed, other than the one listed below, as intelligent folder search has been implemented.  This allows for further utility among systems that do not use standard folder naming.  However, if you don't have ownership of the folder in question, TestFileGenerator will not create files in it.
  4. The folder “Content.MSO” is bypassed as it contains Microsoft® System Objects such as Windows Media Files that are needed by certain Windows applications.

Installation and Rebuilding:

This application may be installed in any folder.  To install, extract TestFileGenerator.exe from TestFileGenerator_1.1.0.0-20081003.zip to the folder of your choice.  "C:\Windows” is the recommended location for Windows applications.  You can then create a shortcut to it by right clicking on the Desktop and selecting New -> Short Cut to create a desktop shortcut to TestFileGenerator. 

A good way to test the operation of this software on your system is to create 100 files in a nonexistent user-designated folder, with an extension of txt, rtf, or doc.  Insure that 100 files where created and that the size spread matches what you entered.  If you're exhibiting a need for TestFileGenerator then you already know how to code and are familiar with advanced user concepts, so I won't get into the use of grep, od, wc, and other useful Linux/Unix commands that have ported over to the Windows operating system.

Rebuilding TestFileGenerator requires a C++ compiler such as Dev-C++ or Code::Blocks (freeware),  Microsoft® Visual C++ 2010 Express ($109USD from MSDN) or any other compatible C++ compiler.  The only caveat is that it must accept FLTK include files and libraries.  All necessary TestFileGenerator source and header files are included in TestFileGenerator_1.1.0.0-20081003.zip.  The author recommends that if you are using Dev-C++ that you extract the TestFileGenerator source files to a folder in the same location as devcpp.exe.  Regardless, I also recommend that you extract the all the source files to their own project folder for ease of use and visibility.

If you are using Dev-C++, you will need to reconfigure the Project Options -> Parameters -> Linker to point to the correct locations of the required library files.  If you followed the recommendation on where to place the files in the preceding paragraph, then it's a simple matter to change the text "../Dev-Cpp” to “../” which points the compiler to the correct required library location.  One would think that the compiler could figure this out, but Dev-C++ doesn't, for whatever reason.  The required library files are listed at the top of the header file TestFileGenerator.h, with the required header files following thereafter.  This author did not use Visual C++, and therefore cannot comment on whether it will compile correctly on it.  TestFileGenerator has been designed using standard C++ header files and run time libraries, so it should be straightforward to rebuild TestFileGenerator using Visual C++.  However, the author of TestFileGenerator can't guarantee that!

This author would recommend that Linux/Unix users not attempt to use TestFileGenerator, as it's designed with Windows XP in mind.  However, with some work, it you should be able to implement TestFileGenerator in any operating system.

TestFileGenerator has been verified on the following operating systems and machines:

  1. Windows XP Professional Version 5.1.2600 Service Pack 3 Build 2600
    1. Compaq Presario.

Known Bugs and Other:

Currently, TestFileGenerator does not work correctly with Create Files in Temporary Internet Folders mode. This is due to changes in Internet Explorer 7.0 since the original release for Internet Explorer 5. Corrections to this and implementation of browsers other than Internet Explorer will be done in the next revision of this application.

If you find any other bugs, please contact the author.  Also, if you wish to see this application updated for previous versions of Microsoft® Windows, or any other browser for that matter, please contact me with the pathnames of the proper temporary Internet file folders, and I'll modify the software to suit that operating system or browser version.

Download GNU-GPL Licensed Source Code and Executable.

Requires WinZip 8.0® or preferably a compatible un-zipper such as 7-Zip.

Download TestFileGenerator_1.1.0.0-20081003.zip now (266KB).   7-Zip V4.23 CRC for TestFileGenerator.exe is D2732666.

TestFileGenerator has 225 lines of code and took approximately 65 hours to develop.  Hopefully, you found or will find TestFileGenerator useful.  If you did, then a small voluntary donation would be appreciated to defray the costs of hosting a happycattech.com and for the hours expended developing TestFileGenerator.

AlReaud Mon, 06/06/2011 - 08:55