|
|
@@ -23,7 +23,10 @@ func TestConvertEntryIDToLongFormItemID(t *testing.T) {
|
|
|
func TestParseItemIDsFromRequest(t *testing.T) {
|
|
|
formValues := url.Values{}
|
|
|
formValues.Add("i", "12345")
|
|
|
- formValues.Add("i", convertEntryIDToLongFormItemID(45678))
|
|
|
+ formValues.Add("i", "tag:google.com,2005:reader/item/00000000148b9369")
|
|
|
+ formValues.Add("i", "tag:google.com,2005:reader/item/2f2")
|
|
|
+ formValues.Add("i", "000000000000046f")
|
|
|
+ formValues.Add("i", "tag:google.com,2005:reader/item/272")
|
|
|
|
|
|
request := &http.Request{
|
|
|
Form: formValues,
|
|
|
@@ -34,7 +37,7 @@ func TestParseItemIDsFromRequest(t *testing.T) {
|
|
|
t.Fatalf("unexpected error: %v", err)
|
|
|
}
|
|
|
|
|
|
- var expected = []int64{12345, 45678}
|
|
|
+ var expected = []int64{12345, 344691561, 754, 1135, 626}
|
|
|
if !reflect.DeepEqual(result, expected) {
|
|
|
t.Errorf("expected %v, got %v", expected, result)
|
|
|
}
|
|
|
@@ -51,7 +54,7 @@ func TestParseItemIDsFromRequest(t *testing.T) {
|
|
|
}
|
|
|
|
|
|
func TestParseItemID(t *testing.T) {
|
|
|
- // Test with long form ID
|
|
|
+ // Test with long form ID and hex ID
|
|
|
result, err := parseItemID("tag:google.com,2005:reader/item/0000000000000001")
|
|
|
if err != nil {
|
|
|
t.Fatalf("unexpected error: %v", err)
|
|
|
@@ -61,6 +64,16 @@ func TestParseItemID(t *testing.T) {
|
|
|
t.Errorf("expected %d, got %d", expected, result)
|
|
|
}
|
|
|
|
|
|
+ // Test with hexadecimal long form ID
|
|
|
+ result, err = parseItemID("0000000000000468")
|
|
|
+ if err != nil {
|
|
|
+ t.Fatalf("unexpected error: %v", err)
|
|
|
+ }
|
|
|
+ expected = int64(1128)
|
|
|
+ if result != expected {
|
|
|
+ t.Errorf("expected %d, got %d", expected, result)
|
|
|
+ }
|
|
|
+
|
|
|
// Test with short form ID
|
|
|
result, err = parseItemID("12345")
|
|
|
if err != nil {
|
|
|
@@ -88,22 +101,4 @@ func TestParseItemID(t *testing.T) {
|
|
|
if err == nil {
|
|
|
t.Fatalf("expected error, got nil")
|
|
|
}
|
|
|
-
|
|
|
- // Test with ID that is too short
|
|
|
- _, err = parseItemID("tag:google.com,2005:reader/item/00000000000000")
|
|
|
- if err == nil {
|
|
|
- t.Fatalf("expected error, got nil")
|
|
|
- }
|
|
|
-
|
|
|
- // Test with ID that is too long
|
|
|
- _, err = parseItemID("tag:google.com,2005:reader/item/000000000000000000")
|
|
|
- if err == nil {
|
|
|
- t.Fatalf("expected error, got nil")
|
|
|
- }
|
|
|
-
|
|
|
- // Test with ID that is not a number
|
|
|
- _, err = parseItemID("tag:google.com,2005:reader/item/abc")
|
|
|
- if err == nil {
|
|
|
- t.Fatalf("expected error, got nil")
|
|
|
- }
|
|
|
}
|