Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
sundowndev
GitHub Repository: sundowndev/phoneinfoga
Path: blob/master/lib/remote/googlesearch_scanner_test.go
988 views
1
package remote_test
2
3
import (
4
"github.com/stretchr/testify/assert"
5
"github.com/sundowndev/phoneinfoga/v2/lib/filter"
6
"github.com/sundowndev/phoneinfoga/v2/lib/number"
7
"github.com/sundowndev/phoneinfoga/v2/lib/remote"
8
"testing"
9
)
10
11
func TestGoogleSearchScanner_Metadata(t *testing.T) {
12
scanner := remote.NewGoogleSearchScanner()
13
assert.Equal(t, remote.Googlesearch, scanner.Name())
14
assert.NotEmpty(t, scanner.Description())
15
}
16
17
func TestGoogleSearchScanner(t *testing.T) {
18
testcases := []struct {
19
name string
20
number *number.Number
21
expected map[string]interface{}
22
wantErrors map[string]error
23
}{
24
{
25
name: "successful scan",
26
number: func() *number.Number {
27
n, _ := number.NewNumber("15556661212")
28
return n
29
}(),
30
expected: map[string]interface{}{
31
"googlesearch": remote.GoogleSearchResponse{
32
SocialMedia: []*remote.GoogleSearchDork{
33
{
34
Number: "+15556661212",
35
Dork: "site:facebook.com intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
36
URL: "https://www.google.com/search?q=site%3Afacebook.com+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
37
},
38
{
39
Number: "+15556661212",
40
Dork: "site:twitter.com intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
41
URL: "https://www.google.com/search?q=site%3Atwitter.com+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
42
},
43
{
44
Number: "+15556661212",
45
Dork: "site:linkedin.com intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
46
URL: "https://www.google.com/search?q=site%3Alinkedin.com+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
47
},
48
{
49
Number: "+15556661212",
50
Dork: "site:instagram.com intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
51
URL: "https://www.google.com/search?q=site%3Ainstagram.com+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
52
},
53
{
54
Number: "+15556661212",
55
Dork: "site:vk.com intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
56
URL: "https://www.google.com/search?q=site%3Avk.com+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
57
},
58
},
59
DisposableProviders: []*remote.GoogleSearchDork{
60
{
61
Number: "+15556661212",
62
Dork: "site:hs3x.com intext:\"15556661212\"",
63
URL: "https://www.google.com/search?q=site%3Ahs3x.com+intext%3A%2215556661212%22",
64
},
65
{
66
Number: "+15556661212",
67
Dork: "site:receive-sms-now.com intext:\"15556661212\" | intext:\"5556661212\"",
68
URL: "https://www.google.com/search?q=site%3Areceive-sms-now.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
69
},
70
{
71
Number: "+15556661212",
72
Dork: "site:smslisten.com intext:\"15556661212\" | intext:\"5556661212\"",
73
URL: "https://www.google.com/search?q=site%3Asmslisten.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
74
},
75
{
76
Number: "+15556661212",
77
Dork: "site:smsnumbersonline.com intext:\"15556661212\" | intext:\"5556661212\"",
78
URL: "https://www.google.com/search?q=site%3Asmsnumbersonline.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
79
},
80
{
81
Number: "+15556661212",
82
Dork: "site:freesmscode.com intext:\"15556661212\" | intext:\"5556661212\"",
83
URL: "https://www.google.com/search?q=site%3Afreesmscode.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
84
}, {
85
Number: "+15556661212",
86
Dork: "site:catchsms.com intext:\"15556661212\" | intext:\"5556661212\"",
87
URL: "https://www.google.com/search?q=site%3Acatchsms.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
88
},
89
{
90
Number: "+15556661212",
91
Dork: "site:smstibo.com intext:\"15556661212\" | intext:\"5556661212\"",
92
URL: "https://www.google.com/search?q=site%3Asmstibo.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
93
},
94
{
95
Number: "+15556661212",
96
Dork: "site:smsreceiving.com intext:\"15556661212\" | intext:\"5556661212\"",
97
URL: "https://www.google.com/search?q=site%3Asmsreceiving.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
98
},
99
{
100
Number: "+15556661212",
101
Dork: "site:getfreesmsnumber.com intext:\"15556661212\" | intext:\"5556661212\"",
102
URL: "https://www.google.com/search?q=site%3Agetfreesmsnumber.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
103
},
104
{
105
Number: "+15556661212",
106
Dork: "site:sellaite.com intext:\"15556661212\" | intext:\"5556661212\"",
107
URL: "https://www.google.com/search?q=site%3Asellaite.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
108
},
109
{
110
Number: "+15556661212",
111
Dork: "site:receive-sms-online.info intext:\"15556661212\" | intext:\"5556661212\"",
112
URL: "https://www.google.com/search?q=site%3Areceive-sms-online.info+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
113
},
114
{
115
Number: "+15556661212",
116
Dork: "site:receivesmsonline.com intext:\"15556661212\" | intext:\"5556661212\"",
117
URL: "https://www.google.com/search?q=site%3Areceivesmsonline.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
118
},
119
{
120
Number: "+15556661212",
121
Dork: "site:receive-a-sms.com intext:\"15556661212\" | intext:\"5556661212\"",
122
URL: "https://www.google.com/search?q=site%3Areceive-a-sms.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
123
},
124
{
125
Number: "+15556661212",
126
Dork: "site:sms-receive.net intext:\"15556661212\" | intext:\"5556661212\"",
127
URL: "https://www.google.com/search?q=site%3Asms-receive.net+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
128
},
129
{
130
Number: "+15556661212",
131
Dork: "site:receivefreesms.com intext:\"15556661212\" | intext:\"5556661212\"",
132
URL: "https://www.google.com/search?q=site%3Areceivefreesms.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
133
},
134
{
135
Number: "+15556661212",
136
Dork: "site:receive-sms.com intext:\"15556661212\" | intext:\"5556661212\"",
137
URL: "https://www.google.com/search?q=site%3Areceive-sms.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
138
},
139
{
140
Number: "+15556661212",
141
Dork: "site:receivetxt.com intext:\"15556661212\" | intext:\"5556661212\"",
142
URL: "https://www.google.com/search?q=site%3Areceivetxt.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
143
},
144
{
145
Number: "+15556661212",
146
Dork: "site:freephonenum.com intext:\"15556661212\" | intext:\"5556661212\"",
147
URL: "https://www.google.com/search?q=site%3Afreephonenum.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
148
},
149
{
150
Number: "+15556661212",
151
Dork: "site:freesmsverification.com intext:\"15556661212\" | intext:\"5556661212\"",
152
URL: "https://www.google.com/search?q=site%3Afreesmsverification.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
153
},
154
{
155
Number: "+15556661212",
156
Dork: "site:receive-sms-online.com intext:\"15556661212\" | intext:\"5556661212\"",
157
URL: "https://www.google.com/search?q=site%3Areceive-sms-online.com+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
158
},
159
{
160
Number: "+15556661212",
161
Dork: "site:smslive.co intext:\"15556661212\" | intext:\"5556661212\"",
162
URL: "https://www.google.com/search?q=site%3Asmslive.co+intext%3A%2215556661212%22+%7C+intext%3A%225556661212%22",
163
},
164
},
165
Reputation: []*remote.GoogleSearchDork{
166
{
167
Number: "+15556661212",
168
Dork: "site:whosenumber.info intext:\"+15556661212\" intitle:\"who called\"",
169
URL: "https://www.google.com/search?q=site%3Awhosenumber.info+intext%3A%22%2B15556661212%22+intitle%3A%22who+called%22",
170
},
171
{
172
Number: "+15556661212",
173
Dork: "intitle:\"Phone Fraud\" intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
174
URL: "https://www.google.com/search?q=intitle%3A%22Phone+Fraud%22+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
175
},
176
{
177
Number: "+15556661212",
178
Dork: "site:findwhocallsme.com intext:\"+15556661212\" | intext:\"15556661212\"",
179
URL: "https://www.google.com/search?q=site%3Afindwhocallsme.com+intext%3A%22%2B15556661212%22+%7C+intext%3A%2215556661212%22",
180
},
181
{
182
Number: "+15556661212",
183
Dork: "site:yellowpages.ca intext:\"+15556661212\"",
184
URL: "https://www.google.com/search?q=site%3Ayellowpages.ca+intext%3A%22%2B15556661212%22",
185
},
186
{
187
Number: "+15556661212",
188
Dork: "site:phonenumbers.ie intext:\"+15556661212\"",
189
URL: "https://www.google.com/search?q=site%3Aphonenumbers.ie+intext%3A%22%2B15556661212%22",
190
},
191
{
192
Number: "+15556661212",
193
Dork: "site:who-calledme.com intext:\"+15556661212\"",
194
URL: "https://www.google.com/search?q=site%3Awho-calledme.com+intext%3A%22%2B15556661212%22",
195
},
196
{
197
Number: "+15556661212",
198
Dork: "site:usphonesearch.net intext:\"5556661212\"",
199
URL: "https://www.google.com/search?q=site%3Ausphonesearch.net+intext%3A%225556661212%22",
200
},
201
{
202
Number: "+15556661212",
203
Dork: "site:whocalled.us inurl:\"5556661212\"",
204
URL: "https://www.google.com/search?q=site%3Awhocalled.us+inurl%3A%225556661212%22",
205
},
206
{
207
Number: "+15556661212",
208
Dork: "site:quinumero.info intext:\"5556661212\" | intext:\"15556661212\"",
209
URL: "https://www.google.com/search?q=site%3Aquinumero.info+intext%3A%225556661212%22+%7C+intext%3A%2215556661212%22",
210
},
211
{
212
Number: "+15556661212",
213
Dork: "site:uk.popularphotolook.com inurl:\"5556661212\"",
214
URL: "https://www.google.com/search?q=site%3Auk.popularphotolook.com+inurl%3A%225556661212%22",
215
},
216
},
217
Individuals: []*remote.GoogleSearchDork{
218
{
219
Number: "+15556661212",
220
Dork: "site:numinfo.net intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
221
URL: "https://www.google.com/search?q=site%3Anuminfo.net+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
222
},
223
{
224
Number: "+15556661212",
225
Dork: "site:sync.me intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
226
URL: "https://www.google.com/search?q=site%3Async.me+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
227
},
228
{
229
Number: "+15556661212",
230
Dork: "site:whocallsyou.de intext:\"5556661212\"",
231
URL: "https://www.google.com/search?q=site%3Awhocallsyou.de+intext%3A%225556661212%22",
232
},
233
{
234
Number: "+15556661212",
235
Dork: "site:pastebin.com intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
236
URL: "https://www.google.com/search?q=site%3Apastebin.com+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
237
},
238
{
239
Number: "+15556661212",
240
Dork: "site:whycall.me intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
241
URL: "https://www.google.com/search?q=site%3Awhycall.me+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
242
},
243
{
244
Number: "+15556661212",
245
Dork: "site:locatefamily.com intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
246
URL: "https://www.google.com/search?q=site%3Alocatefamily.com+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
247
},
248
{
249
Number: "+15556661212",
250
Dork: "site:spytox.com intext:\"5556661212\"",
251
URL: "https://www.google.com/search?q=site%3Aspytox.com+intext%3A%225556661212%22",
252
},
253
},
254
General: []*remote.GoogleSearchDork{
255
{
256
Number: "+15556661212",
257
Dork: "intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\" | intext:\"(555) 666-1212\"",
258
URL: "https://www.google.com/search?q=intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22+%7C+intext%3A%22%28555%29+666-1212%22",
259
},
260
{
261
Number: "+15556661212",
262
Dork: "(ext:doc | ext:docx | ext:odt | ext:pdf | ext:rtf | ext:sxw | ext:psw | ext:ppt | ext:pptx | ext:pps | ext:csv | ext:txt | ext:xls) intext:\"15556661212\" | intext:\"+15556661212\" | intext:\"5556661212\"",
263
URL: "https://www.google.com/search?q=%28ext%3Adoc+%7C+ext%3Adocx+%7C+ext%3Aodt+%7C+ext%3Apdf+%7C+ext%3Artf+%7C+ext%3Asxw+%7C+ext%3Apsw+%7C+ext%3Appt+%7C+ext%3Apptx+%7C+ext%3Apps+%7C+ext%3Acsv+%7C+ext%3Atxt+%7C+ext%3Axls%29+intext%3A%2215556661212%22+%7C+intext%3A%22%2B15556661212%22+%7C+intext%3A%225556661212%22",
264
},
265
},
266
},
267
},
268
wantErrors: map[string]error{},
269
},
270
}
271
272
for _, tt := range testcases {
273
t.Run(tt.name, func(t *testing.T) {
274
scanner := remote.NewGoogleSearchScanner()
275
lib := remote.NewLibrary(filter.NewEngine())
276
lib.AddScanner(scanner)
277
278
if scanner.DryRun(*tt.number, remote.ScannerOptions{}) != nil {
279
t.Fatal("DryRun() should return nil")
280
}
281
282
got, errs := lib.Scan(tt.number, remote.ScannerOptions{})
283
if len(tt.wantErrors) > 0 {
284
assert.Equal(t, tt.wantErrors, errs)
285
} else {
286
assert.Len(t, errs, 0)
287
}
288
assert.Equal(t, tt.expected, got)
289
})
290
}
291
}
292
293