cauldron 0.1.3 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. data/.gitignore +51 -0
  2. data/Gemfile +6 -3
  3. data/Gemfile.lock +16 -3
  4. data/Rakefile +94 -92
  5. data/VERSION +1 -1
  6. data/bin/cauldron +2 -2
  7. data/cauldron.gemspec +15 -451
  8. data/features/cauldron_new_approach.feature +46 -0
  9. data/features/step_definitions/cauldron_steps.rb +11 -0
  10. data/features/step_definitions/terminal_steps.rb +0 -2
  11. data/features/support/env.rb +11 -1
  12. data/features/support/hooks.rb +5 -0
  13. data/lib/cauldron.rb +13 -7
  14. data/lib/cauldron/array_reverse_operator.rb +39 -0
  15. data/lib/cauldron/concat_operator.rb +34 -0
  16. data/lib/cauldron/if_relationship.rb +37 -0
  17. data/lib/cauldron/numeric_operator.rb +45 -0
  18. data/lib/cauldron/pot.rb +54 -162
  19. data/lib/cauldron/relationship.rb +5 -0
  20. data/lib/cauldron/terminal.rb +4 -60
  21. data/lib/cauldron/version.rb +3 -0
  22. data/lib/core/string.rb +21 -0
  23. data/sandbox.rb +27 -6
  24. data/spec/cauldron/array_reverse_operator_spec.rb +59 -0
  25. data/spec/cauldron/concat_operator_spec.rb +89 -0
  26. data/spec/cauldron/if_relationship_spec.rb +25 -0
  27. data/spec/cauldron/numeric_operator_spec.rb +70 -0
  28. data/spec/cauldron/pot_spec.rb +81 -151
  29. data/spec/cauldron/terminal_spec.rb +1 -39
  30. data/spec/examples/adding_if_statement.yml +13 -0
  31. data/spec/examples/simple_head_theory.txt +13 -0
  32. data/spec/spec_helper.rb +1 -14
  33. data/tasks/theory_tasks.rake +207 -207
  34. metadata +92 -532
  35. data/cauldron/.autotest +0 -23
  36. data/cauldron/History.txt +0 -6
  37. data/cauldron/Manifest.txt +0 -8
  38. data/cauldron/README.txt +0 -57
  39. data/cauldron/Rakefile +0 -27
  40. data/cauldron/bin/cauldron +0 -3
  41. data/cauldron/lib/cauldron.rb +0 -3
  42. data/cauldron/test/test_cauldron.rb +0 -8
  43. data/features/cauldron_example_cases.feature +0 -13
  44. data/features/cauldron_generates_runtime_method.feature +0 -16
  45. data/features/cauldron_generates_single_paramter_methods.feature +0 -25
  46. data/features/cauldron_interactive_start_terminal.feature +0 -17
  47. data/features/cauldron_quit_terminal.feature +0 -9
  48. data/features/cauldron_start_terminal.feature +0 -12
  49. data/features/support/method_1.example +0 -3
  50. data/features/support/method_2.example +0 -6
  51. data/lib/Chain.rb +0 -771
  52. data/lib/ChainMapping.rb +0 -172
  53. data/lib/CodeHandler.rb +0 -513
  54. data/lib/Mapping.rb +0 -27
  55. data/lib/MappingValues.rb +0 -24
  56. data/lib/PartialChain.rb +0 -253
  57. data/lib/Theory.rb +0 -295
  58. data/lib/UnifiedChain.rb +0 -351
  59. data/lib/cauldron/conversion.rb +0 -15
  60. data/lib/cauldron/demos.rb +0 -280
  61. data/lib/cauldron/env.rb +0 -1
  62. data/lib/cauldron/sexp2cauldron.rb +0 -139
  63. data/lib/cauldron/theory_factory.rb +0 -10
  64. data/lib/cauldron/util/home.rb +0 -21
  65. data/lib/cauldron/util/saver.rb +0 -45
  66. data/lib/core/ActsAsCode.rb +0 -25
  67. data/lib/core/BlockToken.rb +0 -33
  68. data/lib/core/CCall.rb +0 -7
  69. data/lib/core/CTestCase.rb +0 -27
  70. data/lib/core/ClassMethodCallContainer.rb +0 -58
  71. data/lib/core/Container.rb +0 -95
  72. data/lib/core/InstanceCallContainer.rb +0 -298
  73. data/lib/core/MethodUsage.rb +0 -65
  74. data/lib/core/PrintVariables.rb +0 -25
  75. data/lib/core/TheoryGenerator.rb +0 -753
  76. data/lib/core/Token.rb +0 -7
  77. data/lib/core/assignment/Assignment.rb +0 -18
  78. data/lib/core/assignment/Equal.rb +0 -39
  79. data/lib/core/assignment/Equivalent.rb +0 -20
  80. data/lib/core/assignment/NotEqual.rb +0 -14
  81. data/lib/core/call_container/CallContainer.rb +0 -72
  82. data/lib/core/class_method_call/New.rb +0 -15
  83. data/lib/core/class_method_call/RuntimeClassMethodCall.rb +0 -31
  84. data/lib/core/declaration/Declaration.rb +0 -16
  85. data/lib/core/declaration/LiteralDeclaration.rb +0 -47
  86. data/lib/core/declaration/VariableDeclaration.rb +0 -59
  87. data/lib/core/instance_call/ArrayEach.rb +0 -23
  88. data/lib/core/instance_call/ArrayLength.rb +0 -15
  89. data/lib/core/instance_call/Chop.rb +0 -19
  90. data/lib/core/instance_call/Copy.rb +0 -22
  91. data/lib/core/instance_call/DeclaredVariable.rb +0 -18
  92. data/lib/core/instance_call/InstanceCall.rb +0 -77
  93. data/lib/core/instance_call/Params.rb +0 -15
  94. data/lib/core/instance_call/Push.rb +0 -20
  95. data/lib/core/instance_call/StringLength.rb +0 -32
  96. data/lib/core/instance_call/Times.rb +0 -20
  97. data/lib/core/instance_call/instance_calls.rb +0 -176
  98. data/lib/core/instance_call/length_equal.rb +0 -15
  99. data/lib/core/kernal/EvalCall.rb +0 -15
  100. data/lib/core/kernal/LocalVariablesCall.rb +0 -15
  101. data/lib/core/literal/Literal.rb +0 -111
  102. data/lib/core/literal/Raw.rb +0 -23
  103. data/lib/core/literal/RuntimeMethodLiteral.rb +0 -21
  104. data/lib/core/literal/StatementLiteral.rb +0 -28
  105. data/lib/core/method_call/AvailableVariablesCall.rb +0 -25
  106. data/lib/core/method_call/ClassCall.rb +0 -33
  107. data/lib/core/method_call/DefCall.rb +0 -72
  108. data/lib/core/method_call/EvaluateClassCall.rb +0 -29
  109. data/lib/core/method_call/MethodNameCall.rb +0 -27
  110. data/lib/core/method_call/ToDeclarationCall.rb +0 -15
  111. data/lib/core/requirement/Requirement.rb +0 -292
  112. data/lib/core/runtime_class/ArrayClass.rb +0 -19
  113. data/lib/core/runtime_class/ClassCallClass.rb +0 -23
  114. data/lib/core/runtime_class/ClassEvaluationClass.rb +0 -19
  115. data/lib/core/runtime_class/ClassName.rb +0 -18
  116. data/lib/core/runtime_class/DefCallClass.rb +0 -21
  117. data/lib/core/runtime_class/EqualClass.rb +0 -19
  118. data/lib/core/runtime_class/FixnumClass.rb +0 -15
  119. data/lib/core/runtime_class/InstanceCallClass.rb +0 -19
  120. data/lib/core/runtime_class/InstanceCallContainerClass.rb +0 -16
  121. data/lib/core/runtime_class/InstanceClassCallClass.rb +0 -19
  122. data/lib/core/runtime_class/LiteralClass.rb +0 -19
  123. data/lib/core/runtime_class/MethodParameterClass.rb +0 -27
  124. data/lib/core/runtime_class/MethodUsageClass.rb +0 -27
  125. data/lib/core/runtime_class/RequirementClass.rb +0 -19
  126. data/lib/core/runtime_class/ReturnClass.rb +0 -21
  127. data/lib/core/runtime_class/RuntimeClass.rb +0 -30
  128. data/lib/core/runtime_class/RuntimeClassClass.rb +0 -19
  129. data/lib/core/runtime_class/RuntimeMethodClass.rb +0 -34
  130. data/lib/core/runtime_class/StatementClass.rb +0 -53
  131. data/lib/core/runtime_class/StringClass.rb +0 -23
  132. data/lib/core/runtime_class/StringLengthClass.rb +0 -19
  133. data/lib/core/runtime_class/StringVariableClass.rb +0 -19
  134. data/lib/core/runtime_class/ThisClass.rb +0 -15
  135. data/lib/core/runtime_class/UnknownClass.rb +0 -23
  136. data/lib/core/runtime_class/class_names.rb +0 -95
  137. data/lib/core/runtime_class/runtime_class.rb +0 -123
  138. data/lib/core/runtime_method/ActsAsRuntimeMethod.rb +0 -293
  139. data/lib/core/runtime_method/ParametersContainer.rb +0 -29
  140. data/lib/core/runtime_method/RealisedRuntimeMethod.rb +0 -94
  141. data/lib/core/runtime_method/RuntimeMethod.rb +0 -814
  142. data/lib/core/runtime_method/WriteParameters.rb +0 -35
  143. data/lib/core/statement/ActsAsStatement.rb +0 -20
  144. data/lib/core/statement/ArrayAccess.rb +0 -122
  145. data/lib/core/statement/BlockStatement.rb +0 -348
  146. data/lib/core/statement/DeclarationStatement.rb +0 -19
  147. data/lib/core/statement/HackStatement.rb +0 -25
  148. data/lib/core/statement/HashAccess.rb +0 -18
  149. data/lib/core/statement/OpenStatement.rb +0 -178
  150. data/lib/core/statement/RealisedStatement.rb +0 -5
  151. data/lib/core/statement/SingleLineBlockStatement.rb +0 -39
  152. data/lib/core/statement/Statement.rb +0 -1091
  153. data/lib/core/statement/StatementGroup.rb +0 -157
  154. data/lib/core/statement/StatementStructure2.rb +0 -224
  155. data/lib/core/statement/TheoryStatement.rb +0 -68
  156. data/lib/core/statement/TopologicalStatements.rb +0 -34
  157. data/lib/core/syntax/Addition.rb +0 -26
  158. data/lib/core/syntax/BlockContainer.rb +0 -102
  159. data/lib/core/syntax/Boolean.rb +0 -15
  160. data/lib/core/syntax/Code.rb +0 -11
  161. data/lib/core/syntax/Do.rb +0 -20
  162. data/lib/core/syntax/False.rb +0 -12
  163. data/lib/core/syntax/If.rb +0 -36
  164. data/lib/core/syntax/Nil.rb +0 -15
  165. data/lib/core/syntax/Return.rb +0 -33
  166. data/lib/core/syntax/Subtract.rb +0 -19
  167. data/lib/core/syntax/This.rb +0 -40
  168. data/lib/core/syntax/True.rb +0 -20
  169. data/lib/core/syntax/syntax.rb +0 -24
  170. data/lib/core/tracking/ActsAsTrackable.rb +0 -65
  171. data/lib/core/tracking/History.rb +0 -167
  172. data/lib/core/tracking/RuntimeTrackingMethod.rb +0 -32
  173. data/lib/core/tracking/Step.rb +0 -52
  174. data/lib/core/variable/ArrayVariable.rb +0 -76
  175. data/lib/core/variable/BaseVariable.rb +0 -152
  176. data/lib/core/variable/BlockVariable.rb +0 -92
  177. data/lib/core/variable/FixnumVariable.rb +0 -35
  178. data/lib/core/variable/HistoryVariable.rb +0 -8
  179. data/lib/core/variable/MethodParameter.rb +0 -179
  180. data/lib/core/variable/MethodUsageVariable.rb +0 -60
  181. data/lib/core/variable/NilVariable.rb +0 -29
  182. data/lib/core/variable/RuntimeMethodParameter.rb +0 -67
  183. data/lib/core/variable/StatementVariable.rb +0 -72
  184. data/lib/core/variable/StepVariable.rb +0 -7
  185. data/lib/core/variable/StringVariable.rb +0 -46
  186. data/lib/core/variable/TypeVariable.rb +0 -72
  187. data/lib/core/variable/Unknown.rb +0 -102
  188. data/lib/core/variable/UnknownVariable.rb +0 -29
  189. data/lib/core/variable/Variable.rb +0 -70
  190. data/lib/core/variable/VariableContainer.rb +0 -28
  191. data/lib/core/variable/VariableIncluded.rb +0 -27
  192. data/lib/core/variable/VariableReference.rb +0 -85
  193. data/lib/error/FailedToFindStatementContainerError.rb +0 -7
  194. data/lib/error/FailedToFindStatementError.rb +0 -7
  195. data/lib/error/FailedToFindVariableError.rb +0 -7
  196. data/lib/error/FailedToLiteraliseError.rb +0 -7
  197. data/lib/error/FailedVariableMatch.rb +0 -7
  198. data/lib/error/ImproperStatementUsageError.rb +0 -7
  199. data/lib/error/IncompatiableRequirementsError.rb +0 -7
  200. data/lib/error/InvalidStatementError.rb +0 -7
  201. data/lib/error/MethodSizeError.rb +0 -7
  202. data/lib/error/RuntimeSyntaxError.rb +0 -7
  203. data/lib/error/UnexpectedStatementTypeError.rb +0 -7
  204. data/lib/error/UnknownStatementType.rb +0 -7
  205. data/lib/error/UnliteralisableError.rb +0 -7
  206. data/lib/implemented_chain.rb +0 -35
  207. data/lib/intrinsic/IntrinsicLastRuntimeMethod.rb +0 -20
  208. data/lib/intrinsic/IntrinsicLiteral.rb +0 -26
  209. data/lib/intrinsic/IntrinsicObject.rb +0 -22
  210. data/lib/intrinsic/IntrinsicRuntimeMethod.rb +0 -27
  211. data/lib/intrinsic/IntrinsicTestCases.rb +0 -17
  212. data/lib/logger/StandardLogger.rb +0 -62
  213. data/lib/required.rb +0 -222
  214. data/lib/ruby_code/Array.rb +0 -95
  215. data/lib/ruby_code/Fixnum.rb +0 -39
  216. data/lib/ruby_code/Hash.rb +0 -25
  217. data/lib/ruby_code/NilClass.rb +0 -19
  218. data/lib/ruby_code/Object.rb +0 -24
  219. data/lib/ruby_code/String.rb +0 -63
  220. data/lib/ruby_code/Symbol.rb +0 -7
  221. data/lib/standard_library/Tasks.rb +0 -12
  222. data/lib/theories.rb +0 -166
  223. data/lib/theory/ActionImplementation.rb +0 -17
  224. data/lib/theory/TheoryAction.rb +0 -100
  225. data/lib/theory/TheoryChainValidator.rb +0 -103
  226. data/lib/theory/TheoryComponent.rb +0 -59
  227. data/lib/theory/TheoryConnector.rb +0 -756
  228. data/lib/theory/TheoryDependent.rb +0 -135
  229. data/lib/theory/TheoryImplementation.rb +0 -75
  230. data/lib/theory/TheoryResult.rb +0 -131
  231. data/lib/theory/TheoryVariable.rb +0 -63
  232. data/lib/theory/theory_collection.rb +0 -62
  233. data/lib/util/ClassEvaluation.rb +0 -44
  234. data/lib/util/CodeEvaluation.rb +0 -39
  235. data/lib/util/DeclarationStatementEvaluation.rb +0 -32
  236. data/lib/util/MethodEvaluation.rb +0 -49
  237. data/lib/util/MethodTester.rb +0 -71
  238. data/lib/util/MethodValidation.rb +0 -149
  239. data/lib/util/MethodWriter.rb +0 -66
  240. data/lib/util/Parser.rb +0 -305
  241. data/lib/util/StatementCheck.rb +0 -44
  242. data/lib/util/StringToTheory.rb +0 -142
  243. data/lib/util/System.rb +0 -8
  244. data/spec/cauldron/chain_spec.rb +0 -24
  245. data/spec/cauldron/demos_spec.rb +0 -30
  246. data/spec/cauldron/runtime_method_spec.rb +0 -92
  247. data/spec/cauldron/saver_spec.rb +0 -45
  248. data/spec/cauldron/sexp_2_cauldron_spec.rb +0 -118
  249. data/spec/cauldron/theory_action_spec.rb +0 -25
  250. data/spec/cauldron/theory_connector_spec.rb +0 -52
  251. data/spec/cauldron/theory_spec.rb +0 -59
  252. data/spec/cauldron/unified_chain_spec.rb +0 -140
  253. data/test/fixtures/chains/1/declaration.txt +0 -26
  254. data/test/fixtures/chains/1/dump +0 -0
  255. data/test/fixtures/chains/2/declaration.txt +0 -26
  256. data/test/fixtures/chains/2/dump +0 -0
  257. data/test/fixtures/chains/3/declaration.txt +0 -26
  258. data/test/fixtures/chains/3/dump +0 -0
  259. data/test/fixtures/implementation_results/0/declaration.txt +0 -3
  260. data/test/fixtures/implementation_results/0/dump +0 -0
  261. data/test/fixtures/theories/0/declaration.txt +0 -9
  262. data/test/fixtures/theories/0/desc +0 -10
  263. data/test/fixtures/theories/0/dump +0 -0
  264. data/test/fixtures/theories/1/declaration.txt +0 -15
  265. data/test/fixtures/theories/1/desc +0 -11
  266. data/test/fixtures/theories/1/dump +0 -0
  267. data/test/fixtures/theories/10/declaration.txt +0 -23
  268. data/test/fixtures/theories/10/desc +0 -17
  269. data/test/fixtures/theories/10/dump +0 -0
  270. data/test/fixtures/theories/11/declaration.txt +0 -20
  271. data/test/fixtures/theories/11/desc +0 -14
  272. data/test/fixtures/theories/11/dump +0 -0
  273. data/test/fixtures/theories/12/declaration.txt +0 -18
  274. data/test/fixtures/theories/12/desc +0 -12
  275. data/test/fixtures/theories/12/dump +0 -0
  276. data/test/fixtures/theories/13/declaration.txt +0 -24
  277. data/test/fixtures/theories/13/desc +0 -20
  278. data/test/fixtures/theories/13/dump +0 -0
  279. data/test/fixtures/theories/14/declaration.txt +0 -26
  280. data/test/fixtures/theories/14/desc +0 -20
  281. data/test/fixtures/theories/14/dump +0 -0
  282. data/test/fixtures/theories/15/declaration.txt +0 -20
  283. data/test/fixtures/theories/15/desc +0 -14
  284. data/test/fixtures/theories/15/dump +0 -0
  285. data/test/fixtures/theories/16/declaration.txt +0 -30
  286. data/test/fixtures/theories/16/desc +0 -14
  287. data/test/fixtures/theories/16/dump +0 -0
  288. data/test/fixtures/theories/17/declaration.txt +0 -25
  289. data/test/fixtures/theories/17/desc +0 -11
  290. data/test/fixtures/theories/17/dump +0 -0
  291. data/test/fixtures/theories/18/declaration.txt +0 -23
  292. data/test/fixtures/theories/18/desc +0 -11
  293. data/test/fixtures/theories/18/dump +0 -0
  294. data/test/fixtures/theories/19/declaration.txt +0 -23
  295. data/test/fixtures/theories/19/desc +0 -11
  296. data/test/fixtures/theories/19/dump +0 -0
  297. data/test/fixtures/theories/2/declaration.txt +0 -12
  298. data/test/fixtures/theories/2/desc +0 -10
  299. data/test/fixtures/theories/2/dump +0 -0
  300. data/test/fixtures/theories/20/declaration.txt +0 -23
  301. data/test/fixtures/theories/20/desc +0 -17
  302. data/test/fixtures/theories/20/dump +0 -0
  303. data/test/fixtures/theories/3/declaration.txt +0 -19
  304. data/test/fixtures/theories/3/desc +0 -11
  305. data/test/fixtures/theories/3/dump +0 -0
  306. data/test/fixtures/theories/4/declaration.txt +0 -11
  307. data/test/fixtures/theories/4/desc +0 -11
  308. data/test/fixtures/theories/4/dump +0 -0
  309. data/test/fixtures/theories/5/declaration.txt +0 -6
  310. data/test/fixtures/theories/5/desc +0 -9
  311. data/test/fixtures/theories/5/dump +0 -0
  312. data/test/fixtures/theories/6/declaration.txt +0 -13
  313. data/test/fixtures/theories/6/desc +0 -11
  314. data/test/fixtures/theories/6/dump +0 -0
  315. data/test/fixtures/theories/7/declaration.txt +0 -19
  316. data/test/fixtures/theories/7/desc +0 -11
  317. data/test/fixtures/theories/7/dump +0 -0
  318. data/test/fixtures/theories/8/declaration.txt +0 -21
  319. data/test/fixtures/theories/8/desc +0 -11
  320. data/test/fixtures/theories/8/dump +0 -0
  321. data/test/fixtures/theories/9/declaration.txt +0 -24
  322. data/test/fixtures/theories/9/desc +0 -20
  323. data/test/fixtures/theories/9/dump +0 -0
  324. data/test/fixtures/theory_implementations/0/declaration.txt +0 -11
  325. data/test/fixtures/theory_implementations/0/desc.txt +0 -9
  326. data/test/fixtures/theory_implementations/0/dump +0 -0
  327. data/test/fixtures/theory_implementations/0/theory_id +0 -1
  328. data/test/fixtures/theory_implementations/1/declaration.txt +0 -11
  329. data/test/fixtures/theory_implementations/1/desc.txt +0 -9
  330. data/test/fixtures/theory_implementations/1/dump +0 -1
  331. data/test/fixtures/theory_implementations/1/theory_id +0 -1
  332. data/test/fixtures/theory_implementations/2/declaration.txt +0 -11
  333. data/test/fixtures/theory_implementations/2/desc.txt +0 -9
  334. data/test/fixtures/theory_implementations/2/dump +0 -0
  335. data/test/fixtures/theory_implementations/2/theory_id +0 -1
  336. data/test/output/simple_method.txt +0 -5
  337. data/test/output/test_method/first_possible_method.txt +0 -6
  338. data/test/output/test_simple_cases/simple_case_01.txt +0 -8
  339. data/test/output/test_simple_cases/simple_case_02.txt +0 -7
  340. data/test/output/test_simple_cases/simple_case_03.txt +0 -8
  341. data/test/output/test_simple_cases/simple_case_04.txt +0 -8
  342. data/test/output/test_simple_cases/simple_case_05.txt +0 -8
  343. data/test/output/test_simple_cases/simple_case_06.txt +0 -9
  344. data/test/output/test_simple_cases/simple_case_07.txt +0 -9
  345. data/test/output/test_simple_cases/simple_case_08.txt +0 -9
  346. data/test/tc_describe.rb +0 -46
  347. data/test/tc_method.rb +0 -130
  348. data/test/tc_requirement.rb +0 -30
  349. data/test/tc_suite_complete.rb +0 -26
  350. data/test/tc_variable.rb +0 -52
  351. data/test/ts_complete.rb +0 -74
  352. data/test/ts_stable.rb +0 -81
  353. data/test/unit/core/declaration/tc_literal_declaration.rb +0 -34
  354. data/test/unit/core/method_call/tc_class_call.rb +0 -20
  355. data/test/unit/core/runtime_method/tc_realised_runtime_method.rb +0 -132
  356. data/test/unit/core/runtime_method/tc_runtime_method.rb +0 -546
  357. data/test/unit/core/statement/tc_array_access.rb +0 -63
  358. data/test/unit/core/statement/tc_block_statement.rb +0 -53
  359. data/test/unit/core/statement/tc_hack_statement.rb +0 -26
  360. data/test/unit/core/statement/tc_open_statement.rb +0 -79
  361. data/test/unit/core/statement/tc_statement.rb +0 -483
  362. data/test/unit/core/statement/tc_statement_group.rb +0 -35
  363. data/test/unit/core/statement/tc_statement_replace_variable.rb +0 -61
  364. data/test/unit/core/statement/tc_theory_statement.rb +0 -53
  365. data/test/unit/core/syntax/tc_block_container.rb +0 -32
  366. data/test/unit/core/syntax/tc_if_container.rb +0 -39
  367. data/test/unit/core/tc_class_method_call.rb +0 -34
  368. data/test/unit/core/tc_container.rb +0 -41
  369. data/test/unit/core/tc_ctest_case.rb +0 -25
  370. data/test/unit/core/tc_instance_call_container.rb +0 -93
  371. data/test/unit/core/tc_literal.rb +0 -30
  372. data/test/unit/core/tc_theory_generator.rb +0 -336
  373. data/test/unit/core/tc_theory_generator_heavy.rb +0 -42
  374. data/test/unit/core/tracking/tc_history.rb +0 -104
  375. data/test/unit/core/tracking/tc_step.rb +0 -65
  376. data/test/unit/core/variable/tc_array_variable.rb +0 -61
  377. data/test/unit/core/variable/tc_block_variable.rb +0 -17
  378. data/test/unit/core/variable/tc_fixnum_variable.rb +0 -54
  379. data/test/unit/core/variable/tc_method_parameter_variable.rb +0 -22
  380. data/test/unit/core/variable/tc_runtime_method_variable.rb +0 -32
  381. data/test/unit/core/variable/tc_string_variable.rb +0 -37
  382. data/test/unit/core/variable/tc_unknown.rb +0 -24
  383. data/test/unit/core/variable/tc_variable_reference.rb +0 -28
  384. data/test/unit/ruby_code/tc_array.rb +0 -64
  385. data/test/unit/ruby_code/tc_fixnum.rb +0 -18
  386. data/test/unit/ruby_code/tc_hash.rb +0 -41
  387. data/test/unit/ruby_code/tc_string.rb +0 -38
  388. data/test/unit/tc_chain.rb +0 -434
  389. data/test/unit/tc_chain_mapping.rb +0 -62
  390. data/test/unit/tc_chain_with_case_1.rb +0 -169
  391. data/test/unit/tc_instance_call.rb +0 -40
  392. data/test/unit/tc_method_usage.rb +0 -35
  393. data/test/unit/tc_pot.rb +0 -124
  394. data/test/unit/tc_runtime_tracking_method.rb +0 -40
  395. data/test/unit/tc_theory.rb +0 -531
  396. data/test/unit/tc_variable_declaration.rb +0 -32
  397. data/test/unit/theory/tc_theory_action.rb +0 -108
  398. data/test/unit/theory/tc_theory_action_implementation.rb +0 -23
  399. data/test/unit/theory/tc_theory_chain_validator.rb +0 -340
  400. data/test/unit/theory/tc_theory_connector.rb +0 -361
  401. data/test/unit/theory/tc_theory_dependent.rb +0 -153
  402. data/test/unit/theory/tc_theory_implementation.rb +0 -137
  403. data/test/unit/theory/tc_theory_result.rb +0 -112
  404. data/test/unit/theory/tc_theory_variable.rb +0 -45
  405. data/test/unit/util/tc_method_validation.rb +0 -101
  406. data/test/unit/util/tc_parser.rb +0 -110
  407. data/test/unit/util/tc_string_to_theory.rb +0 -300
  408. data/test/unit/variable/tc_method_usage_variable.rb +0 -25
  409. data/tmp/runtime_method_evaluation.rb +0 -16
