From 4538550638712c32087407750475e93c88fa9816 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Fri, 9 Aug 2024 16:04:26 +0200 Subject: Add support for mintmarks --- mintages/parser_test.go | 47 +++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 43 insertions(+), 4 deletions(-) (limited to 'mintages/parser_test.go') diff --git a/mintages/parser_test.go b/mintages/parser_test.go index 9ff4bc5..b2e4ef9 100644 --- a/mintages/parser_test.go +++ b/mintages/parser_test.go @@ -34,7 +34,7 @@ func TestParserComplete(t *testing.T) { number of padding mintages is actually correct. */ for i, row := range data.Circ { - for j, col := range row { + for j, col := range row.Cols { var n int switch { case i == 1 && j == 1, i >= 2: @@ -49,7 +49,7 @@ func TestParserComplete(t *testing.T) { } for i, row := range data.BU { - for j, col := range row { + for j, col := range row.Cols { var n int switch { case i == 1 && j == 1, i >= 2: @@ -64,7 +64,7 @@ func TestParserComplete(t *testing.T) { } for i, row := range data.Proof { - for j, col := range row { + for j, col := range row.Cols { var n int switch { case i == 1 && j == 1, i >= 2: @@ -106,7 +106,7 @@ func TestParserNoProof(t *testing.T) { } for _, row := range data.Proof { - for _, col := range row { + for _, col := range row.Cols { if col != -1 { t.Fatalf("Expected data.Proof[i][j]=-1; got %d", col) } @@ -119,6 +119,45 @@ func TestParserNoProof(t *testing.T) { } } +func TestParserMintmarks(t *testing.T) { + data, err := parse(bytes.NewBuffer([]byte(` + BEGIN 2020 + BEGIN CIRC + 1.000 1001 1002 1003 1004 1005 1006 1007 + KNM*: 2000 ? 2002 2003 2004 2005 2006 2007 + MdP: 3000 ? 3002 3003 3004 3005 3006 3007 + `)), "-") + + if err != nil { + t.Fatalf(`Expected err=nil; got "%s"`, err) + } + + for i, row := range data.Circ { + for j, col := range row.Cols { + var n int + switch { + case i > 0 && j == 1, i >= 3: + n = -1 + default: + n = 1000*i + j + 1000 + } + if col != n { + t.Fatalf("Expected data.Circ[i][j]=%d; got %d", n, col) + } + } + } + + if data.Circ[0].Label != "2020" { + t.Fatalf(`Expected data.Circ[0].Label="2020"; got %s`, data.Circ[0].Label) + } + if data.Circ[1].Label != "2021\u00A0KNM" { + t.Fatalf(`Expected data.Circ[1].Label="2021 KNM"; got %s`, data.Circ[1].Label) + } + if data.Circ[2].Label != "2021\u00A0MdP" { + t.Fatalf(`Expected data.Circ[2].Label="2021 MdP"; got %s`, data.Circ[2].Label) + } +} + func TestParserNoYear(t *testing.T) { _, err := parse(bytes.NewBuffer([]byte(` BEGIN CIRC -- cgit v1.2.3