qemu-iotests: Add qemu-img compare test
Simple test for qemu-img compare to check it's working correctly. Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com> Reviewed-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
		
							parent
							
								
									d14ed18c8d
								
							
						
					
					
						commit
						e930d201bc
					
				
							
								
								
									
										78
									
								
								tests/qemu-iotests/048
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										78
									
								
								tests/qemu-iotests/048
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,78 @@ | ||||
| #!/bin/bash | ||||
| ## | ||||
| ## qemu-img compare test | ||||
| ## | ||||
| ## | ||||
| ## Copyright (C) 2013 Red Hat, Inc. | ||||
| ## | ||||
| ## This program is free software; you can redistribute it and/or modify | ||||
| ## it under the terms of the GNU General Public License as published by | ||||
| ## the Free Software Foundation; either version 2 of the License, or | ||||
| ## (at your option) any later version. | ||||
| ## | ||||
| ## This program is distributed in the hope that it will be useful, | ||||
| ## but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| ## GNU General Public License for more details. | ||||
| ## | ||||
| ## You should have received a copy of the GNU General Public License | ||||
| ## along with this program.  If not, see <http://www.gnu.org/licenses/>. | ||||
| ## | ||||
| # | ||||
| # creator | ||||
| owner=mrezanin@redhat.com | ||||
| 
 | ||||
| seq=`basename $0` | ||||
| echo "QA output created by $seq" | ||||
| 
 | ||||
| status=1        # failure is the default! | ||||
| 
 | ||||
| _cleanup() | ||||
| { | ||||
|     echo "Cleanup" | ||||
|     _cleanup_test_img | ||||
|     rm ${TEST_IMG2} | ||||
| } | ||||
| trap "_cleanup; exit \$status" 0 1 2 3 15 | ||||
| 
 | ||||
| _compare() | ||||
| { | ||||
|     $QEMU_IMG compare "$@" $TEST_IMG ${TEST_IMG2} | ||||
|     echo $? | ||||
| } | ||||
| 
 | ||||
| # get standard environment, filters and checks | ||||
| . ./common.rc | ||||
| . ./common.filter | ||||
| . ./common.pattern | ||||
| 
 | ||||
| _supported_fmt raw qcow qcow2 qed | ||||
| _supported_proto file | ||||
| _supported_os Linux | ||||
| 
 | ||||
| # Setup test basic parameters | ||||
| TEST_IMG2=$TEST_IMG.2 | ||||
| CLUSTER_SIZE=4096 | ||||
| size=1024M | ||||
| 
 | ||||
| _make_test_img $size | ||||
| io_pattern write 524288 $CLUSTER_SIZE $CLUSTER_SIZE 4 45 | ||||
| 
 | ||||
| # Compare identical images | ||||
| cp $TEST_IMG ${TEST_IMG2} | ||||
| _compare | ||||
| _compare -q | ||||
| 
 | ||||
| # Compare images with different size | ||||
| $QEMU_IMG resize $TEST_IMG +512M | ||||
| _compare | ||||
| _compare -s | ||||
| 
 | ||||
| # Compare images with different content | ||||
| io_pattern write 1228800 $CLUSTER_SIZE 0 1 67 | ||||
| _compare | ||||
| io_pattern write 0 $CLUSTER_SIZE 0 1 123 | ||||
| _compare | ||||
| 
 | ||||
| # Cleanup | ||||
| status=0 | ||||
							
								
								
									
										31
									
								
								tests/qemu-iotests/048.out
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								tests/qemu-iotests/048.out
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | ||||
| QA output created by 048 | ||||
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1073741824 | ||||
| === IO: pattern 45 | ||||
| qemu-io> wrote 4096/4096 bytes at offset 524288 | ||||
| 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) | ||||
| qemu-io> wrote 4096/4096 bytes at offset 528384 | ||||
| 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) | ||||
| qemu-io> wrote 4096/4096 bytes at offset 532480 | ||||
| 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) | ||||
| qemu-io> wrote 4096/4096 bytes at offset 536576 | ||||
| 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) | ||||
| qemu-io> Images are identical. | ||||
| 0 | ||||
| 0 | ||||
| Image resized. | ||||
| Warning: Image size mismatch! | ||||
| Images are identical. | ||||
| 0 | ||||
| Strict mode: Image size mismatch! | ||||
| 1 | ||||
| === IO: pattern 67 | ||||
| qemu-io> wrote 4096/4096 bytes at offset 1228800 | ||||
| 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) | ||||
| qemu-io> Content mismatch at offset 1228800! | ||||
| 1 | ||||
| === IO: pattern 123 | ||||
| qemu-io> wrote 4096/4096 bytes at offset 0 | ||||
| 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) | ||||
| qemu-io> Content mismatch at offset 0! | ||||
| 1 | ||||
| Cleanup | ||||
| @ -54,3 +54,4 @@ | ||||
| 045 rw auto | ||||
| 046 rw auto aio | ||||
| 047 rw auto | ||||
| 048 img auto quick | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Miroslav Rezanina
						Miroslav Rezanina