1. 07 3月, 2017 5 次提交
  2. 06 3月, 2017 4 次提交
  3. 04 3月, 2017 10 次提交
    • C
      Merge remote-tracking branch 'ldoktor/mux-plugin5' · 69539a39
      Cleber Rosa 提交于
      Signed-off-by: NCleber Rosa <crosa@redhat.com>
      69539a39
    • L
      varianter: Improve few docstrings · 8a5b88d5
      Lukáš Doktor 提交于
      There are some old docstrings which are not much helpful, let's improve
      them.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      8a5b88d5
    • L
      varianter: Complete rework of the variants/params/mux documentation · 061c4ae8
      Lukáš Doktor 提交于
      Finally after all the refactoring, refining and modifying here is the
      up-to-date documentation which follows the current structure and tries
      to describe both theoretically and practically how are test's parameters
      produced and how they can be used.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      061c4ae8
    • L
      varianter: Change the variant format · dbd134bd
      Lukáš Doktor 提交于
      Currently the variant format is (variant_id, (variant, mux_path)) which
      is not really scalable, nor user friendly. Let's use a dictionary
      instead.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      dbd134bd
    • L
      varianter: Remove the unnecessary "ignore_new_data" interface · 62829d0b
      Lukáš Doktor 提交于
      The "ignore_new_data" was used by "replay" to override Varianter and
      tell it to stop accepting new data by other plugins (like yaml_to_mux).
      With the new changes the plugins are part of the Varianter, so when
      "replay" replaces it with the old (parsed) one, it will not parse itself
      again, therefor the default_params and variants stays untouched.
      
      To make sure this works well a unittest is included.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      62829d0b
    • L
      varianter: Rename "mux-skip-defaults" to "variants-..." · 883e8ea8
      Lukáš Doktor 提交于
      The "mux-skip-defaults" is a generic concept and should be renamed to
      "variants-skip-defaults" as the whole generic concept is called
      variant/varianter. This change is only internal and not visible to
      users.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      883e8ea8
    • L
      varianter: Make it properly pluggable · bae47d00
      Lukáš Doktor 提交于
      This patch replaces the hardcoded mux in Varianter for list of Varianter
      plugins, iterating through all of them to produce all specified
      variants. The interface is described in `avocado.core.plugin_interfaces`
      and we also provide base-implementation for Mux-like plugins in
      `avocado.core.mux`.
      
      Mainly this PR is about defining the stevedore entry points, moving the
      code around and wrapping the code into a class according the defined
      stevedore interface. Doing so allowed us to simplify the `MuxTree`
      object which does not need to keep track of the `root` of the tree,
      because the root is stored in the pluggin's instance.
      
      There is still one potential issue in Varianter which is probably even
      more visible now, which is that we are pickling it in jobdata in order
      to be able to reproduce the variants when re-running/diffing the job.
      Before this was prone to code-changes but now it can be even worse as
      multiple plugins can be enabled and can break loading of the previous
      state. To avoid the potential breakage this version simply initializes
      only the available extensions which should produce only the supported
      variants.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      bae47d00
    • L
      varianter: Create the concept of default_params · 0e4fed8c
      Lukáš Doktor 提交于
      The idea behind default_params is, that some of the params are
      considered the default_params, they can change, but are not part of
      variant, nor the variant-id.
      
      This implementation replaces the `Mux.data_inject` with
      `Mux.add_default_param` which also accepts `name` to map data to
      different plugins/groups in order to allow ignoring only some of them.
      
      During parsing it extends multiplex variants of the defaults (merges
      multiplex variants into defaults, therefor the mux overrides the values)
      in order to provide the combination while yielding variants. Then when
      there are variants, it yields the variant (compound of the variant and
      the default_params) and variant-id. If there are no variants, it yields
      only the default_params with no variant-id (None).
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      0e4fed8c
    • L
      varianter: Support for number of variants · 0cd7f91d
      Lukáš Doktor 提交于
      Currently the Varianter itself calculates the number of tests, but in
      the future we want to allow each variants plugin to report the number of
      tests. Let's add support for `__len__` to the Mux plugin and utilize it
      in Varianter instead of hardcoded iteration.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      0cd7f91d
    • L
      varianter: Support for human readable output · 1db1d9ae
      Lukáš Doktor 提交于
      Instead of custom handling of human readable output let's create a
      varianter method which produces it and use it from the core.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      1db1d9ae
  4. 03 3月, 2017 2 次提交
  5. 02 3月, 2017 3 次提交
  6. 01 3月, 2017 5 次提交
    • L
      Merging pull request 1823 · 9081a15d
      Lukáš Doktor 提交于
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      
      * https://github.com/avocado-framework/avocado:
        docs: update the examples according to current UI
      9081a15d
    • L
      Test: Turn `params` into a property · 99af5079
      Lukáš Doktor 提交于
      This change should decrease the probability of users accidentally
      overriding `Test.params` while keeping the usage the same. There is one
      caveat and that is Avocado-vt, which modifies `self.params`, which is
      not that simple anymore. I have a fix for it, but the problem is it is
      not backward compatible and it can only be changed to
      forward-compatible. We should consider whether the benefit of having
      this "a bit" protected is greater than backward incompatible change with
      Avocado-vt (and possibly other "nasty" user's tests)
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      99af5079
    • L
      Test: Stop publishing non-existing values in get_state · ba2439b1
      Lukáš Doktor 提交于
      We removed several classes in the history, let's update the get_state to
      remove methods, that are not used anymore.
      
      Note that some of the variables were related to Avocado-vt, anyway the
      usage of `get_state` from Avocado depends only on it's values. If
      Avocado-vt needs to publish it's internal values, it can override this
      method and do so, anyway at this point this is not necessary.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      ba2439b1
    • L
      Test: Stop publishing text_output · 29650ee4
      Lukáš Doktor 提交于
      Publishing of text_output doesn't makes much sense as what it does is
      basically just open `self.logfile` and writes the content into memory.
      This was only used by `xunit` plugin and this plugin can simply open the
      file and read it.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      29650ee4
    • L
      Test: Turn runner_queue into a property · c4f810f9
      Lukáš Doktor 提交于
      The runner queue is essential part of runner->test communication. Let's
      decrease the probability of user accidentally replacing the runner queue
      by turning it into a property.
      
      For safety reasons our runner also needs to set this property from
      outside (if it's not set by the test_loader) so this patch also includes
      a method `set_runner_queue` which allows overriding the runner queue
      from outside, but we only allow this once to avoid unwanted changes.
      Signed-off-by: NLukáš Doktor <ldoktor@redhat.com>
      c4f810f9
  7. 28 2月, 2017 5 次提交
  8. 25 2月, 2017 1 次提交
  9. 24 2月, 2017 5 次提交