Commit Graph

97 Commits

Author SHA1 Message Date
Matyáš Kříž 233a04fda5 Add `debugMode` capability to `Tokenizer` to output less information in debug mode. 2019-01-24 11:08:16 +01:00
Matyáš Kříž f9f947fc5b Ignore classes marked as `final`. 2019-01-24 11:08:16 +01:00
Matyáš Kříž aa0b7ec77a Use older string subscripting to compile on Xcode 9. 2019-01-24 11:08:16 +01:00
Matyáš Kříž 04c9db0400 Generate attributes for methods and variables. 2019-01-24 11:08:16 +01:00
Matyáš Kříž 5867e24421 Add basic attribute generation. 2019-01-24 11:07:08 +01:00
Matyáš Kříž 1b77516e83 Generate attributes. 2019-01-24 11:07:08 +01:00
Matyáš Kříž 2f6ab41bbc Add `@available` attribute support. 2019-01-24 11:05:37 +01:00
Matyáš Kříž 2961debaba Transform IUO return value as well. 2019-01-24 11:04:30 +01:00
Matyáš Kříž 7ad094cf78 Transform IUO into `Optional` to prevent errors. 2019-01-24 11:04:30 +01:00
Matyáš Kříž 9d6ecf889c Add class accessibility to required places. 2018-11-09 13:36:48 +01:00
Matyáš Kříž d29ab5f839 Show class accessibility. 2018-11-09 13:36:48 +01:00
Matyáš Kříž acf338e4a1 Fix two bugs introduced by code cleaning. 2018-11-09 13:36:14 +01:00
Matyáš Kříž 5c3c305216 Coalesce to `false` if there are no attributes. 2018-11-05 17:29:05 +01:00
Matyáš Kříž b22502a82b Bring back `fallthrough`. 2018-11-05 16:29:04 +01:00
Matyáš Kříž c558179b33 Don’t generate comments if not in debug mode. 2018-11-05 16:25:10 +01:00
Matyáš Kříž 231216b588 Code cleaning. 2018-11-05 15:12:00 +01:00
Tadeas Kriz fa8231105a Fix escaping closure (crashing in Xcode 10). 2018-10-09 13:52:37 +02:00
Tadeas Kriz 12f9bac435 Fix warnings. 2018-10-09 13:52:23 +02:00
Marek Slavik 0fc242dcec Make project compilable. 2018-09-27 15:24:52 +02:00
Tadeas Kriz c6baeda34c Add first draft of a new Mock initialization DSL. 2018-07-06 15:39:08 +02:00
Tadeas Kriz 59f2240831 Reintroduce support for pre-0.11.0 Cuckoo spies. 2018-06-05 16:35:51 +02:00
Matyáš Kříž 0a5c4f7f1d Remake `ContainerToken` filtering to be more effective and easier to add more filters in the future. (@TadeasKriz) 2018-04-27 13:55:28 +02:00
Matyáš Kříž 76472af91e Add regular expression `class` and `protocol` matching. 2018-04-27 13:55:28 +02:00
Matyáš Kříž 3793af312a Add `glob` switch that parses input paths as globs enabling for easier project scaling. 2018-04-27 13:55:28 +02:00
Matyáš Kříž 682619c35f Use `Switch` instead of `Option`. 2018-04-06 20:01:30 +02:00
Matyáš Kříž bee9b97bf0 Add a debug flag that generates general info above methods when used. 2018-04-06 19:38:00 +02:00
Gyuri Grell ace61bb081 The sort of input files occurred to soon
* The files input via options are mapped to Path objects then sorted. This actually happened too soon, since the array is then converted to a Set, then converted back to an Array. The Set conversion changes the order (since it is unordered) and those we lost the effect of the sort. I move the sort to the correct place, which is on the outermost Array so that the inputPathValues array is now correctly sorted.
2018-03-23 18:18:37 +01:00
Gyuri Grell f5093adcae Fixes a regression introduced in 96ebbbf
* There was an attempt to make the file order deterministic, but the sorting that was added only worked if all mocks were generated in a single file. If generated to a path, which creates a file per mock, the filenames and the file contents did not match. Solution was to sort the set of paths passed in as options instead, moving the sorting a little earlier than before.
2018-02-21 10:08:02 +01:00
Arjan Duijzer f0f31bd0e9 Adding support for overloaded method names 2017-12-29 10:55:11 +01:00
Tadeas Kriz 0f52ceef7e Add a few more tests. 2017-11-15 00:16:23 +01:00
Tadeas Kriz 8e49eefd4d Remove TemplateEncoder and change Spy behavior. 2017-11-14 22:24:18 +01:00
Ian Keen 96ebbbf9ca Fix nondeterministic handling of input files 2017-11-09 11:23:02 +01:00
Tadeas Kriz 2bf60e5dc1 Double the maximum of parameters for `call` and `callThrows`. 2017-10-17 15:25:11 +02:00
Tadeas Kriz 52dcdbf17f Fix #151. 2017-10-17 11:55:16 +02:00
KaosDG 75be1e38d7 Adjusted the logic for determining if a closure is implicitly escaping (optional closure)
Adjusted the nested Closure logic so that we can pass whether the parent method `throws`
Adjusted the Mock.swift.stencil to account for the above, and some cleanup
Added a few more test cases in TestedSubclass.swift for closures that throw, etc.
2017-10-02 19:40:03 +02:00
KaosDG 85da0d9fb1 added open/close nested closure filters for the withoutActuallyEscaping(…) portion.
cleaned up the mock stencil a little.
added a sample multi-closure method
2017-10-02 19:40:03 +02:00
KaosDG dec5e08c1e fixes some deprecation warnings, and another attempt at writing good closures. 2017-10-02 19:40:03 +02:00
KaosDG 4ca15ff61d working on the generated mocks.
Closures are a problem :(
2017-10-02 19:40:03 +02:00
KaosDG 725e30ef3f Updating Cuckoo for Swift 4.0
- Created new swift 4 Package, and updated to latest API.
- Updated package dependencies.  Note: FileKit points to /develop branch, this should be updated once a Sweift 4 version is released.
- Required code changes to build in Swift-4.0
2017-10-02 19:40:03 +02:00
Tadeas Kriz d9b2614d2b Update template. 2017-04-27 16:26:52 +02:00
Tadeas Kriz 12e8cdcc8b Fix #118. 2017-04-27 15:36:26 +02:00
Tadeas Kriz 9c09ea19d8 Fix crash when using non-ASCII characters. 2017-04-27 14:46:58 +02:00
Arjan Duijzer 8d09211853 Add option to exclude classes and/or protocols from mock generation 2017-04-25 23:13:04 +02:00
Arjan Duijzer e2e7928018 Typo oprional -> optional 2017-04-25 22:46:01 +02:00
Tadeas Kriz 25c061a489 Fix build timeouting. 2017-04-25 18:02:57 +02:00
Tadeas Kriz a11123f502 Fix build issue where `.build` was deleted on `pod install. 2017-04-17 19:54:44 +02:00
Tadeas Kriz 2f90d0276a Add to compilable and green test state. 2017-04-02 18:03:31 +02:00
Tadeas Kriz b035408a6b WIP: Add objc support. 2017-02-24 20:07:52 +01:00
Tadeas Kriz fe13945a78 Remove old generator methods. 2017-02-24 18:37:50 +01:00
Tadeas Kriz 61ab7df415 Fix issues from merge. 2017-02-24 18:08:58 +01:00