private static void doUpdateTest()
	{
		try
		{
			System.out.print("Testing update command ");
			// make mvd & load it
			String testData = TEST_DATA+File.separator+BLESSED_DAMOZEL;
			File testDataFolder = new File( testData );
			String mvdName = createTestMVD( testDataFolder );
			File mvdFile = new File( mvdName );
			MVD mvd = MVDFile.internalise( mvdFile, null );
			int numVersions = mvd.numVersions();
			Random rand = new Random( System.currentTimeMillis() );
			int vId = rand.nextInt(numVersions)+1;
			char[] data1 = mvd.getVersion( vId );
			// replace every 10th 'b' with 'x'
			for ( int bCount=0,i=0;i<data1.length;i++ )
			{
				if ( data1[i] == 'b' )
				{
					if ( bCount == 9 )
					{
						bCount = 0;
						data1[i] = 'x';
					}
					else
						bCount++;
				}
			}
			String vIdStr = new Integer(vId).toString();
			String tempName = TEST_FOLDER+File.separator+"temp.txt";
			File tempFile = new File( tempName );
			FileOutputStream fos = new FileOutputStream( tempFile );
            OutputStreamWriter osw = new OutputStreamWriter(fos,"UTF-8");
			osw.write( data1 );
			osw.close();
			String[] args0 = {"-c","update","-m",mvdName,"-v",vIdStr,"-t",
				tempName};
			MvdTool.run( args0, out );
			mvd = MVDFile.internalise( mvdFile, null );
			char[] data2 = mvd.getVersion( vId );
			compareTwoCharArrays( data1, data2 );
			System.out.print(".");
			// updated file can't be used for other tests
			mvdFile.delete();
			testsPassed++;
			System.out.println(" test passed.");
		}
		catch ( Exception e )
		{
			doTestFailed( e );
		}
	}