[libvirt] [PATCH] test: fix screenshot API impl

When redoing the website we deleted the libvirtLogo.png file not remembering that the test driver screenshot API impl relied on it. Rather than having the test driver use the logo as a side effect, give it its own dedicated image to use. This is installed in /usr/share/libvirt/test-screenshot.png and is taken from a NeXT Cube running WorldWideWeb[1]. The very first web browser in existance, running on the hardware it was originally written on. [1] https://en.wikipedia.org/wiki/WorldWideWeb Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- libvirt.spec.in | 2 ++ mingw-libvirt.spec.in | 4 ++++ src/Makefile.am | 6 ++++++ src/test/test-screenshot.png | Bin 0 -> 45394 bytes src/test/test_driver.c | 2 +- 5 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 src/test/test-screenshot.png diff --git a/libvirt.spec.in b/libvirt.spec.in index 4f35313..4bb0699 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -1842,6 +1842,8 @@ exit 0 %{_datadir}/libvirt/cpu_map.xml +%{_datadir}/libvirt/test-screenshot.png + %config(noreplace) %{_sysconfdir}/sasl2/libvirt.conf %files admin diff --git a/mingw-libvirt.spec.in b/mingw-libvirt.spec.in index 65d3e6d..e088dc2 100644 --- a/mingw-libvirt.spec.in +++ b/mingw-libvirt.spec.in @@ -232,6 +232,8 @@ rm -rf $RPM_BUILD_ROOT%{mingw64_libexecdir}/libvirt-guests.sh %{mingw32_datadir}/libvirt/cpu_map.xml +%{mingw32_datadir}/libvirt/test-screenshot.png + %{mingw32_datadir}/locale/*/LC_MESSAGES/libvirt.mo %dir %{mingw32_includedir}/libvirt @@ -314,6 +316,8 @@ rm -rf $RPM_BUILD_ROOT%{mingw64_libexecdir}/libvirt-guests.sh %{mingw64_datadir}/libvirt/cpu_map.xml +%{mingw64_datadir}/libvirt/test-screenshot.png + %{mingw64_datadir}/locale/*/LC_MESSAGES/libvirt.mo %dir %{mingw64_includedir}/libvirt diff --git a/src/Makefile.am b/src/Makefile.am index d440548..8bc3acc 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -691,6 +691,7 @@ check-local: check-protocol check-symfile check-symsorting \ # Mock driver, covering domains, storage, networks, etc TEST_DRIVER_SOURCES = \ test/test_driver.c test/test_driver.h +TEST_DRIVER_ASSETS = test/test-screenshot.png # Now the Hypervisor specific drivers XEN_DRIVER_SOURCES = \ @@ -1194,6 +1195,10 @@ GENERATED_SYM_FILES = \ $(NULL) if WITH_TEST + +driver_test_asset_DATA = $(TEST_DRIVER_ASSETS) +driver_test_assetdir = $(pkgdatadir) + noinst_LTLIBRARIES += libvirt_driver_test.la libvirt_la_BUILT_LIBADD += libvirt_driver_test.la libvirt_driver_test_la_CFLAGS = \ @@ -1886,6 +1891,7 @@ access/viraccessapichecklxc.c: $(srcdir)/rpc/gendispatch.pl \ # Add all conditional sources just in case... EXTRA_DIST += \ $(TEST_DRIVER_SOURCES) \ + $(TEST_DRIVER_ASSETS) \ $(REMOTE_DRIVER_SOURCES) \ $(XEN_DRIVER_SOURCES) \ $(QEMU_DRIVER_SOURCES) \ diff --git a/src/test/test-screenshot.png b/src/test/test-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..4402485cd2e456e07c8da98d6bf97f997a93bc8a GIT binary patch literal 45394 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%0Dho}2qgOez*H7M3#7hjH|Vj(84Cz^ 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 QKOtxSJo`uKDUZbe0baLwKL7v# literal 0 HcmV?d00001 diff --git a/src/test/test_driver.c b/src/test/test_driver.c index 5a82f8e..de92a01 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -5923,7 +5923,7 @@ testDomainScreenshot(virDomainPtr dom ATTRIBUTE_UNUSED, if (VIR_STRDUP(ret, "image/png") < 0) return NULL; - if (virFDStreamOpenFile(st, PKGDATADIR "/libvirtLogo.png", 0, 0, O_RDONLY) < 0) + if (virFDStreamOpenFile(st, PKGDATADIR "/test-screenshot.png", 0, 0, O_RDONLY) < 0) VIR_FREE(ret); return ret; -- 2.9.3

