mirror of
https://github.com/safing/portbase
synced 2025-09-02 02:29:59 +00:00
Fix name fragment grouping
This commit is contained in:
parent
80588d5a53
commit
8a1917c4e0
3 changed files with 13 additions and 2 deletions
|
@ -30,12 +30,15 @@ func GenerateBinaryNameFromPath(path string) string {
|
|||
segments = segments[:len(segments)-1]
|
||||
}
|
||||
|
||||
// Debugging snippet:
|
||||
// fmt.Printf("segments: %s\n", segments)
|
||||
|
||||
// Go through segments and collect name parts.
|
||||
nameParts := make([]string, 0, len(segments))
|
||||
var fragments string
|
||||
for _, segment := range segments {
|
||||
// Group very short segments.
|
||||
if len(segment) <= 3 {
|
||||
if len(delimitersAtStart.ReplaceAllString(segment, "")) <= 2 {
|
||||
fragments += segment
|
||||
continue
|
||||
} else if fragments != "" {
|
||||
|
@ -51,6 +54,9 @@ func GenerateBinaryNameFromPath(path string) string {
|
|||
nameParts = append(nameParts, fragments)
|
||||
}
|
||||
|
||||
// Debugging snippet:
|
||||
// fmt.Printf("parts: %s\n", nameParts)
|
||||
|
||||
// Post-process name parts
|
||||
for i := range nameParts {
|
||||
// Remove any leading delimiters.
|
||||
|
@ -62,6 +68,9 @@ func GenerateBinaryNameFromPath(path string) string {
|
|||
}
|
||||
}
|
||||
|
||||
// Debugging snippet:
|
||||
// fmt.Printf("final: %s\n", nameParts)
|
||||
|
||||
return strings.Join(nameParts, " ")
|
||||
}
|
||||
|
||||
|
|
|
@ -17,6 +17,7 @@ func TestGenerateBinaryNameFromPath(t *testing.T) {
|
|||
assert.Equal(t, "Win Store App", GenerateBinaryNameFromPath("WinStore.App.exe"))
|
||||
assert.Equal(t, "Test Script", GenerateBinaryNameFromPath(".test-script"))
|
||||
assert.Equal(t, "Browser Broker", GenerateBinaryNameFromPath("browser_broker.exe"))
|
||||
assert.Equal(t, "Virtual Box VM", GenerateBinaryNameFromPath("VirtualBoxVM"))
|
||||
}
|
||||
|
||||
func TestCleanFileDescription(t *testing.T) {
|
||||
|
|
|
@ -7,7 +7,8 @@ import (
|
|||
"strings"
|
||||
)
|
||||
|
||||
func runPowershellCmd(script string) (output string, err error) {
|
||||
// RunPowershellCmd runs a powershell command and returns its output.
|
||||
func RunPowershellCmd(script string) (output string, err error) {
|
||||
// Create command to execute.
|
||||
cmd := exec.Command(
|
||||
"powershell.exe",
|
||||
|
|
Loading…
Add table
Reference in a new issue