PSVersionTable.Tests.ps1 handles certain builds incorrectly.

Ouverte Adaptée aux débutants
#27,503 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
1/5
Temps estimé
1-3 heures
Accessibilité débutants
72/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Calme
Stack technique
powershell
Domaine
testing-qa

Piste de recherche

Commencez dans test/powershell/Host/PSVersionTable.Tests.ps1, en particulier par les assertions GitCommitId autour de la ligne 55, et comparez-les au format GitCommitId décrit dans PSVersionInfoGenerator.cs. Mettez à jour le motif ou l’attente du test afin que la valeur signalée 7.6.2-0-g... soit correctement traitée, puis exécutez les tests PSVersionTable et confirmez que le build avec un tag propre ne produit aucune erreur.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Needs-Triage
Prerequisites
Steps to reproduce

Affected version: All up to trunk.

There's a logic mismatch in PSVersionTable.Tests.ps1. More specifically, it tests here whether or not a commit build matches "^(\d+\.\d+\.\d+)(-.+)?" - and the issue is that GitCommitId absolutely can look like that and will indeed. See the comments here in PSVersionInfoGenerator.cs about how such a GitCommitId can look - but most importantly, it's ALWAYS prefixed by the version - and thus always matching the string it should not match.

As you can see, my GitCommitId after a clean build from the 7.6.2 git tag is 7.6.2-0-g0d3c290a8737d4252ee75c052d16190ffcdb7d19. This matches of course.

Expected behavior
No error.
Actual behavior
[-] GitCommitId property 3ms
      Expected regular expression '^(\d+\.\d+\.\d+)(-.+)?-(\d+)-g(.+)$' to not match '7.6.2-0-g0d3c290a8737d4252ee75c052d16190ffcdb7d19', but it did match.
      55:        $PSVersionTable.GitCommitId | Should -Not -Match $unexpectectGitCommitIdPattern
      at <ScriptBlock>, /home/aurutils/.cache/aurutils/sync/powershell/src/PowerShell/test/powershell/Host/PSVersionTable.Tests.ps1: line 55
Error details

Environment data
Name                           Value
----                           -----
PSVersion                      7.6.2
PSEdition                      Core
GitCommitId                    7.6.2-0-g0d3c290a8737d4252ee75c052d16190ffcdb7d19
OS                             Arch Linux
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.4
SerializationVersion           1.1.0.1
WSManStackVersion              3.0
Visuals

No response

Langage dominant
C#
Étoiles
55.5k
Forks
8.5k
Merge moyen
1 j 11 h
PR mergées (30 j)
86

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de PowerShell/PowerShell

Toutes les issues de PowerShell/PowerShell

Issues similaires

Plus d'issues C#

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.