On Tue, Dec 06, 2016 at 12:49:21 +0000, Daniel Berrange wrote:
When redoing the website we deleted the libvirtLogo.png file not remembering that the test driver screenshot API impl relied on it.
Rather than having the test driver use the logo as a side effect, give it its own dedicated image to use. This is installed in /usr/share/libvirt/test-screenshot.png and
Is it worth wasting 48k of disk space for a picture that almost nobody ever will see on every installation of libvirt?

On Tue, Dec 06, 2016 at 01:58:50PM +0100, Peter Krempa wrote:
On Tue, Dec 06, 2016 at 12:49:21 +0000, Daniel Berrange wrote:
When redoing the website we deleted the libvirtLogo.png file not remembering that the test driver screenshot API impl relied on it.
Rather than having the test driver use the logo as a side effect, give it its own dedicated image to use. This is installed in /usr/share/libvirt/test-screenshot.png and
Is it worth wasting 48k of disk space for a picture that almost nobody ever will see on every installation of libvirt?
48k is completely lost in the noise when you consider the minimal install footprint of libvirt. libvirt-libs is 23 MB in size, not even counting the dependancies it pulls in. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://entangle-photo.org -o- http://search.cpan.org/~danberr/ :|

On Tue, 2016-12-06 at 13:04 +0000, Daniel P. Berrange wrote:
On Tue, Dec 06, 2016 at 01:58:50PM +0100, Peter Krempa wrote:
On Tue, Dec 06, 2016 at 12:49:21 +0000, Daniel Berrange wrote:
When redoing the website we deleted the libvirtLogo.png file not remembering that the test driver screenshot API impl relied on it.
Rather than having the test driver use the logo as a side effect, give it its own dedicated image to use. This is installed in /usr/share/libvirt/test-screenshot.png and
Is it worth wasting 48k of disk space for a picture that almost nobody ever will see on every installation of libvirt?
48k is completely lost in the noise when you consider the minimal install footprint of libvirt. libvirt-libs is 23 MB in size, not even counting the dependancies it pulls in.
How about a pngcrush'd 640x480 solid color? Not only it would be way smaller, but we would also remove any possible confusion about it being an actual screenshot of a running domain. -- Andrea Bolognani / Red Hat / Virtualization

On Tue, Dec 06, 2016 at 16:38:20 +0100, Andrea Bolognani wrote:
On Tue, 2016-12-06 at 13:04 +0000, Daniel P. Berrange wrote:
On Tue, Dec 06, 2016 at 01:58:50PM +0100, Peter Krempa wrote:
On Tue, Dec 06, 2016 at 12:49:21 +0000, Daniel Berrange wrote:
When redoing the website we deleted the libvirtLogo.png file not remembering that the test driver screenshot API impl relied on it.
Rather than having the test driver use the logo as a side effect, give it its own dedicated image to use. This is installed in /usr/share/libvirt/test-screenshot.png and
Is it worth wasting 48k of disk space for a picture that almost nobody ever will see on every installation of libvirt?
48k is completely lost in the noise when you consider the minimal install footprint of libvirt. libvirt-libs is 23 MB in size, not even counting the dependancies it pulls in.
How about a pngcrush'd 640x480 solid color? Not only it would be way smaller, but we would also remove any possible confusion about it being an actual screenshot of a running domain.
I would agree with such solution.

