當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript command-factory.CommandFactory類代碼示例

本文整理匯總了TypeScript中@dataservices/virtualization/view-editor/command/command-factory.CommandFactory的典型用法代碼示例。如果您正苦於以下問題:TypeScript CommandFactory類的具體用法?TypeScript CommandFactory怎麽用?TypeScript CommandFactory使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了CommandFactory類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: it

  it("RemoveSourcesCommand Test", () => {
    const conn1 = "conn1";
    const conn2 = "conn2";
    const path1 = "table=node1";
    const path2 = "table=node2";
    const node1 = SchemaNode.create( { connectionName: "conn1", path: path1 } );
    const node2 = SchemaNode.create( { connectionName: "conn2", path: path2 } );
    const temp = CommandFactory.createRemoveSourcesCommand( [ node1, node2 ], "ident" );
    expect( temp instanceof RemoveSourcesCommand ).toBe( true );

    const cmd = temp as RemoveSourcesCommand;
    expect( cmd.id ).toBe( RemoveSourcesCommand.id );
    expect( cmd.args ).not.toBeNull();
    expect( cmd.args.size ).toBe( 2 );

    const expectedSrcPaths = "connection=" + conn1 + "/" + path1 + ", connection=" + conn2 + "/" + path2;
    const expectedFull = expectedSrcPaths + ", ObjectId=ident";
    expect( cmd.getArg( RemoveSourcesCommand.removedSourcePaths ) ).toEqual( expectedSrcPaths );
    expect( cmd.toString() ).toEqual( "RemoveSourcesCommand, removedSourcePaths=" + expectedFull );
    expect( cmd.isUndoable() ).toBe( true );

    const json = cmd.toJSON();
    const tempRoundtrip = CommandFactory.decode( json );
    expect( tempRoundtrip instanceof RemoveSourcesCommand ).toBe( true );

    const roundtrip = tempRoundtrip as RemoveSourcesCommand;
    expect( roundtrip.id ).toBe( cmd.id );
    expect( roundtrip.args.size ).toBe( cmd.args.size );
    expect( roundtrip.getArg( RemoveSourcesCommand.removedSourcePaths ) ).toBe( cmd.getArg( RemoveSourcesCommand.removedSourcePaths ) );
  });
開發者ID:tejones,項目名稱:beetle-studio,代碼行數:30,代碼來源:command-factory.spec.ts

示例2: it

  it( "shouldConvertToJsonCorrectly" , () => {
    const undoMgr = new UndoManager();

    // add update name command
    let cmd = CommandFactory.createUpdateViewNameCommand( "newName", "oldName");
    let undoable = CommandFactory.createUndoable( cmd as Command ) ;
    undoMgr.add( undoable as Undoable );

    // add update description command
    cmd = CommandFactory.createUpdateViewDescriptionCommand( "newDescription", "oldDescription");
    undoable = CommandFactory.createUndoable( cmd as Command ) ;
    undoMgr.add( undoable as Undoable );

    // should include both undoables
    expect( undoMgr.toJSON() ).not.toBe( null );
    expect( undoMgr.toJSON()[ UndoManager.undoables ] ).not.toBe( null );
    expect( undoMgr.toJSON()[ UndoManager.undoables ] instanceof Array ).toBe( true );

    const undoables = undoMgr.toJSON()[ UndoManager.undoables ] as Array< any >;
    expect( undoables.length ).toBe( 2 );

    // move the pointer to the left
    undoMgr.popUndoCommand();
    expect( undoMgr.toArray().length).toBe( 1 );
    expect( undoMgr.toArray().length).toBe( 1 );
  } );
開發者ID:tejones,項目名稱:beetle-studio,代碼行數:26,代碼來源:undo-manager.spec.ts

示例3: it

  it("should create", () => {
    console.log( "========== [Undoable] should create" );
    result = CommandFactory.decodeUndoable(
      {
        "undo": {
          "id": "UpdateViewNameCommand",
          "args": { "oldName": "v", "newName": "" }
        },
        "redo": {
          "id": "UpdateViewNameCommand",
          "args": { "oldName": "b", "newName": "v" }
        }
      }
    );

    if ( result instanceof Undoable ) {
      const undoable = result as Undoable;
      expect( undoable.undoCommand.id ).toEqual( UpdateViewNameCommand.id );
      expect( undoable.redoCommand.id ).toEqual( UpdateViewNameCommand.id );
    } else {
      fail("Unable to create Undoable");
    }
  });
開發者ID:tejones,項目名稱:beetle-studio,代碼行數:23,代碼來源:undoable.spec.ts


注:本文中的@dataservices/virtualization/view-editor/command/command-factory.CommandFactory類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。