-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathagent-base.js
More file actions
62 lines (51 loc) · 2.07 KB
/
Copy pathagent-base.js
File metadata and controls
62 lines (51 loc) · 2.07 KB
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
'use strict'
process.env['STACKIFY_TEST'] = true
var expect = require('chai').expect;
var rewire = require('rewire');
var fs = require('fs');
var root_path = '../';
var agentBase = rewire(root_path + 'lib/transport/agent-base');
var agentBasePb = rewire(root_path + 'proto/stackify-agent_pb');
var logGroup = rewire(root_path + 'proto/LogGroup');
var logMessage = require(root_path + 'test/fixtures/log-message')
var messages = logMessage.getMessages;
var info = logMessage.getInfo;
var msg1 = messages[0].Msg;
var msg2 = messages[1].Msg;
describe('Agent Base', function() {
it('Test the LogGroup object', function(done) {
var log_group = new agentBasePb.LogGroup();
var log_group = logGroup.setLogGroup(log_group, info);
var bytes = log_group.serializeBinary();
// Deserialization
var msg = agentBasePb.LogGroup.deserializeBinary(bytes)
expect(msg.getApplicationName()).to.eq(info.AppName)
expect(msg.getServerName()).to.eq(info.ServerName)
expect(msg.getApplicationLocation()).to.eq(info.AppLoc)
expect(msg.getLogger()).to.eq(info.Logger)
expect(msg.getPlatform()).to.eq(info.Platform)
var logAry = [];
for(var i=0; i<messages.length; i++) {
logAry.push(agentBase.prototype.build_protobuf(messages[i]))
}
log_group.setLogsList(logAry);
expect(log_group.getLogsList().length).to.eq(messages.length)
done()
})
it('Protobuf message must be valid', function(done) {
var result = agentBase.prototype.build_message(messages);
var data = result.serializeBinary();
expect(msg1).to.eq(result['wrappers_']['7'][0].array[0])
expect(msg2).to.eq(result['wrappers_']['7'][1].array[0])
// deserialization
var deserialized = agentBasePb.LogGroup.deserializeBinary(Array.from(data));
expect(msg1).to.eq(deserialized['wrappers_']['7'][0].array[0])
expect(msg2).to.eq(deserialized['wrappers_']['7'][1].array[0])
done()
})
it('Size of the protobuf message must be 7', function(done) {
var result = agentBase.prototype.build_message(messages);
expect(result['array'].length).to.eq(7)
done()
})
});