Git Product home page Git Product logo

dnf-extra-tests's People

Contributors

radekholy24 avatar

Forkers

j-mracek

dnf-extra-tests's Issues

Support release version substitution in repositories

Feature: Parametrize repositories by system release version
  In order to have a single repository file for multiple system release specific repositories, I want to parametrize the file using a variable.

  Scenario: Assign the host's version to $RELEASEVER by default
     When I execute DNF with the default configuration
     Then I should have the $RELEASEVER configuration variable set to the host's release version

Support caching of metadata

Feature: Cache metadata
  In order to speed up DNF, I want it to cache the metadata downloaded during previous runs.

  Scenario: Store the metadata
     When I execute DNF with the default configuration
     Then I should have the metadata cached

Support managing different install roots

Feature: Manage different install roots
  In order to prepare and manage chroots, I want to manipulate the packages installed there.

  Scenario: Manage the system root
     When I execute DNF with the default configuration
     Then I should manage the system root

Support user-defined release version of install roots

Feature: Parametrize repositories by system release version
  In order to have a single repository file for multiple system
  release specific repositories, I want to parametrize the file
  using a variable.

  Scenario: Assign the user-defined version to $RELEASEVER if specified even if the root is different
     When I execute DNF with the following configuration:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
       | --releasever  | 20                   |
     Then I should have the $RELEASEVER configuration variable set to “20”

Support loading of custom configuration files with different install roots

Feature: Load configuration
  In order facilitate repetitive configuration, I want it to load a configuration from a file.

  Scenario: Load custom guest's file if the root is different
     When I execute DNF with the following configuration:
       | Option        | Value                     |
       | --config      | /tmp/dnf-extra-tests.conf |
       | --installroot | /tmp/dnf-extra-tests      |
     Then I should have the /tmp/dnf-extra-tests.conf configuration file loaded

Support caching of metadata in different install roots

Feature: Cache metadata
  In order to speed up DNF, I want it to cache the metadata downloaded during previous runs.

  Scenario: Store the metadata in the guest if the root is different
     When I execute DNF with the following configuration:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should have the metadata cached in the guest

Add a contributors file

Add a contributors file in order to give credit to all the contributors for their contributions.

Support managing custom install roots

Feature: Manage different install roots
  In order to prepare and manage chroots, I want to manipulate the packages installed there.

  Scenario: Manage a custom install root
     When I execute DNF with the following configuration:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should manage the custom install root

Support loading of configuration files

Feature: Load configuration
  In order facilitate repetitive configuration, I want it to load a configuration from a file.

  Scenario: Load default file
     When I execute DNF with the default configuration
     Then I should have the default configuration file loaded

Support tracking of previous runs

Feature: Keep track of previous runs
  In order support some future DNF's decisions, I want it to store the
  necessary information about the previous runs.

  Scenario: Store the information in the guest if the root is different
     When I execute DNF with the following configuration:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should have the tracking information stored in the guest

Add a license file

Add a license file in order to let others know according to which terms the project is allowed to be copied, modified, propagated, or distributed.

Support verification of signed packages

Feature: Verify signed package
  In order to be sure that packages are coming from trusted sources, I want verify that signed packages were signed using trusted keys.

  Scenario: Verify the host packages with the host keys
     When I execute DNF with the default configuration
     Then I should have the host packages being verified using the host keys

Support release version of install roots

Feature: Parametrize repositories by system release version
  In order to have a single repository file for multiple system
  release specific repositories, I want to parametrize the file
  using a variable.

  Scenario: Assign the guest's version to $RELEASEVER if the root is different
     When I execute DNF with the following configuration:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should have the $RELEASEVER configuration variable set to the guest's release version

Support of custom relative configuration files

Feature: Load configuration
  In order facilitate repetitive configuration, I want it to load a configuration from a file.

  Scenario: Load custom relative file
     When I execute DNF with the following configuration:
       | Option   | Value                |
       | --config | dnf-extra-tests.conf |
     Then I should have the dnf-extra-tests.conf configuration file loaded

Support user-defined release versions

Feature: Parametrize repositories by system release version
  In order to have a single repository file for multiple system
  release specific repositories, I want to parametrize the file
  using a variable.

  Scenario: Assign the user-defined version to $RELEASEVER if specified
     When I execute DNF with the following configuration:
       | Option       | Value |
       | --releasever | 20    |
     Then I should have the $RELEASEVER configuration variable set to “20”

Support loading of custom relative configuration files with different install roots

Feature: Load configuration
  In order facilitate repetitive configuration, I want it to load a configuration from a file.

  Scenario: Load custom relative host's file if the root is different
     When I execute DNF with the following configuration:
       | Option        | Value                |
       | --config      | dnf-extra-tests.conf |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should have the dnf-extra-tests.conf configuration file loaded