@@ -2,46 +2,8 @@ require 'spec_helper'
2
2
 
3
3
  module Cauldron
4
4
 
5
- describe "Terminal" do
5
+ describe 'Terminal' do
6
6
 
7
- let(:output) {double('output').as_null_object}
8
- let(:terminal) {Terminal.new(output)}
9
-
10
- describe '#start' do
11
- it 'sends an introduction message' do
12
- output.should_receive(:puts).with("Thanks for trying Cauldron - it's at really early stage right now")
13
- terminal.start
14
- end
15
- it 'sends instruction message' do
16
- output.should_receive(:puts).with("To start enter your first test like this")
17
- output.should_receive(:puts).with("input,input,output")
18
- output.should_receive(:puts).with("For example ")
19
- output.should_receive(:puts).with("and when you're done just type RUN")
20
- terminal.start
21
- end
22
- end
23
-
24
- describe '#submit' do
25
- context "with example case \"'sparky', 'sparky'\"" do
26
- subject do
27
- terminal.submit "'sparky','sparky'"
28
- terminal.submit "'kel','kel'"
29
- terminal.cases
30
- end
31
- its([0]) { should eq({:output=>"sparky", :params=>["sparky"]}) }
32
- its([1]) { should eq({:output=>"kel", :params=>["kel"]}) }
33
- end
34
- context 'with example case "sparky", "sparky"' do
35
- subject do
36
- terminal.submit '"sparky","sparky"'
37
- terminal.submit '"kel","kel"'
38
- terminal.cases
39
- end
40
- its([0]) { should eq({:output=>"sparky", :params=>["sparky"]}) }
41
- its([1]) { should eq({:output=>"kel", :params=>["kel"]}) }
42
- end
43
- end
44
-
45
7
  end
