Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

String cutoff error, prevents passing test

未关闭
#196 8 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
20/100
Issue 类型
缺陷
描述清晰度
需要澄清
活跃度
停滞
领域
testing

调研方向

阅读 tests/tests.js 中的 testWhile,并运行报告的测试以重现失败。将两个 deparse 调用与显示的预期字符串和实际字符串进行比较;完成意味着确定原因,并通过一个通过的测试确认针对性的修复。

由索引模型根据 Issue 内容生成。

描述

I apologize if this a quite obvious mistake on my part, but I have been staring at this for an hour. I don't know how this could possibly be a bug on your end, but it's worth a try.

The following test does not pass:

exports.testWhile = function(test){
   test.expect(1);

   var input = parseSingleStat("while(foo() < 1){bar();}");
   var output = parse("var __t0 = foo(); while(__t0 < 1){bar(); var __t0 = foo(); }");

   test.equal(deparse(output), deparse(tacifyFunctions.tacifyWhile(input)));

   test.done();

 }

The following test passes:

exports.testWhile = function(test){
   test.expect(1);

   var input = parseSingleStat("while(foo() < 1){bar();}");
   var output = parse("var __t0 = foo(); while(__t0 < 1){bar(); var __t0 = foo(); }");
   var e = deparse(output);
   var o = deparse(tacifyFunctions.tacifyWhile(input));

   test.equal(e, o);

   test.done();

 }

deparse returns a string. In the former case deparse(tacifyFunctions.tacifyWhile(input)) is returning a string

Here is output from the test

tests
✔ testNested
✖ testWhile

AssertionError: 'var __t0 = foo();\n\nwhile (__t0 < 1) {\n bar();\n var __t0 = foo();\n}' == 'while (__t0 < 1) {\n bar();\n var __t0 = foo();\n}'
at Object.assertWrapper as equal
at Object.exports.testWhile (/home/satshabad/CS/CS585/jaspect/tests/tests.js:53:8)
at Object.wrapTest (/usr/lib/node_modules/nodeunit/lib/core.js:235:16)
at wrapTest (/usr/lib/node_modules/nodeunit/lib/core.js:235:16)
at Object.exports.runTest (/usr/lib/node_modules/nodeunit/lib/core.js:69:9)
at exports.runSuite (/usr/lib/node_modules/nodeunit/lib/core.js:117:25)
at _concat (/usr/lib/node_modules/nodeunit/deps/async.js:508:13)
at async.forEachSeries.iterate (/usr/lib/node_modules/nodeunit/deps/async.js:118:13)
at async.forEachSeries.iterate (/usr/lib/node_modules/nodeunit/deps/async.js:129:25)
at _concat (/usr/lib/node_modules/nodeunit/deps/async.js:510:17)

FAILURES: 1/5 assertions failed (38ms)

I would appreciate any insight.

主要语言
JavaScript
星标
1.9k
派生
359
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

caolan/nodeunit 的其他 Issue

查看 caolan/nodeunit 的全部 Issue

相似的 Issue

更多 JavaScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。