Add the remaining --installroot tests

Feature: Configure repositories
  In order to control the DNF's package sources, I want to configure which repositories should be used.

  Scenario: Configure local base URL
     When I execute DNF with a repository dnf-extra-tests of which baseurl is file:///tmp/dnf-extra-tests
     Then I should have the content of the repository dnf-extra-tests at host's /tmp/dnf-extra-tests being available

  Scenario: Configure local base URL if the root is different
     When I execute DNF with a repository dnf-extra-tests of which baseurl is file:///tmp/dnf-extra-tests2
     When I execute DNF with the following configuration on command line:
       | Option        | Value                 |
       | --installroot | /tmp/dnf-extra-tests1 |
     Then I should have the content of the repository dnf-extra-tests at host's /tmp/dnf-extra-tests2 being available

  Scenario: Configure local metalink URL
     When I execute DNF with a repository dnf-extra-tests of which metalink is file:///tmp/metalink.xml
     Then I should have the content of the repository dnf-extra-tests at host's /tmp/dnf-extra-tests1 being available

  Scenario: Configure local metalink URL if the root is different
     When I execute DNF with a repository dnf-extra-tests of which metalink is file:///tmp/metalink.xml
     When I execute DNF with the following configuration on command line:
       | Option        | Value                 |
       | --installroot | /tmp/dnf-extra-tests2 |
     Then I should have the content of the repository dnf-extra-tests at host's /tmp/dnf-extra-tests1 being available

  Scenario: Configure local mirrorlist URL
     When I execute DNF with a repository dnf-extra-tests of which mirrorlist is file:///tmp/mirrorlist.txt
     Then I should have the content of the repository dnf-extra-tests at host's /tmp/dnf-extra-tests1 being available

  Scenario: Configure local mirrorlist URL if the root is different
     When I execute DNF with a repository dnf-extra-tests of which mirrorlist is file:///tmp/mirrorlist.txt
     When I execute DNF with the following configuration on command line:
       | Option        | Value                 |
       | --installroot | /tmp/dnf-extra-tests2 |
     Then I should have the content of the repository dnf-extra-tests at host's /tmp/dnf-extra-tests1 being available

  Scenario: Configure local GPG key URL
     When I execute DNF with a repository dnf-extra-tests of which gpgkey is file:///tmp/TEST-GPG-KEY
     Then I should have a GPG key 867B843D imported to the host and used to verify packages

  Scenario: Configure local GPG key URL if the root is different
     When I execute DNF with a repository dnf-extra-tests of which gpgkey is file:///tmp/TEST-GPG-KEY
     When I execute DNF with the following configuration on command line:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should have a GPG key 867B843D imported to the guest and used to verify packages

  Scenario: Load from default .repo files directory
     When I execute DNF with the default configuration
     Then I should have the .repo files loaded from the host's default directory

  Scenario: Load from custom .repo files directory
     When I execute DNF with the following configuration in the default config:
       | Option   | Value                |
       | reposdir | /tmp/dnf-extra-tests |
     Then I should have the .repo files loaded from the host's /tmp/dnf-extra-tests

  Scenario: Load from custom relative .repo files directory
     When I execute DNF with the following configuration in the default config:
       | Option   | Value           |
       | reposdir | dnf-extra-tests |
     Then I should have the .repo files loaded from the host's dnf-extra-tests

  Scenario: Load from default .repo files directory if the root is different
     When I execute DNF with the following configuration on command line:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should have the .repo files loaded from the host's default directory

  Scenario: Load from custom .repo files directory if the root is different
     When I execute DNF with the following configuration on command line:
       | Option        | Value                 |
       | --installroot | /tmp/dnf-extra-tests1 |
     When I execute DNF with the following configuration in the default config:
       | Option   | Value                 |
       | reposdir | /tmp/dnf-extra-tests2 |
     Then I should have the .repo files loaded from the host's /tmp/dnf-extra-tests2

  Scenario: Load from custom relative .repo files directory if the root is different
     When I execute DNF with the following configuration on command line:
       | Option        | Value                 |
       | --installroot | /tmp/dnf-extra-tests1 |
     When I execute DNF with the following configuration in the default config:
       | Option   | Value            |
       | reposdir | dnf-extra-tests2 |
     Then I should have the .repo files loaded from the host's dnf-extra-tests2