46
8
 
47
9
  end
@@ -0,0 +1,13 @@
1
+ dependents:
2
+ - 'var1.kind_of?(RuntimeMethod)'
3
+ - 'var2.length == 2'
4
+ action:
5
+ statement: if x == y
6
+ position: var1.statement_id
7
+ values:
8
+ x: var1.params[var3]
9
+ y: var2[var4][:params][var5]
10
+ results:
11
+ - var1.kind_of?(RuntimeMethod)
12
+ - var2.length == 2
13
+ - var4.kind_of?(Fixnum)
@@ -0,0 +1,13 @@
1
+ dependent:
2
+
3
+ action:
4
+
5
+ result:
6
+ var1.kind_of?(RuntimeMethod)
7
+ var2.length == 2
8
+
9
+ dependents:
10
+ action:
11
+ results:
12
+ - var1.kind_of?(RuntimeMethod)
13
+ - var2.length == 2
@@ -1,15 +1,2 @@
1
1
  require 'cauldron'
2
-
3
- # TODO I would rather use the module:: Cauldron structure
4
- require 'required'
5
-
6
- def strip_whitespace(ruby_code)
7
- #res = ruby_code.strip.gsub(/\t{1,}/,'\t').gsub(/\s{2,}/,'\n')
8
- res = ruby_code.strip.gsub(/\t/,'\t').gsub(/\s{2,}/,'\n')
9
- #res = ruby_code.strip.gsub(/\s{2,}/,'\n')
10
- #return res.gsub('\t',"\t").gsub('\n',"\n")
11
- return res.gsub('\t'," ").gsub('\n',"\n")
12
- end
13
-
14
- include Cauldron::Demos
15
- include Cauldron::Conversion
2
+ require 'pry'
@@ -1,270 +1,270 @@
1
- # http://rake.rubyforge.org/
2
- # http://rake.rubyforge.org/files/doc/rakefile_rdoc.html
1
+ # # http://rake.rubyforge.org/
2
+ # # http://rake.rubyforge.org/files/doc/rakefile_rdoc.html
3
3
 
4
- namespace :cauldren do
4
+ # namespace :cauldren do
5
5
 
6
- namespace :implementations do
6
+ # namespace :implementations do
7
7
 
8
- desc 'Rebuild the implementations'
9
- task :rebuild do
10
- Rake::Task["cauldren:theories:rebuild"].execute
8
+ # desc 'Rebuild the implementations'
9
+ # task :rebuild do
10
+ # Rake::Task["cauldren:theories:rebuild"].execute
11
11
 
12
- file_list = FileList.new('test/fixtures/theory_implementations/*')
13
- file_list.each do |folder_path|
12
+ # file_list = FileList.new('test/fixtures/theory_implementations/*')
13
+ # file_list.each do |folder_path|
14
14
 
15
- implementation_id = folder_path.match(/\d+$/)[0].to_i
16
- declaration = File.open(File.join(folder_path,'declaration.txt'),'r').read
17
- theory_implementation = eval declaration
15
+ # implementation_id = folder_path.match(/\d+$/)[0].to_i
16
+ # declaration = File.open(File.join(folder_path,'declaration.txt'),'r').read
17
+ # theory_implementation = eval declaration
18
18
 
19
- dump_file = File.open(File.join(folder_path,'dump'),'w')
20
- data = Marshal.dump(theory_implementation)
21
- dump_file << data
22
- dump_file.close
19
+ # dump_file = File.open(File.join(folder_path,'dump'),'w')
20
+ # data = Marshal.dump(theory_implementation)
21
+ # dump_file << data
22
+ # dump_file.close
23
23
 
