summaryrefslogtreecommitdiff
path: root/cmd/rescribe/gbook_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/rescribe/gbook_test.go')
-rw-r--r--cmd/rescribe/gbook_test.go31
1 files changed, 31 insertions, 0 deletions
diff --git a/cmd/rescribe/gbook_test.go b/cmd/rescribe/gbook_test.go
new file mode 100644
index 0000000..6cd5a63
--- /dev/null
+++ b/cmd/rescribe/gbook_test.go
@@ -0,0 +1,31 @@
+// Copyright 2022 Nick White.
+// Use of this source code is governed by the GPLv3
+// license that can be found in the LICENSE file.
+
+package main
+
+import (
+ "testing"
+)
+
+func Test_getBookIdFromUrl(t *testing.T) {
+ cases := []struct {
+ url string
+ id string
+ }{
+ {"https://books.google.it/books?id=QjQepCuN8JYC", "QjQepCuN8JYC"},
+ {"https://www.google.it/books/edition/_/VJbr-Oe2au0C", "VJbr-Oe2au0C"},
+ }
+
+ for _, c := range cases {
+ t.Run(c.url, func(t *testing.T) {
+ id, err := getBookIdFromUrl(c.url)
+ if err != nil {
+ t.Fatalf("Error running test: %v", err)
+ }
+ if id != c.id {
+ t.Fatalf("Expected %s, got %s", c.id, id)
+ }
+ })
+ }
+}