Feature: Support plugins
  In order to extend DNF's functionality, I want to write my own plugins.

  Scenario: Support default plugins path
     When I execute DNF with the default configuration
     Then I should have the plugins at the host's default path being loaded

  Scenario: Support custom plugins path
     When I execute DNF with the following configuration in the default config:
       | Option     | Value                |
       | pluginpath | /tmp/dnf-extra-tests |
     Then I should have the plugins at host's /tmp/dnf-extra-tests being loaded

  Scenario: Support custom relative plugins path
     When I execute DNF with the following configuration in the default config:
       | Option     | Value           |
       | pluginpath | dnf-extra-tests |
     Then I should have the plugins at host's dnf-extra-tests being loaded

  Scenario: Support default plugins path if the root is different
     When I execute DNF with the following configuration on command line:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should have the plugins at the host's default path being loaded

  Scenario: Support custom plugins path if the root is different
     When I execute DNF with the following configuration on command line:
       | Option        | Value                 |
       | --installroot | /tmp/dnf-extra-tests1 |
     When I execute DNF with the following configuration in the default config:
       | Option     | Value                 |
       | pluginpath | /tmp/dnf-extra-tests2 |
     Then I should have the plugins at host's /tmp/dnf-extra-tests2 being loaded

  Scenario: Support custom relative plugins path if the root is different
     When I execute DNF with the following configuration on command line:
       | Option        | Value                 |
       | --installroot | /tmp/dnf-extra-tests1 |
     When I execute DNF with the following configuration in the default config:
       | Option     | Value            |
       | pluginpath | dnf-extra-tests2 |
     Then I should have the plugins at host's dnf-extra-tests2 being loaded

  Scenario: Support default plugin configuration path
     When I execute DNF with the default configuration
     Then I should have the plugins configuration path set to the host's default

  Scenario: Support custom plugin configuration path
     When I execute DNF with the following configuration in the default config:
       | Option         | Value                |
       | pluginconfpath | /tmp/dnf-extra-tests |
     Then I should have the plugins configuration path set to host's /tmp/dnf-extra-tests

  Scenario: Support custom relative plugin configuration path
     When I execute DNF with the following configuration in the default config:
       | Option         | Value           |
       | pluginconfpath | dnf-extra-tests |
     Then I should have the plugins configuration path set to host's dnf-extra-tests

  Scenario: Support default plugin configuration path if the root is different
     When I execute DNF with the following configuration on command line:
       | Option        | Value                 |
       | --installroot | /tmp/dnf-extra-tests1 |
     Then I should have the plugins configuration path set to the host's default

  Scenario: Support custom plugin configuration path if the root is different
     When I execute DNF with the following configuration on command line:
       | Option        | Value                 |
       | --installroot | /tmp/dnf-extra-tests1 |
     When I execute DNF with the following configuration in the default config:
       | Option         | Value                 |
       | pluginconfpath | /tmp/dnf-extra-tests2 |
     Then I should have the plugins configuration path set to host's /tmp/dnf-extra-tests2

  Scenario: Support custom relative plugin configuration path if the root is different
     When I execute DNF with the following configuration on command line:
       | Option        | Value                 |
       | --installroot | /tmp/dnf-extra-tests1 |
     When I execute DNF with the following configuration in the default config:
       | Option         | Value            |
       | pluginconfpath | dnf-extra-tests2 |
     Then I should have the plugins configuration path set to host's dnf-extra-tests2

Support loading of configuration files for different install roots

Feature: Load configuration
  In order facilitate repetitive configuration, I want it to load a configuration from a file.

  Scenario: Load guest's file if the root is different
     When I execute DNF with the following configuration:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should have the guest's default configuration file loaded

Add a readme file

Add a readme file in order to provide the basic information about this project.

Test tracking of previous runs with the default install root

Feature: Keep track of previous runs
  In order support some future DNF's decisions, I want it to store the
  necessary information about the previous runs.

  Scenario: Store the information
     When I execute DNF with the default configuration
     Then I should have the tracking information stored locally

Support loading of custom configuration files

Feature: Load configuration
  In order facilitate repetitive configuration, I want it to load a configuration from a file.

  Scenario: Load custom file
     When I execute DNF with the following configuration:
       | Option   | Value                     |
       | --config | /tmp/dnf-extra-tests.conf |
     Then I should have the /tmp/dnf-extra-tests.conf configuration file loaded

Support verification of signed packages in different install roots

Feature: Verify signed package
  In order to be sure that packages are coming from trusted sources, I want verify that signed packages were signed using trusted keys.

  Scenario: Verify the guest packages with the guest keys if the root is different
     When I execute DNF with the following configuration:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should have the guest packages being verified using the guest keys

Support logging of selected events in different install roots

Feature: Log selected events
  In order to find out what happened in the past, I want it to log selected events into a file.

  Scenario: Log the events to the guest if the root is different
     When I execute DNF with the following configuration:
       | Option        | Value                |
       | --installroot | /tmp/dnf-extra-tests |
     Then I should have the events logged in the guest

Support logging of selected events

Feature: Log selected events
  In order to find out what happened in the past, I want it to log selected events into a file.

  Scenario: Log the events
     When I execute DNF with the default configuration
     Then I should have the events logged locally

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.