fwtoolkit 2.3.2 → 2.3.3
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.
- checksums.yaml +4 -4
- data/features/git/create.feature +0 -8
- data/features/xcode/create.feature +9 -23
- data/lib/fwtoolkit/cli.rb +2 -0
- data/lib/fwtoolkit/cli/project.rb +5 -3
- data/lib/fwtoolkit/cli/xcode.rb +1 -1
- data/lib/fwtoolkit/projectfile.rb +0 -2
- data/lib/fwtoolkit/version.rb +1 -1
- data/templates/bitrise/bitrise.yml.tt +2 -2
- data/templates/default_project/bitrise/bitrise.yml.tt +2 -2
- data/templates/default_project/git/.github/PULL_REQUEST_TEMPLATE.md +6 -3
- metadata +2 -8
- data/features/cocoapods/setup.feature +0 -60
- data/features/frank/model.feature +0 -20
- data/features/frank/setup.feature +0 -28
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aa49fa07517de5e9f57dbb7365950f955663db8bb7605011e244e4d10dcb343d
|
4
|
+
data.tar.gz: 38e0e62b1f4c6778c1dba90a18e2069d20ba068e0d71c8d1a4664dc5fa4e0106
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 22ec8684f5efa4c3a6bb8f0835047f3ff4f9dab27956a1600ccaf05a54f7f629ce01ee29a6dbe2656049f6deef988357e398d639db58054e6a74aeff54947cfd
|
7
|
+
data.tar.gz: 6cb1def635dc8e8bf53e0bbd428e16e9d832eea8b5c7a56f367687ebec3f56c30a9c4fbd1804a30dfff2d5e99f01a5d674c4d908c12c2e1a9c42d581c89f614b
|
data/features/git/create.feature
CHANGED
@@ -19,11 +19,3 @@ Feature: Create a git repo
|
|
19
19
|
"""
|
20
20
|
There's already a repository at path
|
21
21
|
"""
|
22
|
-
@slow
|
23
|
-
Scenario: Create a git repository on a folder with files in it
|
24
|
-
Given a directory named "my_project"
|
25
|
-
Given a valid .gitignore file exists inside a directory named "my_project"
|
26
|
-
Given the directory "my_project" contains an uncommitted file named "my_file.c"
|
27
|
-
When I successfully run `fwt git new my_project`
|
28
|
-
Then an initialized git repository should exists inside a directory named "my_project"
|
29
|
-
And the file named "my_file.c" should have been committed to the repository at path "my_project"
|
@@ -8,35 +8,21 @@ Feature: Create new project
|
|
8
8
|
|
9
9
|
@xcode
|
10
10
|
Scenario: Create a new project
|
11
|
-
When I successfully run `fwt xcode new MyProject AAA`
|
11
|
+
When I successfully run `fwt xcode new objc MyProject AAA`
|
12
12
|
Then I cd to "MyProject"
|
13
13
|
And the following directories should exist:
|
14
14
|
| MyProject.xcworkspace |
|
15
15
|
| MyProject/MyProject.xcodeproj |
|
16
|
-
| MyProject/MyProject/
|
17
|
-
| MyProject/
|
18
|
-
| MyProject/
|
16
|
+
| MyProject/MyProject/Resources/Assets.xcassets |
|
17
|
+
| MyProject/MyProject/Resources/Assets.xcassets/AppIcon.appiconset |
|
18
|
+
| MyProject/MyProject/Resources/Base.lproj |
|
19
19
|
And the following files should exist:
|
20
20
|
| MyProject/MyProject/AAAAppDelegate.h |
|
21
21
|
| MyProject/MyProject/AAAAppDelegate.m |
|
22
|
-
| MyProject/MyProject
|
23
|
-
| MyProject/MyProject/Supporting Files/
|
22
|
+
| MyProject/MyProject.entitlements |
|
23
|
+
| MyProject/MyProject/Supporting Files/Info.plist |
|
24
24
|
| MyProject/MyProject/Supporting Files/fw-shared.xcconfig |
|
25
25
|
| MyProject/MyProject/Supporting Files/main.m |
|
26
|
-
| MyProject/
|
27
|
-
| MyProject/MyProjectTests/
|
28
|
-
|
29
|
-
| MyProject/MyProjectTests/MyProjectTests.m |
|
30
|
-
| MyProject/Resources/Default.png |
|
31
|
-
| MyProject/Resources/Default@2x.png |
|
32
|
-
| MyProject/Resources/Default-568h@2x.png |
|
33
|
-
And I successfully run `xcodebuild -scheme MyProject -workspace MyProject.xcworkspace -sdk iphonesimulator6.0`
|
34
|
-
|
35
|
-
@xcode
|
36
|
-
Scenario: Fails to create a new project is the project dir is not empty
|
37
|
-
Given a directory named "MyProject"
|
38
|
-
When I run `fwt xcode new MyProject AAA`
|
39
|
-
Then the stderr should contain:
|
40
|
-
"""
|
41
|
-
Can't create the project. The directory
|
42
|
-
"""
|
26
|
+
| MyProject/MyProjectTests/Resources/Info.plist |
|
27
|
+
| MyProject/MyProjectTests/AAAMyProjectTests.m |
|
28
|
+
And I successfully run `xcodebuild -scheme MyProject -workspace MyProject.xcworkspace -sdk iphonesimulator`
|
data/lib/fwtoolkit/cli.rb
CHANGED
@@ -24,6 +24,8 @@ module FWToolkit
|
|
24
24
|
|
25
25
|
register FWToolkit::Bitrise, 'bitrise', 'bitrise SUBCOMMAND ...ARG', 'Create bitrise configuration files'
|
26
26
|
register FWToolkit::Project, 'proj', 'proj SUBCOMMAND ...ARG', 'Create projects and manage settings'
|
27
|
+
register FWToolkit::Xcode, 'xcode', 'xcode SUBCOMMAND ...ARG', 'Create Xcode projects'
|
28
|
+
register FWToolkit::Git, 'git', 'git SUBCOMMAND ...ARG', 'Git operations'
|
27
29
|
end
|
28
30
|
end
|
29
31
|
|
@@ -32,15 +32,17 @@ module FWToolkit
|
|
32
32
|
return
|
33
33
|
end
|
34
34
|
|
35
|
-
|
35
|
+
clean_project_name = project_name.gsub("-", "_")
|
36
|
+
|
37
|
+
destination_root = File.join(Dir.pwd, clean_project_name)
|
36
38
|
|
37
39
|
say "Creating new project in: #{File.expand_path destination_root}"
|
38
40
|
|
39
41
|
invoke :conf_gemset, [destination_root]
|
40
42
|
|
41
|
-
invoke FWToolkit::Bitrise, 'new', [destination_root,
|
43
|
+
invoke FWToolkit::Bitrise, 'new', [destination_root, clean_project_name]
|
42
44
|
|
43
|
-
invoke FWToolkit::Xcode, 'new', [project_language,
|
45
|
+
invoke FWToolkit::Xcode, 'new', [project_language, clean_project_name, class_prefix.upcase, File.join(Dir.pwd, clean_project_name)]
|
44
46
|
invoke FWToolkit::Cocoapods, 'install', [destination_root]
|
45
47
|
|
46
48
|
git_repo = GitClient::Repository.new destination_root
|
data/lib/fwtoolkit/cli/xcode.rb
CHANGED
@@ -25,7 +25,7 @@ module FWToolkit
|
|
25
25
|
include FWToolkit::ThorUtils
|
26
26
|
source_root_templates!
|
27
27
|
|
28
|
-
desc "new [PROJECT_NAME] [CLASS_PREFIX]", "Create a new Xcode project with FW's settings"
|
28
|
+
desc "new [LANGUAGE] [PROJECT_NAME] [CLASS_PREFIX]", "Create a new Xcode project with FW's settings"
|
29
29
|
def new(project_language, project_name, class_prefix, root_dir=File.join(Dir.pwd, project_name))
|
30
30
|
say 'Creating Xcode project'
|
31
31
|
destination_root = root_dir
|
@@ -42,8 +42,6 @@ module FWToolkit
|
|
42
42
|
d[:xcode_project] = "#{File.join(conf_hash[:project_name], conf_hash[:project_name])}.xcodeproj"
|
43
43
|
d[:source_root] = File.join conf_hash[:project_name], d[:target_name]
|
44
44
|
d[:tests_source_root] = File.join conf_hash[:project_name], d[:tests_target_name]
|
45
|
-
d[:frank_root] = File.join conf_hash[:project_name], d[:target_name], 'Frank'
|
46
|
-
d[:frankified_app] = File.join d[:frank_root], 'frankified_build', 'Frankified.app'
|
47
45
|
d
|
48
46
|
end
|
49
47
|
end
|
data/lib/fwtoolkit/version.rb
CHANGED
@@ -88,7 +88,7 @@ workflows:
|
|
88
88
|
- EXPORT_TYPE: app-store
|
89
89
|
opts:
|
90
90
|
is_expand: true
|
91
|
-
- CODESIGN_IDENTITY: '
|
91
|
+
- CODESIGN_IDENTITY: 'Apple Distribution: Future Workshops Ltd (F94732585Z)'
|
92
92
|
opts:
|
93
93
|
is_expand: true
|
94
94
|
- KEYCHAIN_NAME: fw_ltd.p12
|
@@ -124,7 +124,7 @@ workflows:
|
|
124
124
|
- EXPORT_TYPE: app-store
|
125
125
|
opts:
|
126
126
|
is_expand: true
|
127
|
-
- CODESIGN_IDENTITY: '
|
127
|
+
- CODESIGN_IDENTITY: 'Apple Distribution: Future Workshops Ltd (F94732585Z)'
|
128
128
|
opts:
|
129
129
|
is_expand: true
|
130
130
|
- KEYCHAIN_NAME: fw_ltd.p12
|
@@ -88,7 +88,7 @@ workflows:
|
|
88
88
|
- EXPORT_TYPE: app-store
|
89
89
|
opts:
|
90
90
|
is_expand: true
|
91
|
-
- CODESIGN_IDENTITY: '
|
91
|
+
- CODESIGN_IDENTITY: 'Apple Distribution: Future Workshops Ltd (F94732585Z)'
|
92
92
|
opts:
|
93
93
|
is_expand: true
|
94
94
|
- KEYCHAIN_NAME: fw_ltd.p12
|
@@ -124,7 +124,7 @@ workflows:
|
|
124
124
|
- EXPORT_TYPE: app-store
|
125
125
|
opts:
|
126
126
|
is_expand: true
|
127
|
-
- CODESIGN_IDENTITY: '
|
127
|
+
- CODESIGN_IDENTITY: 'Apple Distribution: Future Workshops Ltd (F94732585Z)'
|
128
128
|
opts:
|
129
129
|
is_expand: true
|
130
130
|
- KEYCHAIN_NAME: fw_ltd.p12
|
@@ -1,5 +1,8 @@
|
|
1
|
-
[
|
2
|
-
|
1
|
+
<!-- You can associate this PR to a Jira task, by adding, for example [SBA-8931] to the description. -->
|
2
|
+
<!-- The jira automation will create a link over all this text -->
|
3
|
+
|
4
|
+
[Jira Task code]
|
5
|
+
|
3
6
|
<Task description>
|
4
7
|
|
5
8
|
**Steps to test:**
|
@@ -10,4 +13,4 @@
|
|
10
13
|
|
11
14
|
**Expected result:**
|
12
15
|
|
13
|
-
<A description of the expected results, after, and during the previous steps>
|
16
|
+
<A description of the expected results, after, and during the previous steps>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fwtoolkit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
4
|
+
version: 2.3.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Future Workshops
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-03-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec-rails
|
@@ -239,9 +239,6 @@ extensions: []
|
|
239
239
|
extra_rdoc_files: []
|
240
240
|
files:
|
241
241
|
- bin/fwt
|
242
|
-
- features/cocoapods/setup.feature
|
243
|
-
- features/frank/model.feature
|
244
|
-
- features/frank/setup.feature
|
245
242
|
- features/git/create.feature
|
246
243
|
- features/project/create.feature
|
247
244
|
- features/step_definitions/aruba_steps.rb
|
@@ -403,9 +400,6 @@ signing_key:
|
|
403
400
|
specification_version: 4
|
404
401
|
summary: Future Workshops project tools
|
405
402
|
test_files:
|
406
|
-
- features/cocoapods/setup.feature
|
407
|
-
- features/frank/model.feature
|
408
|
-
- features/frank/setup.feature
|
409
403
|
- features/git/create.feature
|
410
404
|
- features/project/create.feature
|
411
405
|
- features/step_definitions/aruba_steps.rb
|
@@ -1,60 +0,0 @@
|
|
1
|
-
Feature: Installing cocoapods
|
2
|
-
As a lead developer
|
3
|
-
In order to work with cocoapods in my project
|
4
|
-
I want my system to be configured correctly
|
5
|
-
|
6
|
-
@slow @pods
|
7
|
-
Scenario: Install and configure cocoapods for a user without cocoapods installed
|
8
|
-
Given I'm using a clean gemset "fwtoolkit_test" containing fwtoolkit.gem
|
9
|
-
And I'm using a clean home directory
|
10
|
-
And I force aruba-double path-hijacking
|
11
|
-
And I double `pod`
|
12
|
-
And I double `sudo`
|
13
|
-
And I double `git`
|
14
|
-
When I successfully run `fwt pods setup`
|
15
|
-
Then the double `sudo gem install cocoapods` should have been run
|
16
|
-
And a directory named "homedir/.cocoapods/fw" should exist
|
17
|
-
|
18
|
-
@slow @pods
|
19
|
-
Scenario: Configure fw's cocoapods for a user that has cocoapods already installed
|
20
|
-
Given I'm using a clean gemset "fwtoolkit_test" containing fwtoolkit.gem
|
21
|
-
And I'm using a clean home directory
|
22
|
-
And I force aruba-double path-hijacking
|
23
|
-
And I double the gem "cocoapods"
|
24
|
-
And I double `pod`
|
25
|
-
And I double `sudo`
|
26
|
-
When I successfully run `fwt pods setup`
|
27
|
-
Then the stdout should contain:
|
28
|
-
"""
|
29
|
-
Cocoapods is already installed
|
30
|
-
"""
|
31
|
-
And a directory named "homedir/.cocoapods/fw" should exist
|
32
|
-
|
33
|
-
@slow @pods
|
34
|
-
Scenario: Configure fw's cocoapods for a user that has messed up his/her installation
|
35
|
-
Given I'm using a clean gemset "fwtoolkit_test" containing fwtoolkit.gem
|
36
|
-
And I'm using a clean home directory
|
37
|
-
And a directory named ".cocoapods/fw" inside the home directory
|
38
|
-
And I force aruba-double path-hijacking
|
39
|
-
And I double `gem`
|
40
|
-
And I double `sudo`
|
41
|
-
When I successfully run `fwt pods setup`
|
42
|
-
Then the double `sudo gem install cocoapods` should have been run
|
43
|
-
And the stdout should contain:
|
44
|
-
"""
|
45
|
-
FW's podspec repository already installed
|
46
|
-
"""
|
47
|
-
|
48
|
-
@slow @pods
|
49
|
-
Scenario: Configure a project with Cocoapods
|
50
|
-
Given a directory named "MyProject"
|
51
|
-
And I double `bundle`
|
52
|
-
And I cd to "MyProject"
|
53
|
-
And an empty file named "Gemfile"
|
54
|
-
And I cd to ".."
|
55
|
-
When I successfully run `fwt pods install MyProject`
|
56
|
-
Then the file "MyProject/Gemfile" should contain:
|
57
|
-
"""
|
58
|
-
gem "Cocoapods"
|
59
|
-
"""
|
60
|
-
And the double `bundle exec pod install` should have been run
|
@@ -1,20 +0,0 @@
|
|
1
|
-
Feature: Create frank model from core data
|
2
|
-
As a lead developer working on a project
|
3
|
-
I want to generate ruby classes that mirror my CoreData model
|
4
|
-
So I can refer to core data entities from my Frank tests
|
5
|
-
|
6
|
-
Background:
|
7
|
-
Given a configured installation of FWToolkit for "Tom the Dev" working for "Awesome Company"
|
8
|
-
|
9
|
-
@frank
|
10
|
-
Scenario: generate ruby model from CoreData
|
11
|
-
Given an initialized FW iOS project named "MyProject"
|
12
|
-
And the project "MyProject" contains a valid CoreData model
|
13
|
-
When I run `fwt test model MyProject`
|
14
|
-
Then I cd to "MyProject"
|
15
|
-
And the following files should exist:
|
16
|
-
| MyProject/Frank/features/support/views/my_objects_json.erb |
|
17
|
-
| MyProject/Frank/features/support/views/my_objects_xml.erb |
|
18
|
-
| MyProject/Frank/features/support/models/factories.rb |
|
19
|
-
| MyProject/Frank/features/support/models/Ent1.rb |
|
20
|
-
| MyProject/Frank/features/support/models/Ent2.rb |
|
@@ -1,28 +0,0 @@
|
|
1
|
-
Feature: Frankifie a project
|
2
|
-
As a lead developer working on a project
|
3
|
-
I want a quick way to set up my project with frank
|
4
|
-
So I can add BDD tests to it
|
5
|
-
|
6
|
-
Background:
|
7
|
-
Given a configured installation of FWToolkit for "Tom the Dev" working for "Awesome Company"
|
8
|
-
|
9
|
-
@frank @no-clobber @test @announce
|
10
|
-
Scenario: setup an existing project
|
11
|
-
Given an initialized FW iOS project named "MyProject"
|
12
|
-
When I successfully run `fwt test setup MyProject`
|
13
|
-
Then I cd to "MyProject"
|
14
|
-
And the following files should exist:
|
15
|
-
| MyProject/MyProject/AAAAppDelegate+Frank.h |
|
16
|
-
| MyProject/MyProject/AAAAppDelegate+Frank.m |
|
17
|
-
| MyProject/Frank/Features/step_definitions/launch_steps.rb |
|
18
|
-
| MyProject/Frank/Features/support/env.rb |
|
19
|
-
| MyProject/Frank/Features/support/mimic.rb |
|
20
|
-
|
21
|
-
|
22
|
-
@frank @slom
|
23
|
-
Scenario: try to setup a project that already has frank
|
24
|
-
Given an initialized FW iOS project named "MyProject"
|
25
|
-
And I successfully run `fwt test setup MyProject`
|
26
|
-
When I run `fwt test setup MyProject`
|
27
|
-
Then the output should contain "Frank is already set up for the project"
|
28
|
-
|