1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
package main
import (
"bytes"
"testing"
)
func runTest(t *testing.T, in, out string, nilErr bool) {
r := bytes.NewReader([]byte(in))
w := new(bytes.Buffer)
err := mfmt("-", r, w)
if nilErr && err != nil {
t.Fatalf(`Expected err=nil; got "%s"`, err)
} else if !nilErr && err == nil {
t.Fatalf(`Expected err=Error; got nil`)
}
if nilErr && w.String() != out {
t.Fatalf(`Expected w.String()="%s"; got "%s"`, out, w.String())
}
}
func TestSpacing(t *testing.T) {
in := `
BEGIN 2002
BEGIN CIRC
378.383.000 326.439.000 217.031.000 441.621.000 203.388.000 169.088.000 223.544.000 196.438.000
10.817.950 118.526.000 ? 43.859.072 50.913.200 9.074.200 150.000 4.679.500
`
out := `BEGIN 2002
BEGIN CIRC
378.383.000 326.439.000 217.031.000 441.621.000 203.388.000 169.088.000 223.544.000 196.438.000
10.817.950 118.526.000 ? 43.859.072 50.913.200 9.074.200 150.000 4.679.500
`
runTest(t, in, out, true)
}
func TestAddDots(t *testing.T) {
in := `BEGIN 2002
BEGIN CIRC
378383000 326439000 217031000 441621000 203388000 169088000 223544000 196438000
10817950 118526000 ? 43859072 50913200 9074200 150000 4679500
`
out := `BEGIN 2002
BEGIN CIRC
378.383.000 326.439.000 217.031.000 441.621.000 203.388.000 169.088.000 223.544.000 196.438.000
10.817.950 118.526.000 ? 43.859.072 50.913.200 9.074.200 150.000 4.679.500
`
runTest(t, in, out, true)
}
func TestComplete(t *testing.T) {
in := `
BEGIN 2002
BEGIN CIRC
378383000 326439000 21703...1000 441621000 203388000 .1.6.9.0.8.8.0.0.0 223544000 196438000
10817950 118526000 ? 43859072 50913200 9074..200 150000 4679500
BEGIN PROOF
378383000 123456789 ..5 441621000 203388000 .1.6.9.0.8.8.0.0.0 223544000 196438000
10817950 118526000 ? 43859072 50913200 9074..200 150000 4679500
`
out := `BEGIN 2002
BEGIN CIRC
378.383.000 326.439.000 217.031.000 441.621.000 203.388.000 169.088.000 223.544.000 196.438.000
10.817.950 118.526.000 ? 43.859.072 50.913.200 9.074.200 150.000 4.679.500
BEGIN PROOF
378.383.000 123.456.789 5 441.621.000 203.388.000 169.088.000 223.544.000 196.438.000
10.817.950 118.526.000 ? 43.859.072 50.913.200 9.074.200 150.000 4.679.500
`
runTest(t, in, out, true)
}
func TestLabelAlignment(t *testing.T) {
in := `BEGIN 2002
BEGIN CIRC
378383000 326439000 217031000 441621000 203388000 169088000 223544000 196438000
KNM*: 10817950 118526000 ? 43859072 50913200 9074200 150000 4679500
MdP: 115.000.000 156.400.000 89.300.000 5.200.000 54.800.000 3.100.000 2.600.000 2.500.000
`
out := `BEGIN 2002
BEGIN CIRC
378.383.000 326.439.000 217.031.000 441.621.000 203.388.000 169.088.000 223.544.000 196.438.000
KNM*: 10.817.950 118.526.000 ? 43.859.072 50.913.200 9.074.200 150.000 4.679.500
MdP: 115.000.000 156.400.000 89.300.000 5.200.000 54.800.000 3.100.000 2.600.000 2.500.000
`
runTest(t, in, out, true)
}
|