On Tue, Dec 06, 2016 at 04:38:20PM +0100, Andrea Bolognani wrote:
On Tue, 2016-12-06 at 13:04 +0000, Daniel P. Berrange wrote:
On Tue, Dec 06, 2016 at 01:58:50PM +0100, Peter Krempa wrote:
On Tue, Dec 06, 2016 at 12:49:21 +0000, Daniel Berrange wrote:
When redoing the website we deleted the libvirtLogo.png file not remembering that the test driver screenshot API impl relied on it.
Rather than having the test driver use the logo as a side effect, give it its own dedicated image to use. This is installed in /usr/share/libvirt/test-screenshot.png and
Is it worth wasting 48k of disk space for a picture that almost nobody ever will see on every installation of libvirt?
48k is completely lost in the noise when you consider the minimal install footprint of libvirt. libvirt-libs is 23 MB in size, not even counting the dependancies it pulls in.
How about a pngcrush'd 640x480 solid color? Not only it would be way smaller, but we would also remove any possible confusion about it being an actual screenshot of a running domain.
I think it is desirable to have it look like an actual screenshot, so that its looks real when testing actual apps with this. This image is not significantly different in size to the libvirtLogo.png image we have been installing for use by the test driver in previous releases, until the regression. So i really don't see size as being a reason to not do this. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://entangle-photo.org -o- http://search.cpan.org/~danberr/ :|

On Tue, 2016-12-06 at 16:54 +0000, Daniel P. Berrange wrote:
How about a pngcrush'd 640x480 solid color? Not only it would be way smaller, but we would also remove any possible confusion about it being an actual screenshot of a running domain. I think it is desirable to have it look like an actual screenshot, so that its looks real when testing actual apps with this.
IMHO the more test data looks like, well, test data, the better. Then again, it's not very likely that someone will have an actual NeXT guest on their computer, so I guess that fits the bill.
This image is not significantly different in size to the libvirtLogo.png image we have been installing for use by the test driver in previous releases, until the regression. So i really don't see size as being a reason to not do this.
Fair enough. -- Andrea Bolognani / Red Hat / Virtualization

On 06.12.2016 13:49, Daniel P. Berrange wrote:
When redoing the website we deleted the libvirtLogo.png file not remembering that the test driver screenshot API impl relied on it.
Rather than having the test driver use the logo as a side effect, give it its own dedicated image to use. This is installed in /usr/share/libvirt/test-screenshot.png and is taken from a NeXT Cube running WorldWideWeb[1]. The very first web browser in existance, running on the hardware it was originally written on.
[1] https://en.wikipedia.org/wiki/WorldWideWeb
Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- libvirt.spec.in | 2 ++ mingw-libvirt.spec.in | 4 ++++ src/Makefile.am | 6 ++++++ src/test/test-screenshot.png | Bin 0 -> 45394 bytes src/test/test_driver.c | 2 +- 5 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 src/test/test-screenshot.png
ACK from me, although I'm gonna miss that nice logo we returned earlier. Well it was merged as an April's fools prank anyway. Michal

On Wed, Dec 07, 2016 at 10:30:56AM +0100, Michal Privoznik wrote:
On 06.12.2016 13:49, Daniel P. Berrange wrote:
When redoing the website we deleted the libvirtLogo.png file not remembering that the test driver screenshot API impl relied on it.
Rather than having the test driver use the logo as a side effect, give it its own dedicated image to use. This is installed in /usr/share/libvirt/test-screenshot.png and is taken from a NeXT Cube running WorldWideWeb[1]. The very first web browser in existance, running on the hardware it was originally written on.
[1] https://en.wikipedia.org/wiki/WorldWideWeb
Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- libvirt.spec.in | 2 ++ mingw-libvirt.spec.in | 4 ++++ src/Makefile.am | 6 ++++++ src/test/test-screenshot.png | Bin 0 -> 45394 bytes src/test/test_driver.c | 2 +- 5 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 src/test/test-screenshot.png
ACK from me, although I'm gonna miss that nice logo we returned earlier. Well it was merged as an April's fools prank anyway.
Oh, we can still have the logo hidden in the screenshot as an easter egg :-) v2 coming up.... Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://entangle-photo.org -o- http://search.cpan.org/~danberr/ :|
participants (4)
-
Andrea Bolognani
-
Daniel P. Berrange
-
Michal Privoznik
-
Peter Krempa