<commit_before>Feature: Manage vimpack git repo

  As a vimpack user
  I want manage my vimpack git repo
  So I can easily replicate my vimpack

  Scenario: Initialize vimpack git remote
    Given an initialized vimpack in "test_vimpack"
    When I run "vimpack git remote <EMAIL>:bramswenson/vimpack-repo-test.git"
    Then the exit status should be 0
      And the output should contain:
        """
         * adding remote origin
        remote origin added!
        """
      And the vimpack git remote "origin" should be "<EMAIL>:bramswenson/vimpack-repo-test.git"

  Scenario: Commit vimpack git repo with commit message
    Given an initialized vimpack in "test_vimpack"
      And I run "vimpack git remote <EMAIL>:bramswenson/vimpack-repo-test.git"
    When I run "vimpack git commit '[TEST] test commit'"
    Then the exit status should be 0
      And the output should contain:
        """
         * commiting vimpack repo
        commited: [TEST] test commit!
        """
      And the vimpack git commit logs last message should be "[TEST] test commit"

  Scenario: Commit vimpack git repo
    Given an initialized vimpack in "test_vimpack"
      And I run "vimpack git remote <EMAIL>@github.com:bramswenson/vimpack-repo-test.git"
    When I run "vimpack git commit"
    Then the exit status should be 0
      And the output should contain:
        """
         * commiting vimpack repo
        commited: [VIMPACK] vimpack updated!
        """
      And the vimpack git commit logs last message should be "[VIMPACK] vimpack updated"

  Scenario: Push vimpack git repo
    Given an initialized vimpack in "test_vimpack"
      And I run "vimpack git remote <EMAIL>:bramswenson/vimpack-repo-test.git"
      And I run "vimpack git commit"
    When I run "vimpack git push -f"
    Then the exit status should be 0
      And the output should contain:
        """
         * pushing vimpack repo
        vimpack repo pushed!
        """
      And the vimpack git status should be empty
<commit_msg>[GIT] added feature for publishing vimpack repo via git<commit_after>Feature: Manage vimpack git repo

  As a vimpack user
  I want manage my vimpack git repo
  So I can easily replicate my vimpack

  Scenario: Initialize vimpack git remote
    Given an initialized vimpack in "test_vimpack"
    When I run "vimpack git remote <EMAIL>:bramswenson/vimpack-repo-test.git"
    Then the exit status should be 0
      And the output should contain:
        """
         * adding remote origin
        remote origin added!
        """
      And the vimpack git remote "origin" should be "<EMAIL>:bramswenson/vimpack-repo-test.git"

  Scenario: Commit vimpack git repo with commit message
    Given an initialized vimpack in "test_vimpack"
      And I run "vimpack git remote <EMAIL>:bramswenson/vimpack-repo-test.git"
    When I run "vimpack git commit '[TEST] test commit'"
    Then the exit status should be 0
      And the output should contain:
        """
         * commiting vimpack repo
        commited: [TEST] test commit!
        """
      And the vimpack git commit logs last message should be "[TEST] test commit"

  Scenario: Commit vimpack git repo
    Given an initialized vimpack in "test_vimpack"
      And I run "vimpack git remote <EMAIL>@github.<EMAIL>:bramswenson/vimpack-repo-test.git"
    When I run "vimpack git commit"
    Then the exit status should be 0
      And the output should contain:
        """
         * commiting vimpack repo
        commited: [VIMPACK] vimpack updated!
        """
      And the vimpack git commit logs last message should be "[VIMPACK] vimpack updated"

  Scenario: Push vimpack git repo
    Given an initialized vimpack in "test_vimpack"
      And I run "vimpack git remote <EMAIL>:bramswenson/vimpack-repo-test.git"
      And I run "vimpack git commit"
    When I run "vimpack git push -f"
    Then the exit status should be 0
      And the output should contain:
        """
         * pushing vimpack repo
        vimpack repo pushed!
        """
      And the vimpack git status should be empty

  @wip
  Scenario: Publish vimpack git repo
    Given an initialized vimpack in "test_vimpack"
      And I run "vimpack git remote <EMAIL>:bramswenson/vimpack-repo-test.git"
    When I run "vimpack git publish"
    Then show me the output
    Then the exit status should be 0
      And the output should contain:
        """
         * commiting vimpack repo
        commited: [VIMPACK] vimpack updated!
         * pushing vimpack repo
        vimpack repo pushed!
        """
      And the vimpack git status should be empty
{'fraction_non_alphanumeric': 0.06304537521815008, 'fraction_numerical': 0.001963350785340314, 'mean_word_length': 2.627373417721519, 'pattern_counts': {'":': 0, '<': 15, '<?xml version=': 0, '>': 15, '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': '640189', 'n_tokens_mistral': 1376, 'n_tokens_neox': 1312, 'n_words': 557}