<commit_before>Feature: Caching
  As a lazy Vim user
  I want to cache repositories of plugins which are installed before
  So that next installation will be finished very fast

  Background:
    Given a temporary directory called 'tmp'
    And a home directory called 'home' in '$tmp/home'
    And a repository 'foo' with versions '1.0.0 1.0.1 1.0.2'
    And flavorfile
      """
      flavor '$foo_uri', '~> 1.0'
      """
    And I run vim-flavor with 'install'
    And I disable network to the original repository of 'foo'

  Scenario: Install plugins - locked and compatible with new flavorfile
    Given I delete '$home/.vim'
    When I run vim-flavor with 'install' again
    Then I get lockfile
      """
      $foo_uri (1.0.2)
      """<commit_msg>Refine the feature introdution abouot caching<commit_after>Feature: Caching
  In order to finish deployment as fast as possible,
  as a lazy Vim user,
  I want to cache repositories of plugins which are installed before.

  Background:
    Given a temporary directory called 'tmp'
    And a home directory called 'home' in '$tmp/home'
    And a repository 'foo' with versions '1.0.0 1.0.1 1.0.2'
    And flavorfile
      """
      flavor '$foo_uri', '~> 1.0'
      """
    And I run vim-flavor with 'install'
    And I disable network to the original repository of 'foo'

  Scenario: Install plugins - locked and compatible with new flavorfile
    Given I delete '$home/.vim'
    When I run vim-flavor with 'install' again
    Then I get lockfile
      """
      $foo_uri (1.0.2)
      """
{'fraction_non_alphanumeric': 0.08473479948253558, 'fraction_numerical': 0.018111254851228976, 'mean_word_length': 2.763990267639903, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3794098', 'n_tokens_mistral': 473, 'n_tokens_neox': 457, 'n_words': 201}