Commit 20303158 authored by Caleb C. Sander's avatar Caleb C. Sander
Browse files

Initial commit

parents
Showing with 1075 additions and 0 deletions
+1075 -0
node_modules
# Project 4 - Wiki Game
## Spec
The spec for this project can be found at [wiki-game.md](https://gitlab.caltech.edu/cs11-async/documents/blob/master/specs/wiki-game/wiki-game.md).
## Testing infrastructure
Several tests are provided in `tests/test.js`.
They try your `find-path.js` on various inputs.
To run them, you need to run `npm install` once and then `npm test` each time you want to run the tests.
Since Wikipedia can be edited at any time, the expected paths may become outdated.
I computed the lists of possible paths on 2020-03-31, so hopefully this isn't an issue.
Please let me know if you think you've found a valid path that is failing a test case; I can update the tests.
{
"name": "@cs11-async/wiki-game",
"version": "1.0.0",
"description": "CS 11 Asynchronous Programming - Wiki Game",
"scripts": {
"test": "ava --verbose --timeout=10m tests/test.js"
},
"repository": {
"type": "git",
"url": "git@gitlab.caltech.edu:cs11-async/wiki-game.git"
},
"license": "MIT",
"devDependencies": {
"ava": "^3.5.0"
}
}
const {execFile} = require('child_process')
const {promisify} = require('util')
const test = require('ava')
process.chdir(__dirname)
const TESTS = [
// 0 links
{source: 'Wikipedia', target: 'Wikipedia', paths: [['Wikipedia']]},
// 1 link
{
source: 'California_Institute_of_Technology',
target: 'Massachusetts_Institute_of_Technology',
paths: [['California_Institute_of_Technology', 'Massachusetts_Institute_of_Technology']]
},
// 2 links
{
source: 'New_Hampshire',
target: 'Maple',
paths: [
['New_Hampshire', 'West_Virginia', 'Maple'],
['New_Hampshire', 'Montana', 'Maple'],
['New_Hampshire', 'Burlington_International_Airport', 'Maple'],
['New_Hampshire', 'Autumn_leaf_color', 'Maple'],
['New_Hampshire', 'Humid_continental_climate', 'Maple'],
['New_Hampshire', 'Quercus', 'Maple'],
['New_Hampshire', 'Temperate_broadleaf_and_mixed_forests', 'Maple'],
['New_Hampshire', 'Leaf_peeping', 'Maple'],
['New_Hampshire', 'Appalachian_Trail', 'Maple'],
['New_Hampshire', 'Shoemaking', 'Maple'],
['New_Hampshire', 'List_of_U.S._state_foods', 'Maple']
]
},
{
source: 'San_Andreas_Fault',
target: 'Mars',
paths: [
['San_Andreas_Fault', 'JPL', 'Mars'],
[
'San_Andreas_Fault',
'National_Aeronautics_and_Space_Administration',
'Mars'
],
['San_Andreas_Fault', 'Plate_tectonics', 'Mars'],
['San_Andreas_Fault', 'University_of_California,_Berkeley', 'Mars'],
['San_Andreas_Fault', 'Tectonic_movement', 'Mars']
]
},
{
source: 'Poseidon',
target: 'Ahura_Mazda',
paths: [
['Poseidon', 'Minos', 'Ahura_Mazda'],
['Poseidon', 'Theism', 'Ahura_Mazda'],
['Poseidon', 'Interpretatio_graeca', 'Ahura_Mazda'],
['Poseidon', 'Gnosticism', 'Ahura_Mazda'],
['Poseidon', 'Proto-Indo-European_mythology', 'Ahura_Mazda'],
['Poseidon', 'Iran', 'Ahura_Mazda'],
['Poseidon', 'Numina', 'Ahura_Mazda'],
['Poseidon', 'Uranus_(mythology)', 'Ahura_Mazda'],
['Poseidon', 'Pantheism', 'Ahura_Mazda'],
['Poseidon', 'Monism', 'Ahura_Mazda'],
['Poseidon', 'Polytheism', 'Ahura_Mazda'],
['Poseidon', 'Henosis', 'Ahura_Mazda']
]
},
// 3 links
{
source: 'Chapada',
target: 'Classical_Athens',
paths: [
['Chapada', 'Public_domain', 'Archimedes', 'Classical_Athens'],
['Chapada', 'Public_domain', 'Res_publica', 'Classical_Athens'],
[
'Chapada',
'Geographic_coordinate_system',
'Rhodes',
'Classical_Athens'
],
[
'Chapada',
'Geographic_coordinate_system',
'Against_the_Geography_of_Eratosthenes',
'Classical_Athens'
],
[
'Chapada',
'Geographic_coordinate_system',
'Cyrene,_Libya',
'Classical_Athens'
],
['Chapada', 'Geography', 'Parmenides', 'Classical_Athens'],
['Chapada', 'Geography', 'Hipparchus', 'Classical_Athens'],
['Chapada', 'Geography', 'Pythagoras', 'Classical_Athens'],
['Chapada', 'Geography', 'Greek_philosophy', 'Classical_Athens'],
['Chapada', 'Geography', 'Anaximander', 'Classical_Athens'],
['Chapada', 'Geography', 'Ptolemy', 'Classical_Athens'],
[
'Chapada',
'Geographic_coordinate_system',
'Ptolemy',
'Classical_Athens'
],
['Chapada', 'Geography', 'Anaxagoras', 'Classical_Athens'],
['Chapada', 'Geography', 'Thales_of_Miletus', 'Classical_Athens'],
[
'Chapada',
'Geography',
'Ancient_Greek_literature',
'Classical_Athens'
],
['Chapada', 'Topography', 'Ancient_Greek', 'Classical_Athens'],
['Chapada', 'Geography', 'Ancient_Greek', 'Classical_Athens'],
['Chapada', 'Topography', 'Ancient_Greece', 'Classical_Athens'],
['Chapada', 'Geography', 'Ancient_Greece', 'Classical_Athens']
]
},
{
source: 'National_University_of_Mongolia',
target: 'Mecca',
paths: [
['National_University_of_Mongolia', 'Blue', 'Guide_sign', 'Mecca'],
[
'National_University_of_Mongolia',
'Blue',
'Ark_of_the_Covenant',
'Mecca'
],
['National_University_of_Mongolia', 'Blue', 'Torah', 'Mecca'],
['National_University_of_Mongolia', 'Blue', 'Islamic', 'Mecca'],
['National_University_of_Mongolia', 'Blue', 'Somalia', 'Mecca'],
['National_University_of_Mongolia', 'Blue', 'Vasco_da_Gama', 'Mecca'],
[
'National_University_of_Mongolia',
'Blue',
'Catherine_the_Great',
'Mecca'
],
[
'National_University_of_Mongolia',
'Blue',
'First_World_War',
'Mecca'
],
['National_University_of_Mongolia', 'Blue', 'Mesopotamia', 'Mecca'],
['National_University_of_Mongolia', 'Blue', 'Muhammad', 'Mecca'],
[
'National_University_of_Mongolia',
'Blue',
'Topkapi_Palace',
'Mecca'
],
[
'National_University_of_Mongolia',
'Soviet_Union',
'Closed_city',
'Mecca'
],
[
'National_University_of_Mongolia',
'Soviet_Union',
'List_of_closed_cities',
'Mecca'
],
['National_University_of_Mongolia', 'Soviet_Union', 'Sunni', 'Mecca'],
[
'National_University_of_Mongolia',
'Soviet_Union',
'Shia_Islam',
'Mecca'
],
[
'National_University_of_Mongolia',
'Soviet_Union',
'Great_Socialist_People%27s_Libyan_Arab_Jamahiriya',
'Mecca'
],
[
'National_University_of_Mongolia',
'Soviet_Union',
'World_War_I',
'Mecca'
],
['National_University_of_Mongolia', 'Blue', 'World_War_I', 'Mecca'],
['National_University_of_Mongolia', 'Mongolia', 'Asia', 'Mecca'],
['National_University_of_Mongolia', 'Soviet_Union', 'Asia', 'Mecca'],
['National_University_of_Mongolia', 'Mongolia', 'Camel', 'Mecca'],
['National_University_of_Mongolia', 'Mongolia', 'Demonym', 'Mecca'],
[
'National_University_of_Mongolia',
'Soviet_Union',
'Demonym',
'Mecca'
],
['National_University_of_Mongolia', 'Mongolia', 'Islam', 'Mecca'],
['National_University_of_Mongolia', 'Soviet_Union', 'Islam', 'Mecca'],
[
'National_University_of_Mongolia',
'Mongolian_language',
'Aspiration_(phonetics)',
'Mecca'
],
['National_University_of_Mongolia', 'Doctorate', 'Madrasah', 'Mecca'],
[
'National_University_of_Mongolia',
'Doctorate',
'University_of_Oxford',
'Mecca'
],
['National_University_of_Mongolia', 'Ulaanbaatar', 'Riyadh', 'Mecca'],
['National_University_of_Mongolia', 'Ulaanbaatar', 'Cairo', 'Mecca'],
['National_University_of_Mongolia', 'Mongolia', 'Cairo', 'Mecca'],
[
'National_University_of_Mongolia',
'Ulaanbaatar',
'Damascus',
'Mecca'
],
['National_University_of_Mongolia', 'Ulaanbaatar', 'Yemen', 'Mecca'],
['National_University_of_Mongolia', 'Mongolia', 'Yemen', 'Mecca'],
[
'National_University_of_Mongolia',
'Ulaanbaatar',
'Bahrain',
'Mecca'
],
['National_University_of_Mongolia', 'Mongolia', 'Bahrain', 'Mecca'],
['National_University_of_Mongolia', 'Ulaanbaatar', 'Syria', 'Mecca'],
['National_University_of_Mongolia', 'Mongolia', 'Syria', 'Mecca'],
[
'National_University_of_Mongolia',
'Ulaanbaatar',
'Saudi_Arabia',
'Mecca'
],
[
'National_University_of_Mongolia',
'Mongolia',
'Saudi_Arabia',
'Mecca'
],
[
'National_University_of_Mongolia',
'Soviet_Union',
'Saudi_Arabia',
'Mecca'
],
['National_University_of_Mongolia', 'Ulaanbaatar', 'Jordan', 'Mecca'],
['National_University_of_Mongolia', 'Mongolia', 'Jordan', 'Mecca'],
[
'National_University_of_Mongolia',
'Ulaanbaatar',
'Names_of_Ulaanbaatar_in_different_languages',
'Mecca'
],
[
'National_University_of_Mongolia',
'Main_Page',
'Socio-economic_impact_of_the_2019%E2%80%9320_coronavirus_pandemic',
'Mecca'
],
[
'National_University_of_Mongolia',
'Main_Page',
'2019%E2%80%9320_coronavirus_pandemic',
'Mecca'
],
[
'National_University_of_Mongolia',
'Postgraduate_education',
'Arabian_Peninsula',
'Mecca'
],
[
'National_University_of_Mongolia',
'Public_university',
'Kyrgyzstan',
'Mecca'
],
[
'National_University_of_Mongolia',
'Ulaanbaatar',
'Kyrgyzstan',
'Mecca'
],
[
'National_University_of_Mongolia',
'Mongolian_language',
'Kyrgyzstan',
'Mecca'
],
[
'National_University_of_Mongolia',
'Mongolia',
'Kyrgyzstan',
'Mecca'
],
[
'National_University_of_Mongolia',
'Soviet_Union',
'Kyrgyzstan',
'Mecca'
],
[
'National_University_of_Mongolia',
'Public_university',
'Madrassa',
'Mecca'
],
[
'National_University_of_Mongolia',
'Geographic_coordinate_system',
'International_Date_Line',
'Mecca'
],
[
'National_University_of_Mongolia',
'Geographic_coordinate_system',
'Medieval_Arabic_cartography',
'Mecca'
],
[
'National_University_of_Mongolia',
'Geographic_coordinate_system',
'Mu%E1%B8%A5ammad_ibn_M%C5%ABs%C4%81_al-Khw%C4%81rizm%C4%AB',
'Mecca'
],
[
'National_University_of_Mongolia',
'Geographic_coordinate_system',
'Book_of_the_Description_of_the_Earth',
'Mecca'
],
[
'National_University_of_Mongolia',
'Geographic_coordinate_system',
'History_of_prime_meridians',
'Mecca'
],
[
'National_University_of_Mongolia',
'Geographic_coordinate_system',
'Prime_meridian',
'Mecca'
],
[
'National_University_of_Mongolia',
'Geographic_coordinate_system',
'History_of_geodesy',
'Mecca'
],
[
'National_University_of_Mongolia',
'Undergraduate_education',
'Madrasa',
'Mecca'
],
[
'National_University_of_Mongolia',
'Postgraduate_education',
'Madrasa',
'Mecca'
],
[
'National_University_of_Mongolia',
'Undergraduate_education',
'Pakistan',
'Mecca'
],
[
'National_University_of_Mongolia',
'Public_university',
'Pakistan',
'Mecca'
],
[
'National_University_of_Mongolia',
'Ulaanbaatar',
'Pakistan',
'Mecca'
],
['National_University_of_Mongolia', 'Mongolia', 'Pakistan', 'Mecca'],
[
'National_University_of_Mongolia',
'Mongolian_Revolution_of_1990',
'Islamism',
'Mecca'
],
[
'National_University_of_Mongolia',
'Mongolian_Revolution_of_1990',
'Grand_Mosque_seizure',
'Mecca'
],
[
'National_University_of_Mongolia',
'Mongolian_Revolution_of_1990',
'Gulf_War',
'Mecca'
],
[
'National_University_of_Mongolia',
'Soviet_Union',
'Gulf_War',
'Mecca'
],
[
'National_University_of_Mongolia',
'Mongolian_Revolution_of_1990',
'Corrective_Movement_(Syria)',
'Mecca'
],
[
'National_University_of_Mongolia',
'Mongolian_Revolution_of_1990',
'Arab_Cold_War',
'Mecca'
],
[
'National_University_of_Mongolia',
'Virtual_International_Authority_File',
'Jerusalem',
'Mecca'
],
[
'National_University_of_Mongolia',
'Ulaanbaatar',
'Jerusalem',
'Mecca'
],
[
'National_University_of_Mongolia',
'Virtual_International_Authority_File',
'Arabic_language',
'Mecca'
],
[
'National_University_of_Mongolia',
'Minister_of_Education',
'Arabic_language',
'Mecca'
],
[
'National_University_of_Mongolia',
'Geographic_coordinate_system',
'Arabic_language',
'Mecca'
],
[
'National_University_of_Mongolia',
'Mongolian_language',
'Arabic_language',
'Mecca'
],
[
'National_University_of_Mongolia',
'Khovd_(city)',
'K%C3%B6ppen_climate_classification',
'Mecca'
],
[
'National_University_of_Mongolia',
'Ulaanbaatar',
'K%C3%B6ppen_climate_classification',
'Mecca'
],
[
'National_University_of_Mongolia',
'Galsan_Tschinag',
'Poet',
'Mecca'
],
[
'National_University_of_Mongolia',
'Galsan_Tschinag',
'Bayan-%C3%96lgii_Province',
'Mecca'
],
[
'National_University_of_Mongolia',
'Khovd_(city)',
'Bayan-%C3%96lgii_Province',
'Mecca'
],
[
'National_University_of_Mongolia',
'Orkhon_Province',
'Bayan-%C3%96lgii_Province',
'Mecca'
],
[
'National_University_of_Mongolia',
'Zavkhan_Province',
'Bayan-%C3%96lgii_Province',
'Mecca'
],
[
'National_University_of_Mongolia',
'Ulaanbaatar',
'Bayan-%C3%96lgii_Province',
'Mecca'
],
[
'National_University_of_Mongolia',
'Mongolia',
'Bayan-%C3%96lgii_Province',
'Mecca'
],
[
'National_University_of_Mongolia',
'School_colors',
'White',
'Mecca'
],
['National_University_of_Mongolia', 'Blue', 'White', 'Mecca'],
[
'National_University_of_Mongolia',
'School_colors',
'Oxford_University',
'Mecca'
]
]
},
{
source: 'Graph_(discrete_mathematics)',
target: 'Confucius',
paths: [
[
'Graph_(discrete_mathematics)',
'Twitter',
'Civil_disobedience',
'Confucius'
],
['Graph_(discrete_mathematics)', 'Twitter', 'News', 'Confucius'],
[
'Graph_(discrete_mathematics)',
'Mathematics',
'Scholasticism',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Mathematics',
'Karl_Popper',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Mathematics',
'Metaphysics',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Mathematics',
'Cicero',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Mathematics',
'Saint_Augustine',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Mathematics',
'Social_sciences',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Graph_theory',
'Principle_of_Compositionality',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Graph_theory',
'Principle_of_compositionality',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Multiset',
'Athanasius_Kircher',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Complete_bipartite_graph',
'Athanasius_Kircher',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Discrete_mathematics',
'Statement_(logic)',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Ordered_pair',
'Willard_van_Orman_Quine',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Empty_set',
'Property_(philosophy)',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'List_of_publications_in_mathematics',
'List_of_important_publications_in_philosophy',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'List_of_publications_in_mathematics',
'Gottlob_Frege',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'List_of_publications_in_mathematics',
'Language',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'List_of_publications_in_mathematics',
'Aristotle',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Mathematics',
'Aristotle',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'List_of_publications_in_mathematics',
'Han_Dynasty',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Computer_science',
'Gottfried_Wilhelm_Leibniz',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'List_of_publications_in_mathematics',
'Gottfried_Wilhelm_Leibniz',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Graph_theory',
'Gottfried_Wilhelm_Leibniz',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Mathematics',
'Gottfried_Wilhelm_Leibniz',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Computer_science',
'Epistemology',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Computer_science',
'Gottfried_Leibniz',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'List_of_publications_in_mathematics',
'Gottfried_Leibniz',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Functor',
'Rudolf_Carnap',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Graph_drawing',
'Aesthetics',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Mathematics',
'Aesthetics',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Geographic_information_systems',
'Reasoning',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Finite_state_machine',
'Linguistics',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Graph_drawing',
'Linguistics',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Functor',
'Linguistics',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Computer_science',
'Linguistics',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Graph_theory',
'Linguistics',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Model_theory',
'Proposition',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Structure_(model_theory)',
'Proposition',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Finite_set',
'Proposition',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Empty_set',
'Proposition',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Set_(mathematics)',
'Proposition',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Two-set',
'Proposition',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Ordered_pair',
'Proposition',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Model_theory',
'Formal_semantics_(logic)',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Structure_(model_theory)',
'Formal_semantics_(logic)',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Finite_set',
'Formal_semantics_(logic)',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Empty_set',
'Formal_semantics_(logic)',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Set_(mathematics)',
'Formal_semantics_(logic)',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Two-set',
'Formal_semantics_(logic)',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Ordered_pair',
'Formal_semantics_(logic)',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Model_theory',
'Philosophy',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Finite_state_machine',
'Philosophy',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Digital_object_identifier',
'Pinyin',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'International_Standard_Book_Number',
'Pinyin',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Conceptual_graph',
'Semantics',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Model_theory',
'Semantics',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Cardinal_number',
'Willard_Van_Orman_Quine',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Finite_set',
'Willard_Van_Orman_Quine',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Empty_set',
'Willard_Van_Orman_Quine',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Set_(mathematics)',
'Willard_Van_Orman_Quine',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Two-set',
'Willard_Van_Orman_Quine',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Network_theory',
'Epistemological',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Network_theory',
'Sociology',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Graph_theory',
'Sociology',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Graph_rewriting',
'Logic',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Model_theory',
'Logic',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Finite_state_machine',
'Logic',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Computer_science',
'Logic',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'List_of_publications_in_mathematics',
'Logic',
'Confucius'
],
['Graph_(discrete_mathematics)', 'Mathematics', 'Logic', 'Confucius'],
[
'Graph_(discrete_mathematics)',
'Cartesian_product_of_graphs',
'Bertrand_Russell',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Cardinal_number',
'Bertrand_Russell',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Tensor_product_of_graphs',
'Bertrand_Russell',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Structure_(model_theory)',
'Bertrand_Russell',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'List_of_publications_in_mathematics',
'Bertrand_Russell',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Finite_set',
'Bertrand_Russell',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Empty_set',
'Bertrand_Russell',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Set_(mathematics)',
'Bertrand_Russell',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Two-set',
'Bertrand_Russell',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Mathematics',
'Bertrand_Russell',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'List_of_graph_theory_topics',
'Family_tree',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Directed_acyclic_graph',
'Family_tree',
'Confucius'
],
[
'Graph_(discrete_mathematics)',
'Diagrammatic_form',
'Family_tree',
'Confucius'
]
]
}
]
const execFilePromisify = promisify(execFile)
for (const {source, target, paths} of TESTS) {
// Run tests one-at-a-time to avoid Wikipedia's rate-limiting
test.serial(`From "${source}" to "${target}"`, async t => {
const {stdout} = await execFilePromisify('node', ['../find-path.js', source, target])
for (const path of paths) {
if (stdout === path.map(page => `${page}\n`).join('')) {
t.pass()
return
}
}
t.fail(`Unexpected path:\n${stdout}`)
})
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment