Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
nexpie-grafana-theme
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Registry
Registry
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Kornkitt Poolsup
nexpie-grafana-theme
Commits
3c6a06a3
Commit
3c6a06a3
authored
Oct 01, 2015
by
Torkel Ödegaard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat(cloudwatch): moved specs into plugins dir
parent
057b533a
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
161 additions
and
152 deletions
+161
-152
public/app/plugins/datasource/cloudwatch/specs/datasource_specs.ts
+143
-144
tasks/options/watch.js
+18
-8
No files found.
public/
test/specs/cloudwatch-datasource-specs.j
s
→
public/
app/plugins/datasource/cloudwatch/specs/datasource_specs.t
s
View file @
3c6a06a3
define
([
'./helpers'
,
'app/plugins/datasource/cloudwatch/datasource'
,
'aws-sdk'
,
],
function
(
helpers
)
{
'use strict'
;
describe
(
'CloudWatchDatasource'
,
function
()
{
var
ctx
=
new
helpers
.
ServiceTestContext
();
beforeEach
(
module
(
'grafana.services'
));
beforeEach
(
module
(
'grafana.controllers'
));
beforeEach
(
ctx
.
providePhase
([
'templateSrv'
]));
beforeEach
(
ctx
.
createService
(
'CloudWatchDatasource'
));
beforeEach
(
function
()
{
ctx
.
ds
=
new
ctx
.
service
({
jsonData
:
{
defaultRegion
:
'us-east-1'
,
access
:
'proxy'
}
});
///<amd-dependency path="app/plugins/datasource/cloudwatch/datasource" />
///<amd-dependency path="test/specs/helpers" name="helpers" />
import
{
describe
,
beforeEach
,
it
,
sinon
,
expect
,
angularMocks
}
from
'test/lib/common'
;
declare
var
helpers
:
any
;
describe
(
'CloudWatchDatasource'
,
function
()
{
var
ctx
=
new
helpers
.
ServiceTestContext
();
beforeEach
(
angularMocks
.
module
(
'grafana.services'
));
beforeEach
(
angularMocks
.
module
(
'grafana.controllers'
));
beforeEach
(
ctx
.
providePhase
([
'templateSrv'
]));
beforeEach
(
ctx
.
createService
(
'CloudWatchDatasource'
));
beforeEach
(
function
()
{
ctx
.
ds
=
new
ctx
.
service
({
jsonData
:
{
defaultRegion
:
'us-east-1'
,
access
:
'proxy'
}
});
});
describe
(
'When performing CloudWatch query'
,
function
()
{
var
requestParams
;
var
query
=
{
range
:
{
from
:
'now-1h'
,
to
:
'now'
},
targets
:
[
{
region
:
'us-east-1'
,
namespace
:
'AWS/EC2'
,
metricName
:
'CPUUtilization'
,
dimensions
:
{
InstanceId
:
'i-12345678'
},
statistics
:
{
Average
:
true
},
period
:
300
}
]
};
describe
(
'When performing CloudWatch query'
,
function
()
{
var
requestParams
;
var
query
=
{
range
:
{
from
:
'now-1h'
,
to
:
'now'
},
targets
:
[
{
region
:
'us-east-1'
,
namespace
:
'AWS/EC2'
,
metricName
:
'CPUUtilization'
,
dimensions
:
{
InstanceId
:
'i-12345678'
},
statistics
:
{
Average
:
true
},
period
:
300
}
]
};
var
response
=
{
Datapoints
:
[
{
Average
:
1
,
Timestamp
:
'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)'
}
],
Label
:
'CPUUtilization'
};
var
response
=
{
Datapoints
:
[
{
Average
:
1
,
Timestamp
:
'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)'
beforeEach
(
function
()
{
ctx
.
ds
.
getAwsClient
=
function
()
{
return
{
getMetricStatistics
:
function
(
params
,
callback
)
{
requestParams
=
params
;
callback
(
null
,
response
);
}
],
Label
:
'CPUUtilization'
};
beforeEach
(
function
()
{
ctx
.
ds
.
getAwsClient
=
function
()
{
return
{
getMetricStatistics
:
function
(
params
,
callback
)
{
requestParams
=
params
;
callback
(
null
,
response
);
}
};
};
});
};
});
it
(
'should generate the correct query'
,
function
(
done
)
{
ctx
.
ds
.
query
(
query
).
then
(
function
()
{
expect
(
requestParams
.
Namespace
).
to
.
be
(
query
.
targets
[
0
].
namespace
);
expect
(
requestParams
.
MetricName
).
to
.
be
(
query
.
targets
[
0
].
metricName
);
expect
(
requestParams
.
Dimensions
[
0
].
Name
).
to
.
be
(
Object
.
keys
(
query
.
targets
[
0
].
dimensions
)[
0
]);
expect
(
requestParams
.
Dimensions
[
0
].
Value
).
to
.
be
(
query
.
targets
[
0
].
dimensions
[
Object
.
keys
(
query
.
targets
[
0
].
dimensions
)[
0
]]);
expect
(
requestParams
.
Statistics
).
to
.
eql
(
Object
.
keys
(
query
.
targets
[
0
].
statistics
));
expect
(
requestParams
.
Period
).
to
.
be
(
query
.
targets
[
0
].
period
);
done
();
});
ctx
.
$rootScope
.
$apply
();
it
(
'should generate the correct query'
,
function
(
done
)
{
ctx
.
ds
.
query
(
query
).
then
(
function
()
{
expect
(
requestParams
.
Namespace
).
to
.
be
(
query
.
targets
[
0
].
namespace
);
expect
(
requestParams
.
MetricName
).
to
.
be
(
query
.
targets
[
0
].
metricName
);
expect
(
requestParams
.
Dimensions
[
0
].
Name
).
to
.
be
(
Object
.
keys
(
query
.
targets
[
0
].
dimensions
)[
0
]);
expect
(
requestParams
.
Dimensions
[
0
].
Value
).
to
.
be
(
query
.
targets
[
0
].
dimensions
[
Object
.
keys
(
query
.
targets
[
0
].
dimensions
)[
0
]]);
expect
(
requestParams
.
Statistics
).
to
.
eql
(
Object
.
keys
(
query
.
targets
[
0
].
statistics
));
expect
(
requestParams
.
Period
).
to
.
be
(
query
.
targets
[
0
].
period
);
done
();
});
ctx
.
$rootScope
.
$apply
();
});
it
(
'should return series list'
,
function
(
done
)
{
ctx
.
ds
.
query
(
query
).
then
(
function
(
result
)
{
var
s
=
Object
.
keys
(
query
.
targets
[
0
].
statistics
)[
0
];
expect
(
result
.
data
[
0
].
target
).
to
.
be
(
response
.
Label
+
'_'
+
s
+
JSON
.
stringify
(
query
.
targets
[
0
].
dimensions
));
expect
(
result
.
data
[
0
].
datapoints
[
0
][
0
]).
to
.
be
(
response
.
Datapoints
[
0
][
s
]);
done
();
});
ctx
.
$rootScope
.
$apply
();
it
(
'should return series list'
,
function
(
done
)
{
ctx
.
ds
.
query
(
query
).
then
(
function
(
result
)
{
var
s
=
Object
.
keys
(
query
.
targets
[
0
].
statistics
)[
0
];
expect
(
result
.
data
[
0
].
target
).
to
.
be
(
response
.
Label
+
'_'
+
s
+
JSON
.
stringify
(
query
.
targets
[
0
].
dimensions
));
expect
(
result
.
data
[
0
].
datapoints
[
0
][
0
]).
to
.
be
(
response
.
Datapoints
[
0
][
s
]);
done
();
});
ctx
.
$rootScope
.
$apply
();
});
});
describe
(
'When performing CloudWatch metricFindQuery'
,
function
()
{
var
requestParams
;
var
response
=
{
Metrics
:
[
{
Namespace
:
'AWS/EC2'
,
MetricName
:
'CPUUtilization'
,
Dimensions
:
[
{
Name
:
'InstanceId'
,
Value
:
'i-12345678'
}
]
}
]
};
beforeEach
(
function
()
{
ctx
.
ds
.
getAwsClient
=
function
()
{
return
{
listMetrics
:
function
(
params
,
callback
)
{
requestParams
=
params
;
callback
(
null
,
response
);
describe
(
'When performing CloudWatch metricFindQuery'
,
function
()
{
var
requestParams
;
var
response
=
{
Metrics
:
[
{
Namespace
:
'AWS/EC2'
,
MetricName
:
'CPUUtilization'
,
Dimensions
:
[
{
Name
:
'InstanceId'
,
Value
:
'i-12345678'
}
};
]
}
]
};
beforeEach
(
function
()
{
ctx
.
ds
.
getAwsClient
=
function
()
{
return
{
listMetrics
:
function
(
params
,
callback
)
{
requestParams
=
params
;
callback
(
null
,
response
);
}
};
});
};
});
it
(
'should return suggest list for region()'
,
function
(
done
)
{
var
query
=
'region()'
;
ctx
.
ds
.
metricFindQuery
(
query
).
then
(
function
(
result
)
{
result
=
result
.
map
(
function
(
v
)
{
return
v
.
text
;
});
expect
(
result
).
to
.
contain
(
'us-east-1'
);
done
();
});
ctx
.
$rootScope
.
$apply
();
it
(
'should return suggest list for region()'
,
function
(
done
)
{
var
query
=
'region()'
;
ctx
.
ds
.
metricFindQuery
(
query
).
then
(
function
(
result
)
{
result
=
result
.
map
(
function
(
v
)
{
return
v
.
text
;
});
expect
(
result
).
to
.
contain
(
'us-east-1'
);
done
();
});
ctx
.
$rootScope
.
$apply
();
});
it
(
'should return suggest list for namespace()'
,
function
(
done
)
{
var
query
=
'namespace()'
;
ctx
.
ds
.
metricFindQuery
(
query
).
then
(
function
(
result
)
{
result
=
result
.
map
(
function
(
v
)
{
return
v
.
text
;
});
expect
(
result
).
to
.
contain
(
'AWS/EC2'
);
done
();
});
ctx
.
$rootScope
.
$apply
();
it
(
'should return suggest list for namespace()'
,
function
(
done
)
{
var
query
=
'namespace()'
;
ctx
.
ds
.
metricFindQuery
(
query
).
then
(
function
(
result
)
{
result
=
result
.
map
(
function
(
v
)
{
return
v
.
text
;
});
expect
(
result
).
to
.
contain
(
'AWS/EC2'
);
done
();
});
ctx
.
$rootScope
.
$apply
();
});
it
(
'should return suggest list for metrics()'
,
function
(
done
)
{
var
query
=
'metrics(AWS/EC2)'
;
ctx
.
ds
.
metricFindQuery
(
query
).
then
(
function
(
result
)
{
result
=
result
.
map
(
function
(
v
)
{
return
v
.
text
;
});
expect
(
result
).
to
.
contain
(
'CPUUtilization'
);
done
();
});
ctx
.
$rootScope
.
$apply
();
it
(
'should return suggest list for metrics()'
,
function
(
done
)
{
var
query
=
'metrics(AWS/EC2)'
;
ctx
.
ds
.
metricFindQuery
(
query
).
then
(
function
(
result
)
{
result
=
result
.
map
(
function
(
v
)
{
return
v
.
text
;
});
expect
(
result
).
to
.
contain
(
'CPUUtilization'
);
done
();
});
ctx
.
$rootScope
.
$apply
();
});
it
(
'should return suggest list for dimension_keys()'
,
function
(
done
)
{
var
query
=
'dimension_keys(AWS/EC2)'
;
ctx
.
ds
.
metricFindQuery
(
query
).
then
(
function
(
result
)
{
result
=
result
.
map
(
function
(
v
)
{
return
v
.
text
;
});
expect
(
result
).
to
.
contain
(
'InstanceId'
);
done
();
});
ctx
.
$rootScope
.
$apply
();
it
(
'should return suggest list for dimension_keys()'
,
function
(
done
)
{
var
query
=
'dimension_keys(AWS/EC2)'
;
ctx
.
ds
.
metricFindQuery
(
query
).
then
(
function
(
result
)
{
result
=
result
.
map
(
function
(
v
)
{
return
v
.
text
;
});
expect
(
result
).
to
.
contain
(
'InstanceId'
);
done
();
});
ctx
.
$rootScope
.
$apply
();
});
it
(
'should return suggest list for dimension_values()'
,
function
(
done
)
{
var
query
=
'dimension_values(us-east-1,AWS/EC2,CPUUtilization)'
;
ctx
.
ds
.
metricFindQuery
(
query
).
then
(
function
(
result
)
{
result
=
result
.
map
(
function
(
v
)
{
return
v
.
text
;
});
expect
(
result
).
to
.
eql
([
'InstanceId=i-12345678'
]);
done
();
});
ctx
.
$rootScope
.
$apply
();
it
(
'should return suggest list for dimension_values()'
,
function
(
done
)
{
var
query
=
'dimension_values(us-east-1,AWS/EC2,CPUUtilization)'
;
ctx
.
ds
.
metricFindQuery
(
query
).
then
(
function
(
result
)
{
result
=
result
.
map
(
function
(
v
)
{
return
v
.
text
;
});
expect
(
result
).
to
.
eql
([
'InstanceId=i-12345678'
]);
done
();
});
ctx
.
$rootScope
.
$apply
();
});
});
});
tasks/options/watch.js
View file @
3c6a06a3
module
.
exports
=
function
(
config
)
{
'use strict'
;
return
{
css
:
{
files
:
[
'<%= srcDir %>/less/**/*.less'
],
...
...
@@ -10,19 +12,27 @@ module.exports = function(config) {
copy_to_gen
:
{
files
:
[
'<%= srcDir %>/**/*'
,
'!<%= srcDir %>/**/*.less'
],
tasks
:
[
'copy:public_to_gen'
],
tasks
:
[
'jshint'
,
'jscs'
,
'tslint'
,
'clean:gen'
,
'copy:public_to_gen'
,
'typescript:build'
,
'karma:test'
],
options
:
{
spawn
:
false
}
},
typescript
:
{
files
:
[
'<%= srcDir %>/app/**/*.ts'
,
'<%= srcDir %>/test/**/
*.ts'
],
tasks
:
[
'tslint'
,
'typescript:build'
],
options
:
{
spawn
:
false
}
}
//
typescript: {
// files: ['<%= srcDir %>/app#<{(||)}>#*.ts', '<%= srcDir %>/test#<{(||)}>#
*.ts'],
//
tasks: ['tslint', 'typescript:build'],
//
options: {
//
spawn: false
//
}
//
}
};
};
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment