Leonardo Di Donato пре 7 година
родитељ
комит
3b71142e26
1 измењених фајлова са 27 додато и 0 уклоњено
  1. 27 0
      machine_test.go

+ 27 - 0
machine_test.go

@@ -0,0 +1,27 @@
+package urn
+
+import (
+	"testing"
+
+	"github.com/stretchr/testify/assert"
+)
+
+func TestParse(t *testing.T) {
+	for ii, tt := range tests {
+		urn, err := NewMachine().Parse([]byte(tt.in))
+		ok := err == nil
+
+		if ok {
+			assert.True(t, tt.ok, herror(ii, tt))
+			assert.Equal(t, tt.obj.prefix, urn.prefix, herror(ii, tt))
+			assert.Equal(t, tt.obj.ID, urn.ID, herror(ii, tt))
+			assert.Equal(t, tt.obj.SS, urn.SS, herror(ii, tt))
+			assert.Equal(t, tt.str, urn.String(), herror(ii, tt))
+			assert.Equal(t, tt.norm, urn.Normalize().String(), herror(ii, tt))
+		} else {
+			assert.False(t, tt.ok, herror(ii, tt))
+			assert.Empty(t, urn, herror(ii, tt))
+			assert.Equal(t, tt.estr, err.Error())
+		}
+	}
+}