24
- end
24
+ # end
25
25
 
26
- end
26
+ # end
27
27
 
28
- desc 'Creates a new theory implementation'
29
- task :create do
30
- implementation_id = 0
28
+ # desc 'Creates a new theory implementation'
29
+ # task :create do
30
+ # implementation_id = 0
31
31
 
32
- StandardLogger.instance.warning("Caution: Creating new theory implementation #{implementation_id}")
33
- directory_path = $LOC+File.join('test','fixtures','theory_implementations',implementation_id.to_s)
34
- if(File.exists?(directory_path))
35
- StandardLogger.instance.warning("Theory Implementation ficture already exists #{implementation_id} -cancelling")
36
- exit
37
- else
38
- FileUtils.mkdir_p(directory_path)
39
- end
32
+ # StandardLogger.instance.warning("Caution: Creating new theory implementation #{implementation_id}")
33
+ # directory_path = $LOC+File.join('test','fixtures','theory_implementations',implementation_id.to_s)
34
+ # if(File.exists?(directory_path))
35
+ # StandardLogger.instance.warning("Theory Implementation ficture already exists #{implementation_id} -cancelling")
36
+ # exit
37
+ # else
38
+ # FileUtils.mkdir_p(directory_path)
39
+ # end
40
40
 
41
- # This is just updated here - nothing fancy
42
- declaration = %q!
43
- theory = Theory.load_theory(1)
44
- potential_values = [
45
- Parser.run('0'),
46
- Parser.run('test_cases'),
47
- Parser.run('runtime_method')
48
- ]
49
- results = theory.rewrite_permutations(potential_values)
50
- # NOTE: Rember use grep -A and -B to match particular cases
51
- results[5]
52
- !
53
- theory_implementation = eval declaration
41
+ # # This is just updated here - nothing fancy
42
+ # declaration = %q!
43
+ # theory = Theory.load_theory(1)
44
+ # potential_values = [
45
+ # Parser.run('0'),
46
+ # Parser.run('test_cases'),
47
+ # Parser.run('runtime_method')
48
+ # ]
49
+ # results = theory.rewrite_permutations(potential_values)
50
+ # # NOTE: Rember use grep -A and -B to match particular cases
51
+ # results[5]
52
+ # !
53
+ # theory_implementation = eval declaration
54
54
 
