// Copyright 2018 Mikhail Klementev. All rights reserved. // Use of this source code is governed by a AGPLv3 license // (or later) that can be found in the LICENSE file. package config import ( "testing" "github.com/naoina/toml" ) func TestMarshalUnmarshal(t *testing.T) { artifactCfg := Artifact{ Name: "Put name here", Type: KernelModule, } artifactCfg.SupportedKernels = append(artifactCfg.SupportedKernels, KernelMask{Ubuntu, "18.04", ".*", kernel{}}) buf, err := toml.Marshal(&artifactCfg) if err != nil { t.Fatal(err) } var artifactCfgNew Artifact err = toml.Unmarshal(buf, &artifactCfgNew) if err != nil { t.Fatal(err) } } func TestKernelRegex(t *testing.T) { mask := "4[.]4[.]0-(1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32|33|34|35|36|37|38|39|40|41|42|43|44|45|46|47|48|49|50|51|52|53|54|55|56|57|58|59|60|61|62|63|64|65|66|67|68|69|70|71|72|73|74|75|76|77|78|79|80|81|82|83|84|85|86|87|88|89|90|91|92|93|94|95|96|97|98|99|100|101|102|103|104|105|106|107|108|109|110|111|112|113|114|115|116)-.*" k := kernel{ Version: []int{4}, Major: []int{4}, Minor: []int{0}, Patch: []int{1, 116}, } gmask, err := genReleaseMask(k) if err != nil { t.Fatal(err) } if mask != gmask { t.Fatal("Got", gmask, "instead of", mask) } mask = "4[.]4[.]0.*" k = kernel{ Version: []int{4}, Major: []int{4}, Minor: []int{0}, } gmask, err = genReleaseMask(k) if err != nil { t.Fatal(err) } if mask != gmask { t.Fatal("Got", gmask, "instead of", mask) } }