提交 00c8dfcd 编写于 作者: M Marcin Maciaszczyk 提交者: GitHub

Redirect to overview after successful deployment (#2487)

* Redirect to overview after successful deployment

* Fix tests

* Redirect to correct namespace
上级 b870eea4
......@@ -23,6 +23,7 @@ import showDeployAnywayDialog from './deployanyway_dialog';
class DeployFromFileController {
/**
* @param {!angular.$log} $log
* @param {!ui.router.$state} $state
* @param {!angular.$resource} $resource
* @param {!angular.$q} $q
* TODO (cheld) Set correct type after fixing issue #159
......@@ -36,7 +37,7 @@ class DeployFromFileController {
* @ngInject
*/
constructor(
$log, $resource, $q, errorDialog, kdHistoryService, $mdDialog, kdCsrfTokenService,
$log, $state, $resource, $q, errorDialog, kdHistoryService, $mdDialog, kdCsrfTokenService,
$stateParams, localizerService, kdCsrfTokenHeader) {
/**
* Initialized the template.
......@@ -60,6 +61,9 @@ class DeployFromFileController {
/** @private {!angular.$log} */
this.log_ = $log;
/** @private {!ui.router.$state} */
this.state_ = $state;
/**
* TODO (cheld) Set correct type after fixing issue #159
* @private {!Object}
......@@ -123,7 +127,7 @@ class DeployFromFileController {
if (response.error.length > 0) {
this.errorDialog_.open('Deployment has been partly completed', response.error);
}
this.kdHistoryService_.back(overview);
this.state_.go(overview);
},
(err) => {
defer.reject(err); // Progress ends
......
......@@ -12,7 +12,9 @@
// See the License for the specific language governing permissions and
// limitations under the License.
import {namespaceParam} from '../chrome/state';
import {stateName as overview} from '../overview/state';
import showNamespaceDialog from './createnamespace_dialog';
import showCreateSecretDialog from './createsecret_dialog';
import DeployLabel from './deploylabel';
......@@ -29,6 +31,7 @@ const APP_LABEL_KEY = 'app';
export default class DeployFromSettingsController {
/**
* @param {!angular.$log} $log
* @param {!ui.router.$state} $state
* @param {!angular.$resource} $resource
* @param {!angular.$q} $q
* @param {!md.$dialog} $mdDialog
......@@ -39,8 +42,8 @@ export default class DeployFromSettingsController {
* @ngInject
*/
constructor(
$log, $resource, $q, $mdDialog, kdHistoryService, kdNamespaceService, kdCsrfTokenService,
kdCsrfTokenHeader) {
$log, $state, $resource, $q, $mdDialog, kdHistoryService, kdNamespaceService,
kdCsrfTokenService, kdCsrfTokenHeader) {
/**
* Initialized from the template.
* @export {!angular.FormController}
......@@ -146,6 +149,9 @@ export default class DeployFromSettingsController {
/** @private {!angular.$log} */
this.log_ = $log;
/** @private {!ui.router.$state} */
this.state_ = $state;
/** @private {!md.$dialog} */
this.mdDialog_ = $mdDialog;
......@@ -253,7 +259,7 @@ export default class DeployFromSettingsController {
(savedConfig) => {
defer.resolve(savedConfig); // Progress ends
this.log_.info('Successfully deployed application: ', savedConfig);
this.cancel();
this.state_.go(overview, {[namespaceParam]: appDeploymentSpec.namespace});
},
(err) => {
defer.reject(err); // Progress ends
......
......@@ -82,7 +82,7 @@ describe('DeployFromFile controller', () => {
it('should open error dialog and redirect the page', () => {
spyOn(ctrl.errorDialog_, 'open');
spyOn(ctrl.kdHistoryService_, 'back');
spyOn(ctrl.state_, 'go');
let response = {
name: 'foo-name',
content: 'foo-content',
......@@ -99,12 +99,12 @@ describe('DeployFromFile controller', () => {
// then
expect(ctrl.errorDialog_.open).toHaveBeenCalled();
expect(ctrl.kdHistoryService_.back).toHaveBeenCalled();
expect(ctrl.state_.go).toHaveBeenCalled();
});
it('should redirect the page and not open error dialog', () => {
spyOn(ctrl.errorDialog_, 'open');
spyOn(ctrl.kdHistoryService_, 'back');
spyOn(ctrl.state_, 'go');
mockResource.and.callFake(resource);
let response = {
name: 'foo-name',
......@@ -118,7 +118,7 @@ describe('DeployFromFile controller', () => {
// then
expect(ctrl.errorDialog_.open).not.toHaveBeenCalled();
expect(ctrl.kdHistoryService_.back).toHaveBeenCalled();
expect(ctrl.state_.go).toHaveBeenCalled();
});
it('should not redirect the page and but open error dialog', (doneFn) => {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册