55
- # Save the declaration (incase the theory needs modified
56
- declaration_file = File.open(File.join(directory_path,'declaration.txt'),'w+')
57
- declaration_file << declaration
58
- declaration_file.close
55
+ # # Save the declaration (incase the theory needs modified
56
+ # declaration_file = File.open(File.join(directory_path,'declaration.txt'),'w+')
57
+ # declaration_file << declaration
58
+ # declaration_file.close
59
59
 
60
- dump_file = File.open(File.join(directory_path,'dump'),'w')
61
- data = Marshal.dump(theory_implementation)
62
- dump_file << data
63
- dump_file.close
60
+ # dump_file = File.open(File.join(directory_path,'dump'),'w')
61
+ # data = Marshal.dump(theory_implementation)
62
+ # dump_file << data
63
+ # dump_file.close
64
64
 
65
- end
65
+ # end
66
66
 
67
- namespace :results do
67
+ # namespace :results do
68
68
 
69
- desc "Creates a new theory result implementation with the supplied id"
70
- task :create, :arg1 do |t,args|
69
+ # desc "Creates a new theory result implementation with the supplied id"
70
+ # task :create, :arg1 do |t,args|
71
71
 
72
- # Create the directory to save the implementation result
73
- directory_path = File.join('test','fixtures','implementation_results',args[:arg1])
74
- if(File.exists?(directory_path))
75
- StandardLogger.instance.warning("Implementation Result already exists #{args[:arg1]} -cancelling")
76
- return
77
- else
78
- FileUtils.mkdir_p(directory_path)
79
- end
72
+ # # Create the directory to save the implementation result
73
+ # directory_path = File.join('test','fixtures','implementation_results',args[:arg1])
74
+ # if(File.exists?(directory_path))
75
+ # StandardLogger.instance.warning("Implementation Result already exists #{args[:arg1]} -cancelling")
76
+ # return
77
+ # else
78
+ # FileUtils.mkdir_p(directory_path)
79
+ # end
80
80
 
81
- declaration =
82
- %q!
83
- TheoryResult.new(Parser.run("if(runtime_method.all_pass?(test_cases))\nreturn true\nend"))
84
- !
81
+ # declaration =
82
+ # %q!
83
+ # TheoryResult.new(Parser.run("if(runtime_method.all_pass?(test_cases))\nreturn true\nend"))
84
+ # !
85
85
 
86
- # Save the declaration (incase it needs rebuilt)
87
- declaration_file = File.open(File.join(directory_path,'declaration.txt'),'w+')
88
- declaration_file << declaration
89
- declaration_file.close
86
+ # # Save the declaration (incase it needs rebuilt)
87
+ # declaration_file = File.open(File.join(directory_path,'declaration.txt'),'w+')
88
+ # declaration_file << declaration
89
+ # declaration_file.close
90
90
 
91
- result = eval declaration
92
- data = Marshal.dump(result)
91
+ # result = eval declaration
92
+ # data = Marshal.dump(result)
93
93
 
94
- dump_file = File.open(File.join(directory_path,'dump'),'w+')
95
- dump_file << data
96
- dump_file.close
94
+ # dump_file = File.open(File.join(directory_path,'dump'),'w+')
95
+ # dump_file << data
96
+ # dump_file.close
97
97
 
98
- end
98
+ # end
99
99
 
100
- end
100
+ # end
101
101
 
102
- end
102
+ # end
103
103
 
104
- namespace :chain do
104
+ # namespace :chain do
105
105
 
106
- desc "Create a new initial chain"
107
- task :create, :chain_id do |task,args|
106
+ # desc "Create a new initial chain"
107
+ # task :create, :chain_id do |task,args|
108
108
 
109
- # Create the directory to save the initial chains into
110
- directory_path = $LOC+File.join('test','fixtures','chains',args[:chain_id])
111
- if(File.exists?(directory_path))
112
- StandardLogger.instance.warning("A chain with the id #{args[:chain_id]} already exists")
113
- return
114
- else
115
- FileUtils.mkdir_p(directory_path)
116
- end
109
+ # # Create the directory to save the initial chains into
110
+ # directory_path = $LOC+File.join('test','fixtures','chains',args[:chain_id])
111
+ # if(File.exists?(directory_path))
112
+ # StandardLogger.instance.warning("A chain with the id #{args[:chain_id]} already exists")
113
+ # return
114
+ # else
115
+ # FileUtils.mkdir_p(directory_path)
116
+ # end
117
117
 
118
- # Create the declaration that creates the chain
119
- declaration =
120
- %q!
121
- runtime_method = RuntimeMethod.new(MethodUsage.new(MethodParameter.new))
122
- sparky = CTestCase.new
123
- sparky[:params] = ['sparky']
124
- sparky[:output] = 6
125
- kel = CTestCase.new
126
- kel[:params] = ['kel']
127
- kel[:output] = 3
128
- test_cases = [
129
- sparky,kel
130
- ]
131
- finish = Parser.run("if(runtime_method.all_pass?(test_cases))\nreturn true\nend")
118
+ # # Create the declaration that creates the chain
119
+ # declaration =
120
+ # %q!
121
+ # runtime_method = RuntimeMethod.new(MethodUsage.new(MethodParameter.new))
122
+ # sparky = CTestCase.new
123
+ # sparky[:params] = ['sparky']
124
+ # sparky[:output] = 6
125
+ # kel = CTestCase.new
126
+ # kel[:params] = ['kel']
127
+ # kel[:output] = 3
128
+ # test_cases = [
129
+ # sparky,kel
130
+ # ]
131
+ # finish = Parser.run("if(runtime_method.all_pass?(test_cases))\nreturn true\nend")
132
132
 
133
- # Generate the head theory - this is the starting point and doesn't have any dependents
134
- accessors, mapping = TheoryGenerator.new.generate_accessors_and_mapping(test_cases,runtime_method,7,0)
133
+ # # Generate the head theory - this is the starting point and doesn't have any dependents
134
+ # accessors, mapping = TheoryGenerator.new.generate_accessors_and_mapping(test_cases,runtime_method,7,0)
135
135
 
136
- # * Generate all the possible results of this runtime method
137
- theory_results = TheoryGenerator.new.get_theory_results(accessors)
136
+ # # * Generate all the possible results of this runtime method
137
+ # theory_results = TheoryGenerator.new.get_theory_results(accessors)
138
138
 
139
- # * Create the actual head theory
140
- head_theory = Theory.new([],nil,theory_results,runtime_method.copy)
139
+ # # * Create the actual head theory
140
+ # head_theory = Theory.new([],nil,theory_results,runtime_method.copy)
141
141
 
142
- intial_chain = Chain.new
143
- intial_chain.form_chain(head_theory,finish,mapping)
144
- intial_chain
145
- !
142
+ # intial_chain = Chain.new
143
+ # intial_chain.form_chain(head_theory,finish,mapping)
144
+ # intial_chain
145
+ # !
146
146
 
147
- # Save the declaration (incase it needs rebuilt)
148
- declaration_file = File.open(File.join(directory_path,'declaration.txt'),'w+')
149
- declaration_file << declaration
150
- declaration_file.close
147
+ # # Save the declaration (incase it needs rebuilt)
148
+ # declaration_file = File.open(File.join(directory_path,'declaration.txt'),'w+')
149
+ # declaration_file << declaration
150
+ # declaration_file.close
151
151
 
152
- result = eval declaration
153
- data = Marshal.dump(result)
152
+ # result = eval declaration
153
+ # data = Marshal.dump(result)
154
154
 
155
- dump_file = File.open(File.join(directory_path,'dump'),'w+')
156
- dump_file << data
157
- dump_file.close
155
+ # dump_file = File.open(File.join(directory_path,'dump'),'w+')
156
+ # dump_file << data
157
+ # dump_file.close
158
158
 
159
- end
159
+ # end
160
160
 
161
- desc "Load the specified chain"
162
- task :load_chain, :chain_id do |task,args|
161
+ # desc "Load the specified chain"
162
+ # task :load_chain, :chain_id do |task,args|
163
163
 
164
- # http://stackoverflow.com/questions/825748/how-do-i-pass-command-line-arguments-to-a-rake-task
165
- directory_path = $LOC+File.join('test','fixtures','chains',args[:chain_id].to_s)
166
- raise StandardError.new("chain #{args[:chain_id].to_s} does not exist") unless(File.exists?(directory_path))
167
- dump_file = File.open(File.join(directory_path,'dump'),'r')
164
+ # # http://stackoverflow.com/questions/825748/how-do-i-pass-command-line-arguments-to-a-rake-task
165
+ # directory_path = $LOC+File.join('test','fixtures','chains',args[:chain_id].to_s)
166
+ # raise StandardError.new("chain #{args[:chain_id].to_s} does not exist") unless(File.exists?(directory_path))
167
+ # dump_file = File.open(File.join(directory_path,'dump'),'r')
168
168
 
169
- return Marshal.load(dump_file)
169
+ # return Marshal.load(dump_file)
170
170
 
171
- end
171
+ # end
172
172
 
173
- end
173
+ # end
174
174
 
175
- namespace :theories do
175
+ # namespace :theories do
176
176
 
177
- desc "Create a new theory"
178
- task :create do
177
+ # desc "Create a new theory"
178
+ # task :create do
179
179
 
180
- theory_id = "20"
180
+ # theory_id = "20"
181
181
 
182
- StandardLogger.instance.info("NOTE: Creating new theory fixture #{theory_id.to_s}")
183
- # Does a directory for this theory fixture already exist.
184
- directory_path = $LOC+File.join('test','fixtures','theories',theory_id.to_s)
185
- if(File.exists?(directory_path))
186
- StandardLogger.instance.warning("Theory ficture already exists #{theory_id.to_s} -cancelling")
187
- exit
188
- else
182
+ # StandardLogger.instance.info("NOTE: Creating new theory fixture #{theory_id.to_s}")
183
+ # # Does a directory for this theory fixture already exist.
184
+ # directory_path = $LOC+File.join('test','fixtures','theories',theory_id.to_s)
185
+ # if(File.exists?(directory_path))
186
+ # StandardLogger.instance.warning("Theory ficture already exists #{theory_id.to_s} -cancelling")
187
+ # exit
188
+ # else
189
189
 
