1. 19 May, 2020 7 commits
  2. 15 May, 2020 4 commits
  3. 14 May, 2020 10 commits
  4. 13 May, 2020 6 commits
  5. 12 May, 2020 13 commits
    • intrigeri's avatar
      Test suite: fix regression on Stretch introduced earlier on this branch · 83a6c49b
      intrigeri authored
      Fixup against 4efe5283.
      
      Interestingly, I did not have this problem with Ruby 2.7.1 on my system,
      but on Jenkins (Ruby 2.3.3) I see this error:
      
        wrong argument type String (expected Symbol) (TypeError)
        ./features/step_definitions/pidgin.rb:113:in `/^my XMPP friend goes online( and joins the multi-user chat)?$/'
      
      Until we require Buster for running our test suite, the current implementation
      is rather ugly, but I figured it's better to have an ugly backwards
      compatibility workaround than to stick with old arguments passing style: it
      brings us one step closer to Ruby best practices.
      83a6c49b
    • intrigeri's avatar
      Test suite: fix ordering of assert_equal parameters · 725cd35d
      intrigeri authored
      When the ordering is wrong, one gets error output with reversed expected vs.
      actual, which is confusing and has made me waste time already.
      725cd35d
    • intrigeri's avatar
      1b94f25c
    • intrigeri's avatar
      Test suite: improve Gherkin phrasing · 6f24620a
      intrigeri authored
       - Consistently use present tense
      
       - While switching scenario titles to present tense, rephrase some to be
         expressed from the perspective of the user, which is what BDD is about (at
         least for situations when the user is the main stakeholder).
      6f24620a
    • intrigeri's avatar
      Test suite: merge scenarios that test minor variations · 55f09cd8
      intrigeri authored
      The benefit of getting 100% independent results for these 2 scenarios
      does not seem to outweigh the performance and resources cost:
      the chances that only one of them fails are pretty low.
      55f09cd8
    • intrigeri's avatar
      Test suite: improve Gherkin terminology and phrasing · de191b84
      intrigeri authored
      Mostly dropping the vague "live systems" terminology.
      de191b84
    • intrigeri's avatar
      Test suite: clarify Gherkin phrasing · e80e2fdc
      intrigeri authored
      Tails does *not* boot on internal hard drives by default.
      e80e2fdc
    • intrigeri's avatar
      Test suite: merge scenarios that test minor variations · 8c6e66b2
      intrigeri authored
      The benefit of getting 100% independent results for these 2 scenarios
      does not seem to outweigh the performance and resources cost:
      the chances that only one of them fails are pretty low.
      8c6e66b2
    • intrigeri's avatar
      Test suite: remove scenarios that are mostly duplicates · dd31ef20
      intrigeri authored
      Here, we test the exact same thing as "Scenario: Upgrading an old Tails USB
      installation from another Tails USB drive" and "Scenario: Booting Tails from
      a USB drive upgraded from USB with persistence enabled", except we're upgrading
      by cloning a Tails running from DVD.
      
      The code path that clones the running Tails is the same, regardless
      of the physical boot medium that Tails was started from.
      
      Therefore, IMO testing 2 slightly different pairs of scenarios is not worth the
      resources it uses on our CI, the increased feedback loop duration for
      developers. Let's focus on upgrading by cloning from a USB stick, which covers
      most of our documented upgrade scenarios.
      dd31ef20
    • intrigeri's avatar
      Test suite: drop the @fragile tag on the UEFI boot scenario (refs: #13459) · 501d4f9f
      intrigeri authored
      After reading the corresponding issue, my understanding is that
      detecting the UEFI firmware screen was causing the problem,
      and that code is gone.
      
      Since then a number of other things happened in this department:
      
       - We've switched from syslinux to GRUB for UEFI boot. This could
         potentially impact the robustness of this test.
      
       - We've made boot menu and command line handling more robust.
      
       - UEFI is the common case rather than the exception nowadays,
         so testing it is becoming increasingly more important.
      
      So I think it's worth giving this another try, see what happens,
      and be ready to revert this commit.
      501d4f9f
    • intrigeri's avatar
      Test suite: remove mostly useless scenario · 987eaba1
      intrigeri authored
      IIRC, we introduced this in 2013 as a regression test for a Tails Installer bug.
      
      Given:
      
       - A USB stick that has a MBR partition table but no partition
         is a pretty rare corner case.
      
       - Nowadays, the only documented user scenarios that rely on Tails Installer are
         about full manual upgrades, in which case the destination drive will have
         a GPT. We're testing this in the "Installing Tails with Tails Installer to
         a used USB drive" scenario and in usb_upgrade.feature.
      
       - I can't recall this test ever catching a regression on this front
         in the last 7 years. Granted, there's a good chance I would have
         forgotten.
      
      ⇒ IMO, at this point this scenario is not worth spending more than 7 minutes
      on during every Jenkins test suite run.
      987eaba1
    • intrigeri's avatar
      Test suite: clarify Gherkin · b332a422
      intrigeri authored
      b332a422
    • intrigeri's avatar
      Test suite: remove obsolete scenario · 4bf2c49b
      intrigeri authored
      This scenario tested 2 things:
      
       - Starting Tails installed from the (hybrid) ISO image copied bit-by-bit to the
         USB stick: we don't support this since January 2019 anymore.
      
       - Tails Installer is able to reinstall a USB stick installed from the (hybrid)
         ISO image copied bit-by-bit, by cloning another running Tails. That's
         a useful feature for users who are migrating a USB stick installed in 2018 or
         earlier, but after almost 1.5 years of transition time, IMO we've reached the
         point when it's not worth spending almost 12 minutes (more than 25% of the
         usb_install.feature) on every Jenkins test suite run, just to ensure we did
         not break this scenario. Given the low amount of work we're putting into
         Tails Installer these days, the risk of regression is quite limited anyway.
      4bf2c49b