.run(err => { if (err) throw err; let pkg = JSON.parse(readFile(this.cwd, 'my-app/package.json')); assert.propertyVal(pkg, 'name', 'my-app'); assert.propertyVal(pkg, 'version', '0.1.0'); assert.propertyVal(pkg, 'description', 'My new app!'); assert.propertyVal(pkg, 'license', 'MIT'); assert.deepProperty(pkg, 'dependencies.neon-cli'); let cargo = TOML.parse(readFile(this.cwd, 'my-app/native/Cargo.toml')); assert.deepPropertyVal(cargo, 'package.name', 'my-app'); assert.deepPropertyVal(cargo, 'package.version', '0.1.0'); assert.deepPropertyVal(cargo, 'package.license', 'MIT'); assert.deepPropertyVal(cargo, 'lib.name', 'my_app'); assert.deepProperty(cargo, 'dependencies.neon'); let indexjs = readFile(this.cwd, 'my-app/lib/index.js'); assert.include(indexjs, `require('../native')`); let librs = readFile(this.cwd, 'my-app/native/src/lib.rs'); assert.include(librs, `extern crate neon;`); done(); });
it("should update account name and revert it back", async () => { const { token } = store.state; const originalResp = await Account.getSingle({ token, settings: { url: process.env.API_URL }, }); if (!originalResp.ok) { throw new Error(originalResp.error.title); } if (!originalResp.value.data) { throw new Error("data field is null"); } const value = { name: { first: "Mike", last: "Wizowsky", }, }; const resp = await Account.update({ token, value, query: {}, settings: { url: process.env.API_URL }, }); if (!resp.ok) { throw new Error(resp.error.title); } assert.isTrue(resp.ok); assert.jsonSchema(resp.value.data, schema); assert.deepPropertyVal(resp.value.data, "name", { first: "Mike", last: "Wizowsky", }); const revertUpdate = { name: originalResp.value.data.name }; const revertResp = await Account.update({ token, query: {}, value: revertUpdate, settings: { url: process.env.API_URL }, }); if (!revertResp.ok) { throw new Error(revertResp.error.title); } assert.deepPropertyVal(revertResp.value.data, "name", revertUpdate.name); });
.run(err => { if (err) throw err; let pkg = JSON.parse(readFile(this.cwd, 'my-package/package.json')); assert.propertyVal(pkg, 'name', '@me/my-package'); let readme = readFile(this.cwd, 'my-package/README.md'); assert.match(readme, /@me\/my-package/); let cargo = TOML.parse(readFile(this.cwd, 'my-package/native/Cargo.toml')); assert.deepPropertyVal(cargo, 'package.name', 'my-package'); assert.deepPropertyVal(cargo, 'lib.name', 'my_package'); done(); });
.run(err => { if (err) throw err; let pkg = JSON.parse(readFile(this.cwd, 'my-app/package.json')); assert.propertyVal(pkg, 'description', 'Foo "bar"'); assert.deepPropertyVal(pkg, 'repository.url', 'http://www.example.com/foo.git?bar=%22baz%22'); assert.propertyVal(pkg, 'author', 'Foo "Bar" Baz <*****@*****.**>'); let cargo = TOML.parse(readFile(this.cwd, 'my-app/native/Cargo.toml')); assert.includeDeepMembers(cargo.package.authors, ['Foo "Bar" Baz <*****@*****.**>']) done(); });
it("should expand properties of types different from the root type", () => { const mapping = mhelper.createStructuredMapping("?post"); const queryContext = new queryAdapter.QueryContext(mapping, nestedSchema.getEntityType("Human"), { Head: {} }); const evaluator = new JsonResultBuilder(serviceUri); const idVar = mapping.getElementaryPropertyVariable("Id"); const hIdVar = mapping.getComplexProperty("Head").getElementaryPropertyVariable("Id"); const hEyeVar = mapping.getComplexProperty("Head").getElementaryPropertyVariable("EyeColor"); const responses = [{}]; const [response1] = responses; response1[idVar.substr(1)] = makeLiteral("1"); response1[hIdVar.substr(1)] = makeLiteral("2"); response1[hEyeVar.substr(1)] = makeLiteral("green"); const results = evaluator.run(responses, queryContext); assert.deepPropertyVal(results[0], "Id", "1"); assert.deepPropertyVal(results[0], "Head.Id", "2"); assert.deepPropertyVal(results[0], "Head.EyeColor", "green"); });
it("should set unbound elementary properties to null", function () { /* @todo should this only apply to optional props? */ let mapping = mhelper.createStructuredMapping("?post"); let queryContext = new queryAdapter.QueryContext(mapping, schema.getEntityType("Post"), {}); let evaluator = new JsonResultBuilder(serviceUri); let idVar = mapping.getElementaryPropertyVariable("Id"); let cidVar = mapping.getComplexProperty("Content").getElementaryPropertyVariable("Id"); let response = {}; response[idVar.substr(1)] = makeLiteral("1"); response[cidVar.substr(1)] = makeLiteral("2"); let results = evaluator.run([response], queryContext); assert.strictEqual(results.length, 1); assert.deepPropertyVal(results[0], "ParentId", null); });
it('should set metadata to the node', () => { assert.deepPropertyVal(node, 'metadata', expectedMetadata); });