-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathaeat-nif_test.go
112 lines (95 loc) · 3.05 KB
/
aeat-nif_test.go
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
109
110
111
112
package aeatnif
import (
"log"
"testing"
)
/*
CERTIFICATE MUST BE REQUESTED TO AEAT
ask password via test or get it via env
*/
const CERTFILE = "cert.crt"
const CERTPWD = ""
//Ok example
func TestServiceOkNIF(t *testing.T) {
srv := NewVNifV2("https://www1.agenciatributaria.gob.es/wlpl/BURT-JDIT/ws/VNifV2SOAP", CERTFILE, CERTPWD)
name, _, err := srv.SoapCall("99999999R", "ESPAÑOL ESPAÑOL JUAN")
if err == nil {
if *name != "ESPAÑOL ESPAÑOL JUAN" {
t.Errorf("Data returned is erronious %s", *name)
log.Println(err)
}
} else {
t.Errorf("Error Accesing SOAP %s : %s", srv.url, err.Error())
log.Println(err)
}
}
func TestServicePartialOkNIF(t *testing.T) {
srv := NewVNifV2("https://www1.agenciatributaria.gob.es/wlpl/BURT-JDIT/ws/VNifV2SOAP", CERTFILE, CERTPWD)
name, _, err := srv.SoapCall("99999999R", "ESPAÑOL ESPAÑOL") //Requires at lest two words
if err == nil {
if *name != "ESPAÑOL ESPAÑOL JUAN" {
t.Errorf("Data returned is erronious %s", *name)
log.Println(err)
}
} else {
t.Errorf("Error Accesing SOAP %s : %s", srv.url, err.Error())
log.Println(err)
}
}
func TestServiceOkCIF(t *testing.T) {
srv := NewVNifV2("https://www1.agenciatributaria.gob.es/wlpl/BURT-JDIT/ws/VNifV2SOAP", CERTFILE, CERTPWD)
name, _, err := srv.SoapCall("B63272603", "")
if err == nil {
if *name != "GOOGLE SPAIN, SL" {
t.Errorf("Data returned is erronious %s", *name)
log.Println(err)
}
} else {
t.Errorf("Error Accesing SOAP %s : %s", srv.url, err.Error())
log.Println(err)
}
}
func TestServiceOkCIF2(t *testing.T) {
srv := NewVNifV2("https://www1.agenciatributaria.gob.es/wlpl/BURT-JDIT/ws/VNifV2SOAP", CERTFILE, CERTPWD)
name, taxid, err := srv.SoapCall("C63272603", "")
if err == nil {
if (*name != "GOOGLE SPAIN, SL") && (*taxid == "B63272603") {
t.Errorf("Data returned is erronious %s", *name)
log.Println(err)
}
} else {
t.Errorf("Error Accesing SOAP %s : %s", srv.url, err.Error())
log.Println(err)
}
}
func TestServiceErrorNIF(t *testing.T) {
srv := NewVNifV2("https://www1.agenciatributaria.gob.es/wlpl/BURT-JDIT/ws/VNifV2SOAP", CERTFILE, CERTPWD)
name, _, err := srv.SoapCall("99999999S", "ESPAÑOL ESPAÑOL JUAN")
if err == nil {
t.Errorf("Error, because it must fail, NIF invalid %s", *name)
log.Println(err)
} else {
log.Println("OK, must fail", err)
}
}
func TestServiceErrorCIF(t *testing.T) {
srv := NewVNifV2("https://www1.agenciatributaria.gob.es/wlpl/BURT-JDIT/ws/VNifV2SOAP", CERTFILE, CERTPWD)
name, _, err := srv.SoapCall("T62880042", "")
if err == nil {
t.Errorf("Error, because it must fail, CIF invalid %s", *name)
log.Println(err)
} else {
log.Println("OK, must fail", err)
}
}
func TestServiceErrorCharSet(t *testing.T) {
srv := NewVNifV2("https://www1.agenciatributaria.gob.es/wlpl/BURT-JDIT/ws/VNifV2SOAP", CERTFILE, CERTPWD)
//To correctly test it, chnage xml call to be an incorrect value
name, _, err := srv.SoapCall("", "")
if err == nil {
t.Errorf("Error, because it must fail, NIF invalid %s", *name)
log.Println(err)
} else {
log.Println("OK, must fail", err)
}
}