]> git.lizzy.rs Git - go-anidb.git/blobdiff - misc/episodelist_test.go
anidb: Implement MYLIST for single files
[go-anidb.git] / misc / episodelist_test.go
index 753a4daace61e80ef4d24adedb3e74fc3df54e31..470e5d607b7325d8b89a5916baa9ed1c08e0e566 100644 (file)
@@ -5,27 +5,34 @@ import (
        "github.com/Kovensky/go-anidb/misc"
 )
 
-func ExampleEpisodeRange_Merge() {
-       a := misc.ParseEpisodeRange("5-7")
-       b := misc.ParseEpisodeRange("8-12")
-       fmt.Println(a.Merge(b)) // 5-7 + 8-12
+func ExampleEpisodeList_Simplify() {
+       a := misc.ParseEpisodeList("1,2,3,5,10-14,13-15,,S3-S6,C7-C10,S1,S7,S8-")
+       fmt.Println(a.Simplify())
 
-       b = misc.ParseEpisodeRange("3-6")
-       fmt.Println(a.Merge(b)) // 5-7 + 3-6
+       // Output: 01-03,05,10-15,S1,S3-,C07-C10
+}
+
+func ExampleEpisodeList_Add() {
+       a := misc.ParseEpisodeList("1-3")
+       a.Add(misc.ParseEpisode("3.1"))
+       fmt.Println(a)
+
+       a.Add(misc.ParseEpisode("4.0"))
+       fmt.Println(a)
 
-       b = misc.ParseEpisodeRange("10-12")
-       fmt.Println(a.Merge(b)) // 5-7 + 10-12 (invalid, not touching)
+       a.Add(misc.ParseEpisode("4"))
+       fmt.Println(a)
 
-       b = misc.ParseEpisodeRange("S1-S3")
-       fmt.Println(a.Merge(b)) // 5-7 + S1-S3 (invalid, different types)
+       a.Add(misc.ParseEpisode("5.1"))
+       fmt.Println(a)
 
-       a = misc.ParseEpisodeRange("S3-S10")
-       fmt.Println(a.Merge(b)) // S3-S10 + S1-S3
+       a.Add(misc.ParseEpisode("6"))
+       fmt.Println(a)
 
        // Output:
-       // 05-12
-       // 3-7
-       // <nil>
-       // <nil>
-       // S01-S10
+       // 1-3
+       // 1-4.0
+       // 1-4
+       // 1-4,5.1
+       // 1-4,5.1,6
 }