18F / guides

18F’s guides equip 18F teams, our partners, other practitioners, lawmakers, and the public with tools and practices to improve public services. They affirm experiences, build confidence, and empower exceptional digital experiences.
https://guides.18f.gov
Other
35 stars 20 forks source link

🟢 fetch homework doesn't work with the provided files #332

Open edwintorres opened 3 years ago

edwintorres commented 3 years ago

The fetch assignment doesn't work with the provided files. The candidates need to changes the version of a dependency and add a new dependency just to start with the assignment. For example, a candidate I interviewed did not finish his assignment because he struggled to fix it. In the end, he submitted a pseudo-code. I was not sure how to evaluate him because fix the project was not part of the homework.

mark-meyer commented 3 years ago

Any idea which dependency is causing the issue? I was able to download the zip file and run:

(base) fetch % yarn install             
yarn install v1.22.10
[1/4] 🔍  Resolving packages...
[2/4] 🚚  Fetching packages...
[3/4] 🔗  Linking dependencies...
[4/4] 🔨  Building fresh packages...
✨  Done in 29.05s.

Then with some quick and dirty code do:

(base)  fetch % yarn test
yarn run v1.22.10
$ sh ./test/test.sh
Records API listening on port 3000!
Browserslist: caniuse-lite is outdated. Please run:
npx browserslist@latest --update-db
ℹ 「wdm」: Hash: b84017bab94ec4178914
Version: webpack 4.44.1
Time: 823ms
Built at: 03/28/2021 1:41:38 PM
                          Asset      Size                        Chunks             Chunk Names
                        main.js  1.12 MiB                          main  [emitted]  main
test/api/managed-record-test.js   349 KiB  test/api/managed-record-test  [emitted]  test/api/managed-record-test
Entrypoint main = main.js
Entrypoint test/api/managed-record-test = test/api/managed-record-test.js
[0] multi @babel/polyfill ./index.js 40 bytes {main}
[./api/managed-records.js] 4.98 KiB {main} {test/api/managed-record-test} [built]
[./index.js] 66 bytes {main} [built]
[./node_modules/@babel/polyfill/lib/index.js] 686 bytes {main} [built]
[./node_modules/@babel/polyfill/lib/noConflict.js] 567 bytes {main} [built]
[./node_modules/core-js/es6/index.js] 5.78 KiB {main} [built]
[./node_modules/core-js/fn/array/flat-map.js] 108 bytes {main} [built]
[./node_modules/core-js/library/fn/global.js] 87 bytes {main} [built]
[./node_modules/fetch-ponyfill/build/fetch-browser.js] 15.9 KiB {main} {test/api/managed-record-test} [built]
[./node_modules/urijs/src/IPv6.js] 4.32 KiB {main} {test/api/managed-record-test} [built]
[./node_modules/urijs/src/SecondLevelDomains.js] 11.8 KiB {main} {test/api/managed-record-test} [built]
[./node_modules/urijs/src/URI.js] 64.7 KiB {main} {test/api/managed-record-test} [built]
[./node_modules/urijs/src/punycode.js] 14.3 KiB {main} {test/api/managed-record-test} [built]
[./test/api/managed-record-test.js] 9.15 KiB {test/api/managed-record-test} [built]
[./util/fetch-fill.js] 136 bytes {main} {test/api/managed-record-test} [built]
    + 304 hidden modules
ℹ 「wdm」: Compiled successfully.
...........
PhantomJS 2.1.1 (Mac OS 0.0.0): Executed 11 of 11 SUCCESS (0.178 secs / 0.175 secs)
✨  Done in 6.29s.

This is on my personal mac with os 11.2.3 and node v12.18.3.

edwintorres commented 3 years ago

I'm going to test this again. Today's candidate told me he had no issues. When I did this exercise months ago I did have problems with the jasmine and karma version. I had to change it from "jasmine-core": "3.6.0" to "jasmine-core": "^2.4.1" and "karma": "5.1.1" to "karma": "^1.7.0". I was using a Windows machine.

hbillings commented 3 years ago

I think we've established now that this is a Windows-specific issue. Hoping to get at least some guidance for addressing this up on the hiring guide before our next round!