aboutsummaryrefslogtreecommitdiffstats
path: root/sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterStateSpec.js
diff options
context:
space:
mode:
Diffstat (limited to 'sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterStateSpec.js')
-rw-r--r--sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterStateSpec.js64
1 files changed, 64 insertions, 0 deletions
diff --git a/sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterStateSpec.js b/sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterStateSpec.js
new file mode 100644
index 000000000..b91237c6e
--- /dev/null
+++ b/sdnr/wt/devicemanager/provider/src/test/resources/elasticsearch/plugins/head/src/app/services/clusterState/clusterStateSpec.js
@@ -0,0 +1,64 @@
+describe("app.services.ClusterState", function() {
+
+ var ClusterState = window.app.services.ClusterState;
+ var test = window.test;
+
+ var c;
+ var dummyData = {};
+ var dataEventCallback;
+
+ function expectAllDataToBeNull() {
+ expect( c.clusterState ).toBe( null );
+ expect( c.status ).toBe( null );
+ expect( c.nodeStats ).toBe( null );
+ expect( c.clusterNodes ).toBe( null );
+ }
+
+ beforeEach( function() {
+ test.cb.use();
+ dataEventCallback = jasmine.createSpy("onData");
+ c = new ClusterState({
+ cluster: {
+ get: test.cb.createSpy("get", 1, [ dummyData ] )
+ },
+ onData: dataEventCallback
+ });
+ });
+
+ describe( "when it is initialised", function() {
+
+ it("should have null data", function() {
+ expectAllDataToBeNull();
+ });
+
+ });
+
+ describe( "when refresh is called", function() {
+
+ beforeEach( function() {
+ c.refresh();
+ });
+
+ it("should not not update models until all network requests have completed", function() {
+ test.cb.execOne();
+ expectAllDataToBeNull();
+ test.cb.execOne();
+ expectAllDataToBeNull();
+ test.cb.execOne();
+ expectAllDataToBeNull();
+ test.cb.execOne();
+ expectAllDataToBeNull();
+ test.cb.execOne();
+ expect( c.clusterState ).toBe( dummyData );
+ expect( c.status ).toBe( dummyData );
+ expect( c.nodeStats ).toBe( dummyData );
+ expect( c.clusterNodes ).toBe( dummyData );
+ });
+
+ it("should fire a 'data' event when all data is ready", function() {
+ test.cb.execAll();
+ expect( dataEventCallback ).toHaveBeenCalledWith( c );
+ });
+ });
+
+});