190
- # Create the directory
191
- FileUtils.mkdir_p(directory_path)
190
+ # # Create the directory
191
+ # FileUtils.mkdir_p(directory_path)
192
192
 
193
- end
193
+ # end
194
194
 
195
- # This is just updated here - nothing fancy
196
- declaration = %q!
197
- dependent_one = TheoryDependent.new(StringToTheory.run("if(var2[var3].kind_of?(CTestCase))\nreturn true\nend"))
198
- dependent_two = TheoryDependent.new(
199
- StringToTheory.run("if((var2[var3][:params][var6] == var2[var4][:params][var6])==false)\nreturn true\nend")
200
- )
201
- action = TheoryAction.new(
202
- TheoryStatement.new(StringToTheory.run(
203
- 'OpenStatement.new(Statement.new(If.new,Container.new(var1.params[var6],Equivalent.new,var2[var3][:params][var6])))'
204
- )),
205
- StringToTheory.run('var1.statement_id')
206
- )
207
- result_one = TheoryResult.new(StringToTheory.run(
208
- "if(var5.history2(var2[var3][:params]).any? { |x| x['statement_id'] == var1.last.statement_id })\nreturn true\nend"
209
- ))
210
- result_two = TheoryResult.new(StringToTheory.run(
211
- "if((var5.history2(var2[var4][:params]).any? { |x| x['statement_id'] == var1.last.statement_id })==false)\nreturn true\nend"
212
- ))
213
- Theory.new(
214
- [dependent_one,dependent_two],
215
- action,
216
- [result_one,result_two]
217
- )
218
- !
195
+ # # This is just updated here - nothing fancy
196
+ # declaration = %q!
197
+ # dependent_one = TheoryDependent.new(StringToTheory.run("if(var2[var3].kind_of?(CTestCase))\nreturn true\nend"))
198
+ # dependent_two = TheoryDependent.new(
199
+ # StringToTheory.run("if((var2[var3][:params][var6] == var2[var4][:params][var6])==false)\nreturn true\nend")
200
+ # )
201
+ # action = TheoryAction.new(
202
+ # TheoryStatement.new(StringToTheory.run(
203
+ # 'OpenStatement.new(Statement.new(If.new,Container.new(var1.params[var6],Equivalent.new,var2[var3][:params][var6])))'
204
+ # )),
205
+ # StringToTheory.run('var1.statement_id')
206
+ # )
207
+ # result_one = TheoryResult.new(StringToTheory.run(
208
+ # "if(var5.history2(var2[var3][:params]).any? { |x| x['statement_id'] == var1.last.statement_id })\nreturn true\nend"
209
+ # ))
210
+ # result_two = TheoryResult.new(StringToTheory.run(
211
+ # "if((var5.history2(var2[var4][:params]).any? { |x| x['statement_id'] == var1.last.statement_id })==false)\nreturn true\nend"
212
+ # ))
213
+ # Theory.new(
214
+ # [dependent_one,dependent_two],
215
+ # action,
216
+ # [result_one,result_two]
217
+ # )
218
+ # !
219
219
 
220
- # Save the declaration (incase the theory needs modified
221
- declaration_file = File.open(File.join(directory_path,'declaration.txt'),'w+')
222
- declaration_file << declaration
223
- declaration_file.close
220
+ # # Save the declaration (incase the theory needs modified
221
+ # declaration_file = File.open(File.join(directory_path,'declaration.txt'),'w+')
222
+ # declaration_file << declaration
223
+ # declaration_file.close
224
224
 
225
- theory = eval declaration
226
- data = Marshal.dump(theory)
225
+ # theory = eval declaration
226
+ # data = Marshal.dump(theory)
227
227
 
228
- # TODO Shouldn't include colours for this description
229
- desc_file = File.open(File.join(directory_path,'desc'),'w+')
230
- desc_file << theory.describe
231
- desc_file.close
228
+ # # TODO Shouldn't include colours for this description
229
+ # desc_file = File.open(File.join(directory_path,'desc'),'w+')
230
+ # desc_file << theory.describe
231
+ # desc_file.close
232
232
 
233
- dump_file = File.open(File.join(directory_path,'dump'),'w+')
234
- dump_file << data
235
- dump_file.close
233
+ # dump_file = File.open(File.join(directory_path,'dump'),'w+')
234
+ # dump_file << data
235
+ # dump_file.close
236
236
 
237
- end
237
+ # end
238
238
 
239
- desc "Re create the current theories and update their Marshal dump"
240
- task :rebuild do
239
+ # desc "Re create the current theories and update their Marshal dump"
240
+ # task :rebuild do
241
241
 
242
- file_list = FileList.new('test/fixtures/theories/*')
243
- file_list.each do |x|
244
- theory_id = x.match(/\d+$/)[0].to_i
245
- directory_path = File.join('test','fixtures','theories',theory_id.to_s)
246
- declaration = File.open(File.join(directory_path,'declaration.txt'),'r').read
242
+ # file_list = FileList.new('test/fixtures/theories/*')
243
+ # file_list.each do |x|
244
+ # theory_id = x.match(/\d+$/)[0].to_i
245
+ # directory_path = File.join('test','fixtures','theories',theory_id.to_s)
246
+ # declaration = File.open(File.join(directory_path,'declaration.txt'),'r').read
247
247
 
248
- # Save the declaration (incase the theory needs modified
249
- declaration_file = File.open(File.join(directory_path,'declaration.txt'),'w+')
250
- declaration_file << declaration
251
- declaration_file.close
248
+ # # Save the declaration (incase the theory needs modified
249
+ # declaration_file = File.open(File.join(directory_path,'declaration.txt'),'w+')
250
+ # declaration_file << declaration
251
+ # declaration_file.close
252
252
 
253
- theory = eval declaration
254
- data = Marshal.dump(theory)
253
+ # theory = eval declaration
254
+ # data = Marshal.dump(theory)
255
255
 
256
- desc_file = File.open(File.join(directory_path,'desc'),'w+')
257
- desc_file << theory.write
258
- desc_file.close
256
+ # desc_file = File.open(File.join(directory_path,'desc'),'w+')
257
+ # desc_file << theory.write
258
+ # desc_file.close
259
259
 
260
- dump_file = File.open(File.join(directory_path,'dump'),'w+')
261
- dump_file << data
262
- dump_file.close
260
+ # dump_file = File.open(File.join(directory_path,'dump'),'w+')
261
+ # dump_file << data
262
+ # dump_file.close
263
263
 
264
- end
264
+ # end
265
265
 
266
- end
266
+ # end
267
267
 
268
- end
268
+ # end
269
269
 
270
- end
270
+ # end