mirror of
https://github.com/Jguer/yay.git
synced 2024-11-08 01:57:20 +01:00
99 lines
2.1 KiB
Go
99 lines
2.1 KiB
Go
|
package aur
|
||
|
|
||
|
import (
|
||
|
"os"
|
||
|
"reflect"
|
||
|
"testing"
|
||
|
|
||
|
"github.com/demizer/go-alpm"
|
||
|
)
|
||
|
|
||
|
func TestSearch(t *testing.T) {
|
||
|
eN := "yay"
|
||
|
eD := "Yet another pacman wrapper with AUR support"
|
||
|
result, _, err := Search("yay", true)
|
||
|
if err != nil {
|
||
|
t.Fatalf("Expected err to be nil but it was %s", err)
|
||
|
}
|
||
|
|
||
|
// t.Logf("Got struct: %+v", result)
|
||
|
found := false
|
||
|
for _, v := range result {
|
||
|
if v.Name == eN && v.Description == eD {
|
||
|
found = true
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if !found {
|
||
|
t.Fatalf("Expected to find yay, found %+v", result)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func benchmarkSearch(search string, sort bool, b *testing.B) {
|
||
|
for n := 0; n < b.N; n++ {
|
||
|
Search(search, sort)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func BenchmarkSearchSimpleNoSort(b *testing.B) { benchmarkSearch("yay", false, b) }
|
||
|
func BenchmarkSearchComplexNoSort(b *testing.B) { benchmarkSearch("linux", false, b) }
|
||
|
func BenchmarkSearchSimpleSorted(b *testing.B) { benchmarkSearch("yay", true, b) }
|
||
|
func BenchmarkSearchComplexSorted(b *testing.B) { benchmarkSearch("linux", true, b) }
|
||
|
|
||
|
func TestInfo(t *testing.T) {
|
||
|
eN := "yay"
|
||
|
eD := "Yet another pacman wrapper with AUR support"
|
||
|
eM := []string{"go", "git"}
|
||
|
result, _, err := Info("yay")
|
||
|
if err != nil {
|
||
|
t.Fatalf("Expected err to be nil but it was %s", err)
|
||
|
}
|
||
|
|
||
|
// t.Logf("Got struct: %+v", result)
|
||
|
found := false
|
||
|
for _, v := range result {
|
||
|
if v.Name == eN && v.Description == eD && reflect.DeepEqual(v.MakeDepends, eM) {
|
||
|
found = true
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if !found {
|
||
|
t.Fatalf("Expected to find yay, found %+v", result)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func TestUpdate(t *testing.T) {
|
||
|
var conf alpm.PacmanConfig
|
||
|
file, err := os.Open("/etc/pacman.conf")
|
||
|
if err != nil {
|
||
|
return
|
||
|
}
|
||
|
conf, err = alpm.ParseConfig(file)
|
||
|
if err != nil {
|
||
|
return
|
||
|
}
|
||
|
|
||
|
err = UpdatePackages("/tmp/yaytmp", &conf, []string{})
|
||
|
if err != nil {
|
||
|
t.Fatalf("Expected err to be nil but it was %s", err)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func TestUpgrade(t *testing.T) {
|
||
|
var conf alpm.PacmanConfig
|
||
|
file, err := os.Open("/etc/pacman.conf")
|
||
|
if err != nil {
|
||
|
return
|
||
|
}
|
||
|
conf, err = alpm.ParseConfig(file)
|
||
|
if err != nil {
|
||
|
return
|
||
|
}
|
||
|
|
||
|
err = UpdatePackages("/tmp/yaytmp", &conf, []string{})
|
||
|
if err != nil {
|
||
|
t.Fatalf("Expected err to be nil but it was %s", err)
|
||
|
}
|
||
|
}
|
||
|
|