fwtoolkit 2.3.2 → 2.3.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '019162ac50c1af63fa6b1ff17c1bceafaf93fabbd8f67bfa38853e5ebd5ce45c'
4
- data.tar.gz: c0e43f9f2cb8d7d7147c9a6bac3b38dbaff8de637567a2898667cc9fff71eb3a
3
+ metadata.gz: aa49fa07517de5e9f57dbb7365950f955663db8bb7605011e244e4d10dcb343d
4
+ data.tar.gz: 38e0e62b1f4c6778c1dba90a18e2069d20ba068e0d71c8d1a4664dc5fa4e0106
5
5
  SHA512:
6
- metadata.gz: 7d8c40a7fd54421e5104ae0231d1731d4bce0f5bea66a153fd683a60b39e272427b84c5f38e036a828ca4549b7554f4656506c6ea4f6bad7d79352ac5cabe7f3
7
- data.tar.gz: c45cf4ae466ff16db10e9d1c8ab3491d3ca35068b93b05e5b03ca8fd91004fd75cca9d3a20e0796e2f7ff870880be229a53bcc24f67bd7077c871c09db2ef60a
6
+ metadata.gz: 22ec8684f5efa4c3a6bb8f0835047f3ff4f9dab27956a1600ccaf05a54f7f629ce01ee29a6dbe2656049f6deef988357e398d639db58054e6a74aeff54947cfd
7
+ data.tar.gz: 6cb1def635dc8e8bf53e0bbd428e16e9d832eea8b5c7a56f367687ebec3f56c30a9c4fbd1804a30dfff2d5e99f01a5d674c4d908c12c2e1a9c42d581c89f614b
@@ -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/Supporting Files/Settings.bundle |
17
- | MyProject/Myproject/Supporting Files/en.lproj |
18
- | MyProject/MyprojectTests/Supporting Files/en.lproj |
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/Supporting Files/MyProject-Info.plist |
23
- | MyProject/MyProject/Supporting Files/MyProject-Prefix.pch |
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/MyProject/Supporting Files/version.sh |
27
- | MyProject/MyProjectTests/Supporting Files/MyProjectTests-Info.plist |
28
- | MyProject/MyProjectTests/MyProjectTests.h |
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
- destination_root = File.join(Dir.pwd, project_name)
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, project_name]
43
+ invoke FWToolkit::Bitrise, 'new', [destination_root, clean_project_name]
42
44
 
43
- invoke FWToolkit::Xcode, 'new', [project_language, project_name, class_prefix.upcase, File.join(Dir.pwd, project_name)]
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
@@ -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
@@ -1,3 +1,3 @@
1
1
  module FWToolkit
2
- VERSION = "2.3.2"
2
+ VERSION = "2.3.3"
3
3
  end
@@ -88,7 +88,7 @@ workflows:
88
88
  - EXPORT_TYPE: app-store
89
89
  opts:
90
90
  is_expand: true
91
- - CODESIGN_IDENTITY: 'iPhone Distribution: Future Workshops Ltd (F94732585Z)'
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: 'iPhone Distribution: Future Workshops Ltd (F94732585Z)'
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: 'iPhone Distribution: Future Workshops Ltd (F94732585Z)'
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: 'iPhone Distribution: Future Workshops Ltd (F94732585Z)'
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
- [Finishes #<PIVOTAL_TASK_NUMBER>]
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.2
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-01-21 00:00:00.000000000 Z
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
-