Пример #1
0
  it("IsUsable", () => {
    let ia = new IfAddrs();
    ia.addAddr(IPAddress.parse("10.1.0.1/24"));
    assert.isNotNull(ia.addAddr(IPAddress.parse("10.2.0.1/24")), "ia.addAddr failed");
    assert.isNull(ia.addAddr(IPAddress.parse("256.2.0.1/24")), "ia.addAddr failed");
    assert.isNotNull(ia.addRoute(RouteVia.parse(IPAddress.parse("172.16.0.1/24"), 
      IPAddress.parse("172.16.0.254"))));

    assert.isNull(ia.addDest(IPAddress.parse("172.316.0.1/24")));
    assert.isNotNull(ia.addDest(IPAddress.parse("172.16.0.1/24"))); 

    assert.isNotNull(ia.addRoute(RouteVia.parse(IPAddress.parse("172.17.0.1/24"), 
      IPAddress.parse("172.17.0.254"))), "ia.addRoute 1 failed");
    assert.isNull(ia.addRoute(RouteVia.parse(IPAddress.parse("300.17.0.1/24"), 
      IPAddress.parse("172.17.0.254"))), "ia.addRoute 2 failed");
    assert.isNull(ia.addRoute(RouteVia.parse(IPAddress.parse("300.17.0.1/24"), 
      IPAddress.parse("172.17.0.254/23"))), "ia.addRoute 3 failed"); 
    assert.isNull(ia.addRoute(RouteVia.parse(IPAddress.parse("300.17.0.1/24"), 
      IPAddress.parse("172.17.0.354"))), "ia.addRoute 4 failed");
    let ret = ia.asCommands("DEV");
    let ref = ["ip addr add 10.1.0.1/24 dev DEV",
               "ip addr add 10.2.0.1/24 dev DEV",
               "ip route add 172.16.0.1/24 via 172.16.0.254 dev DEV",
               "ip route add 172.17.0.1/24 via 172.17.0.254 dev DEV",
               "ip link set dev DEV mtu 1360 up"].join("\n");
    assert.equal(ret, ref, "wrong string");           
    let objIa = JSON.stringify(ia.asJson());
    let other = JSON.parse(objIa);
    let otherIa = IfAddrs.fromJson(other);
    // console.log("other:", other);
    // console.log("otherIa:", otherIa);
    assert.equal(objIa, JSON.stringify(otherIa.asJson()));
  });
Пример #2
0
    it('should return null if any encoding property is a wildcard', () => {
      let specQ: SpecQuery = {
        mark: 'bar',
        encodings: [
          {channel: '?', field: 'Q', type: Type.QUANTITATIVE},
          {channel: Channel.Y, field: 'N', type: Type.NOMINAL},
          {channel: Channel.COLOR, field: 'N1', type: Type.NOMINAL},
        ],
      };
      assert.isNull(getVlStack(specQ));

      specQ = {
        mark: 'bar',
        encodings: [
          {channel: Channel.X, field: 'Q', type: Type.QUANTITATIVE},
          {channel: Channel.Y, field: '?', type: Type.NOMINAL},
          {channel: Channel.COLOR, field: 'N1', type: Type.NOMINAL},
        ],
      };
      assert.isNull(getVlStack(specQ));

      specQ = {
        mark: 'bar',
        encodings: [
          {channel: Channel.X, field: 'Q', type: Type.QUANTITATIVE},
          {channel: Channel.Y, field: 'N', type: Type.NOMINAL},
          {channel: Channel.COLOR, field: 'N1', type: '?'},
        ],
      };
      assert.isNull(getVlStack(specQ));
    });
Пример #3
0
 return Promise.all([p, p2]).then(() => {
   assert.lengthOf(fetchMock.calls(`${api.API_PREFIX}/uidata`), 1);
   assert.lengthOf(_.keys(state), 2);
   assert.equal(state[uiKey1].data, uiObj1);
   assert.equal(state[uiKey2].data, uiObj2);
   assert.isNull(state[uiKey1].error);
   assert.isNull(state[uiKey2].error);
   assert.equal(state[uiKey1].state, uidata.UIDataState.VALID);
   assert.equal(state[uiKey2].state, uidata.UIDataState.VALID);
 });
Пример #4
0
 return Promise.all([p, p2]).then(() => {
   assert.lengthOf(fetchMock.calls(expectedURL), 1);
   assert.lengthOf(_.keys(state), 2);
   assert.deepEqual(state[uiKey1].data, uiObj1);
   assert.deepEqual(state[uiKey2].data, uiObj2);
   assert.isNull(state[uiKey1].error);
   assert.isNull(state[uiKey2].error);
   assert.equal(state[uiKey1].state, uidata.UIDataState.VALID);
   assert.equal(state[uiKey2].state, uidata.UIDataState.VALID);
 });
Пример #5
0
 it('delete', async ()=>{
     const data = new Data(/*Memdown*/);
     const users = data.users.async;
     let admin = await users.get('admin').catch(e=> null);        
     assert.isNull(admin);
     await users.put({ name: 'admin'});
     admin = await users.get('admin').catch(e=> null);
     await data.users.async.del(admin);
     admin = await users.get('admin').catch(e=> null);
     assert.isNull(admin);
 })
Пример #6
0
 return p.then(() => {
   assert.lengthOf(fetchMock.calls(expectedURL), 1);
   assert.lengthOf(_.keys(state.data), 1);
   assert.deepEqual(state.data[missingKey], undefined);
   assert.isNull(state.error);
   assert.equal(state.inFlight, 0);
 });
Пример #7
0
 it("should correctly dispatch receiveDatabaseList", function () {
   let dbList = { databases: [] as string[] };
   state = reducer(state, databases.receiveDatabaseList(dbList));
   assert.isFalse(state.inFlight);
   assert.isNull(state.lastError);
   assert.deepEqual(state.databaseList, dbList);
 });
  it('AVRole#save', function (done) {
    try {
      // 示例代码-Start
      // 新建一个角色,并把为当前用户赋予该角色
      let roleAcl = new AV.ACL();
      roleAcl.setPublicReadAccess(true);
      roleAcl.setPublicWriteAccess(false);

      // 当前用户是该角色的创建者,因此具备对该角色的写权限
      roleAcl.setWriteAccess(AV.User.current(), true);

      administratorRole = new AV.Role(randomRolename, roleAcl);//新建角色
      administratorRole.save<AV.Role>().then((role) => {
        // 创建成功
        chai.assert.isNotNull(role.id);
        done();
      }, error => {
        if (error) throw error;
      });//保存
      // 示例代码-End
    }
    catch (e) {
      chai.assert.isNull(e);
    }
  });
		it("should return the error when some error is thrown", async () => {
			const error = "some error";
			mockData({isVirtualBoxInstalled: true, spawnOutput: { stdout: null, stderr: error }});
			const output = await virtualBoxService.enumerateGuestProperties("testId");
			assert.isNull(output.properties);
			assert.deepEqual(output.error, error);
		});
Пример #10
0
 onEnd: ({status, statusMessage, headers, message, trailers}) => {
   DEBUG && debug("status", status, "statusMessage", statusMessage, "headers", headers, "res", message, "trailers", trailers);
   assert.strictEqual(statusMessage, "Response closed without headers");
   assert.strictEqual(status, grpc.Code.Unknown);
   assert.isNull(message);
   done();
 }