-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathrankfile.test.js
42 lines (31 loc) · 1.64 KB
/
rankfile.test.js
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
var Rankfile = require('./rankfile');
const FIRST_URL = 'https://www.proxyrack.com/blog/puppeteer-waitforselector/';
const PRIMARY_KEYWORD_0 = 'puppeteer waitforselector';
const SECONDARY_KEYWORD_0 = 'puppeteer waitforselector a guide';
const SECOND_URL = 'https://csuitecontent.com/a-complete-guide-to-ghostwriting-for-a-ceo/';
const PRIMARY_KEYWORD_1 = 'a complete guide to ghostwriting for the ceo';
const SECONDARY_KEYWORD_1 = 'ceo ghostwriting';
const RANKFILE_CONTENTS =
`${FIRST_URL},${PRIMARY_KEYWORD_0},${SECONDARY_KEYWORD_0}
${SECOND_URL},${PRIMARY_KEYWORD_1},${SECONDARY_KEYWORD_1}
`;
const SINGLE_KEYWORD_RANKFILE_CONTENTS = `https://www.splunk.com/en_us/blog/learn/network-configuration.html,network configuration
https://www.splunk.com/en_us/blog/learn/it-operations-itops.html,it operations`;
test('Returns URL for URL', () => {
expect(new Rankfile(RANKFILE_CONTENTS).getUrl(0)).toEqual(FIRST_URL);
})
test('Returns keyword for first keyword', () => {
expect(new Rankfile(RANKFILE_CONTENTS).getKeyword(0,0)).toEqual(PRIMARY_KEYWORD_0);
})
test('Returns keyword for second keyword', () => {
expect(new Rankfile(RANKFILE_CONTENTS).getKeyword(0,1)).toEqual(SECONDARY_KEYWORD_0);
})
test('Returns proper URL for second line', () => {
expect(new Rankfile(RANKFILE_CONTENTS).getUrl(1)).toEqual(SECOND_URL);
})
test('Returns keyword for second keyword on second line', () => {
expect(new Rankfile(RANKFILE_CONTENTS).getKeyword(1,1)).toEqual(SECONDARY_KEYWORD_1);
})
test('Returns keyword for second keyword on second line', () => {
expect(new Rankfile(SINGLE_KEYWORD_RANKFILE_CONTENTS).getKeyword(0,0)).toEqual('network configuration');
})