[libcamera-devel] [RFC 2/5] test: camera: Remove streams argument from configurationValid()

Laurent Pinchart laurent.pinchart at ideasonboard.com
Tue Apr 2 16:22:52 CEST 2019


On Tue, Apr 02, 2019 at 02:53:29AM +0200, Niklas Söderlund wrote:
> In preparation of reworking how a default configuration is retrieved
> from a camera remove the streams and validation using the stream when
> judging if a camera configuration is valid. This is needed as once
> stream usage hints are added applications will no longer fetch default
> configuration based on Stream IDs so using them to verify the returned
> format is not useful.
> 
> Signed-off-by: Niklas Söderlund <niklas.soderlund at ragnatech.se>

Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>

> ---
>  test/camera/camera_test.cpp           | 26 ++++++++------------------
>  test/camera/camera_test.h             |  3 +--
>  test/camera/capture.cpp               |  2 +-
>  test/camera/configuration_default.cpp |  2 +-
>  test/camera/configuration_set.cpp     |  2 +-
>  5 files changed, 12 insertions(+), 23 deletions(-)
> 
> diff --git a/test/camera/camera_test.cpp b/test/camera/camera_test.cpp
> index a92f2165bf3a53c1..5985b85c44816e30 100644
> --- a/test/camera/camera_test.cpp
> +++ b/test/camera/camera_test.cpp
> @@ -46,27 +46,17 @@ void CameraTest::cleanup()
>  	cm_->stop();
>  };
>  
> -bool CameraTest::configurationValid(const std::set<Stream *> &streams,
> -				    const std::map<Stream *, StreamConfiguration> &conf) const
> +bool CameraTest::configurationValid(const std::map<Stream *, StreamConfiguration> &config) const
>  {
> -	/* Test that the numbers of streams matches that of configuration. */
> -	if (streams.size() != conf.size())
> +	/* Test that the configuration is not empty. */
> +	if (config.empty())
>  		return false;
>  
> -	/*
> -	 * Test that stream can be found in configuration and that the
> -	 * configuration is valid.
> -	 */
> -	for (Stream *stream : streams) {
> -		std::map<Stream *, StreamConfiguration>::const_iterator it =
> -			conf.find(stream);
> -
> -		if (it == conf.end())
> -			return false;
> -
> -		const StreamConfiguration *sconf = &it->second;
> -		if (sconf->width == 0 || sconf->height == 0 ||
> -		    sconf->pixelFormat == 0 || sconf->bufferCount == 0)
> +	/* Test that configuration is valid. */
> +	for (auto const &it : config) {
> +		const StreamConfiguration &conf = it.second;
> +		if (conf.width == 0 || conf.height == 0 ||
> +		    conf.pixelFormat == 0 || conf.bufferCount == 0)
>  			return false;
>  	}
>  
> diff --git a/test/camera/camera_test.h b/test/camera/camera_test.h
> index 48fb47a23fe8f49c..5801fad3281e1653 100644
> --- a/test/camera/camera_test.h
> +++ b/test/camera/camera_test.h
> @@ -23,8 +23,7 @@ protected:
>  	int init();
>  	void cleanup();
>  
> -	bool configurationValid(const std::set<Stream *> &streams,
> -				const std::map<Stream *, StreamConfiguration> &conf) const;
> +	bool configurationValid(const std::map<Stream *, StreamConfiguration> &config) const;
>  
>  	std::shared_ptr<Camera> camera_;
>  
> diff --git a/test/camera/capture.cpp b/test/camera/capture.cpp
> index 28eb61405d90a4c7..f6932b7505571712 100644
> --- a/test/camera/capture.cpp
> +++ b/test/camera/capture.cpp
> @@ -48,7 +48,7 @@ protected:
>  			camera_->streamConfiguration(streams);
>  		StreamConfiguration *sconf = &conf.begin()->second;
>  
> -		if (!configurationValid(streams, conf)) {
> +		if (!configurationValid(conf)) {
>  			cout << "Failed to read default configuration" << endl;
>  			return TestFail;
>  		}
> diff --git a/test/camera/configuration_default.cpp b/test/camera/configuration_default.cpp
> index 71e79844667591b2..53ee021d33ca39b1 100644
> --- a/test/camera/configuration_default.cpp
> +++ b/test/camera/configuration_default.cpp
> @@ -32,7 +32,7 @@ protected:
>  			return TestFail;
>  		}
>  
> -		if (!configurationValid(streams, conf)) {
> +		if (!configurationValid(conf)) {
>  			cout << "Default configuration invalid" << endl;
>  			return TestFail;
>  		}
> diff --git a/test/camera/configuration_set.cpp b/test/camera/configuration_set.cpp
> index dedb85009335aa46..cac1da959f241bc5 100644
> --- a/test/camera/configuration_set.cpp
> +++ b/test/camera/configuration_set.cpp
> @@ -23,7 +23,7 @@ protected:
>  			camera_->streamConfiguration(streams);
>  		StreamConfiguration *sconf = &conf.begin()->second;
>  
> -		if (!configurationValid(streams, conf)) {
> +		if (!configurationValid(conf)) {
>  			cout << "Failed to read default configuration" << endl;
>  			return TestFail;
>  		}

-- 
Regards,

Laurent Pinchart


More information about the libcamera-devel mailing list