@@ -1142,6 +1142,37 @@ describe('setVersionName', function() {
11421142 } ) ;
11431143 } ) ;
11441144
1145+ describe ( 'logEvent with tracking options' , function ( ) {
1146+
1147+ var clock ;
1148+
1149+ beforeEach ( function ( ) {
1150+ clock = sinon . useFakeTimers ( ) ;
1151+ var trackingOptions = {
1152+ city : false ,
1153+ ip_address : false ,
1154+ language : false ,
1155+ platform : false ,
1156+ region : true
1157+ } ;
1158+ amplitude . init ( apiKey , null , { trackingOptions : trackingOptions } ) ;
1159+ } ) ;
1160+
1161+ afterEach ( function ( ) {
1162+ reset ( ) ;
1163+ clock . restore ( ) ;
1164+ } ) ;
1165+
1166+ it ( 'should not track language or platform' , function ( ) {
1167+ assert . equal ( amplitude . options . trackingOptions . language , false ) ;
1168+ amplitude . logEvent ( 'Event Type 1' ) ;
1169+ assert . lengthOf ( server . requests , 1 ) ;
1170+ var events = JSON . parse ( querystring . parse ( server . requests [ 0 ] . requestBody ) . e ) ;
1171+ assert . equal ( events [ 0 ] . language , null ) ;
1172+ assert . equal ( events [ 0 ] . platform , null ) ;
1173+ } ) ;
1174+ } ) ;
1175+
11451176 describe ( 'logEvent' , function ( ) {
11461177
11471178 var clock ;
@@ -1216,6 +1247,14 @@ describe('setVersionName', function() {
12161247 assert . isNotNull ( events [ 0 ] . language ) ;
12171248 } ) ;
12181249
1250+ it ( 'should send platform' , function ( ) {
1251+ amplitude . logEvent ( 'Event Should Send Platform' ) ;
1252+ assert . lengthOf ( server . requests , 1 ) ;
1253+ var events = JSON . parse ( querystring . parse ( server . requests [ 0 ] . requestBody ) . e ) ;
1254+ assert . equal ( events . length , 1 ) ;
1255+ assert . equal ( events [ 0 ] . platform , 'Web' ) ;
1256+ } ) ;
1257+
12191258 it ( 'should accept properties' , function ( ) {
12201259 amplitude . logEvent ( 'Event Type 5' , { prop : true } ) ;
12211260 assert . lengthOf ( server . requests , 1 ) ;
0 commit comments