nuget_helper 1.0.0 → 1.0.1

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
- SHA1:
3
- metadata.gz: 950599a0150850fa1c92062930a9a70fac8cc558
4
- data.tar.gz: 51663a88008e657cae46a8b3916ce0560d2c7391
2
+ SHA256:
3
+ metadata.gz: 35fd7d051e4dc0b5637b7113156450b529655ff1d85d1ef37ffeff6ebb9e5b63
4
+ data.tar.gz: dae10f9d85ea944ae8b741bb24422dbc2b01e8b5afb7456db560617e77662bff
5
5
  SHA512:
6
- metadata.gz: ea9164f05c1bd0c7c6233d836d1325060d24d89a66d23ae730dc912cc08d8171102558b23604923dace2c422e1aca3cf7ab70d0f185659b0c1f65c0cacb0112a
7
- data.tar.gz: 4e040a2156cfb945672038075d8ffebd1c236d45c8acbfa1ec0f13577a3369f7ceb9cf5e3f98911b8d5f186078442ffb7972b6798f8bc01d7c8614ef1e39f1d6
6
+ metadata.gz: 865bcfe112d2758d2976c7ac372687a07dd069718fd6a714634b89cd9f601f22832a9a52307c1567f46a8bdfd1e43464192cf09e846305d825e290b39b384091
7
+ data.tar.gz: 38e0bbba5d73b8c6edceaa8a92c0c74e58ff2cd5d891a8f0acf74af29bf9270f92268240d9b8bf6a7686ce96cccd78ea4fa82f32edaa296629fe69c0c5be5506
@@ -1,9 +1,11 @@
1
1
  require_relative "./nuget_helper/version"
2
2
  require_relative "./nuget_helper/nuspec"
3
3
  require "open3"
4
- require "semver"
4
+ require "xsemver"
5
5
 
6
6
  module NugetHelper
7
+ include XSemVer
8
+
7
9
  def self.exec(parameters)
8
10
  spec = Gem::Specification.find_by_name("nuget")
9
11
  command = File.join(spec.gem_dir, "bin", "nuget.exe")
@@ -46,6 +48,10 @@ module NugetHelper
46
48
  self.command_path('nspec', 'NSpecRunner.exe')
47
49
  end
48
50
 
51
+ def self.semver_fromassembly_path
52
+ self.command_path('SemVer.FromAssembly', 'SemVer.FromAssembly.exe')
53
+ end
54
+
49
55
  def self.run_tool(command, parameters=nil)
50
56
  system( to_shell_string( command, parameters))
51
57
  end
@@ -1,5 +1,6 @@
1
1
  require "nokogiri"
2
- require "semver"
2
+ require 'xsemver'
3
+
3
4
  module NugetHelper
4
5
  class NuSpec
5
6
  attr_reader :nuspec_path_base, :nuspec_filename, :nuspec_xml_node
@@ -12,7 +13,7 @@ module NugetHelper
12
13
  end
13
14
  def version
14
15
  el = @nuspec_xml_node.xpath("/package/metadata/version")
15
- SemVer.parse(el.text)
16
+ XSemVer::SemVer.parse(el.text)
16
17
  end
17
18
  end
18
19
  end
@@ -1,3 +1,3 @@
1
1
  module NugetHelper
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.1"
3
3
  end
@@ -17,10 +17,10 @@ Gem::Specification.new do |spec|
17
17
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
18
  spec.require_paths = ["lib"]
19
19
 
20
- spec.add_development_dependency "bundler", "~> 1.7"
21
- spec.add_development_dependency "rake", "~> 10.0"
20
+ spec.add_development_dependency "bundler", "~> 2.0"
21
+ spec.add_development_dependency "rake", "~> 12"
22
22
  spec.add_development_dependency 'rspec', '>= 3.2'
23
- spec.add_dependency "nuget", '~> 2.8.50126.400'
23
+ spec.add_dependency "nuget", '~> 3.4.4'
24
24
  spec.add_dependency 'semver2', '~> 3.4'
25
25
  spec.add_dependency 'nokogiri', '~> 1.5' # used to manipulate and read *nuspec files
26
26
 
@@ -5,4 +5,5 @@
5
5
  <package id="xunit.runners" version="1.9.2" />
6
6
  <package id="Machine.Specifications.Runner.Console" version="0.9.0" />
7
7
  <package id="nspec" version="0.9.68" />
8
+ <package id="SemVer.FromAssembly" version="0.0.8" />
8
9
  </packages>
@@ -0,0 +1,40 @@
1
+ require_relative 'spec_helper'
2
+ require "tmpdir"
3
+ require "fileutils"
4
+ require "securerandom"
5
+ $vs_2013_solution = File.join(File.dirname(__FILE__), "Vs2013Solution", "Vs2013Solution.sln")
6
+
7
+ def magnitude_next_nuget_version(package_name, next_dll)
8
+ begin
9
+ tmp = File.join(Dir.tmpdir, SecureRandom.hex)
10
+ NugetHelper.exec("install '#{package_name}' -o #{tmp} ")
11
+ orig = Dir.glob( File.join(tmp, "**", File.basename(next_dll)) ).first
12
+ path_to_package = Dir.glob( File.join(tmp, "*") ).first
13
+ v = SemVer.parse(path_to_package)
14
+ m = NugetHelper.run_tool_with_result(NugetHelper.semver_fromassembly_path, " --magnitude #{orig} #{next_dll}").strip
15
+ case m
16
+ when 'Patch'
17
+ v.patch += 1
18
+ [:patch, v]
19
+ when 'Major'
20
+ v.major += 1
21
+ [:major, v]
22
+ when 'Minor'
23
+ v.minor += 1
24
+ [:minor, v]
25
+ end
26
+ ensure
27
+ FileUtils.rm_rf(tmp)
28
+ end
29
+ end
30
+
31
+ describe "magnitude_next_nuget_version" do
32
+ before(:all) do
33
+ NugetHelper.exec("restore #{$vs_2013_solution}")
34
+ end
35
+ xit "can give next version" do
36
+ m, v = magnitude_next_nuget_version "SemVer.FromAssembly", NugetHelper.semver_fromassembly_path
37
+ expect(m).to be :patch
38
+ expect(v).to eq SemVer.new(0,0,9) # this is ugly, but will do for now
39
+ end
40
+ end
@@ -1,7 +1,10 @@
1
1
  require_relative 'spec_helper'
2
- $vs_2013_solution = File.join(File.dirname(__FILE__), "Vs2013Solution", "Vs2013Solution.sln")
2
+ require 'xsemver'
3
3
 
4
+ $vs_2013_solution = File.join(File.dirname(__FILE__), "Vs2013Solution", "Vs2013Solution.sln")
5
+ $nunit_dll_path = File.join(File.dirname(__FILE__), "Vs2013Solution", "packages","NUnit.2.6.4","lib","nunit.framework.dll" )
4
6
  describe "NugetHelper" do
7
+ include XSemVer
5
8
  describe "execute system nuget" do
6
9
  it "can restore packages" do
7
10
  NugetHelper.exec("restore #{$vs_2013_solution}")
@@ -65,6 +68,15 @@ describe "NugetHelper" do
65
68
  expect(c).to be true
66
69
  expect($?.exitstatus).to be 0
67
70
  end
71
+
72
+ it "can run semver from assembly runner" do
73
+ cmd = NugetHelper.semver_fromassembly_path
74
+ file = $nunit_dll_path
75
+ c = NugetHelper.run_tool cmd, " --magnitude #{file} #{file}"
76
+ expect(c).to be true
77
+ expect($?.exitstatus).to be 0
78
+ end
79
+
68
80
  end
69
81
  end
70
82
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nuget_helper
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oskar Gewalli
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-27 00:00:00.000000000 Z
11
+ date: 2020-02-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.7'
19
+ version: '2.0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.7'
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '12'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '12'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 2.8.50126.400
61
+ version: 3.4.4
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 2.8.50126.400
68
+ version: 3.4.4
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: semver2
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -122,6 +122,7 @@ files:
122
122
  - spec/Vs2013Solution/ClassLibraryWithDependency/packages.config
123
123
  - spec/Vs2013Solution/Vs2013Solution.sln
124
124
  - spec/get_version_of_spec.rb
125
+ - spec/next_version_spec.rb
125
126
  - spec/nuget_exec_spec.rb
126
127
  - spec/nuspec_spec.rb
127
128
  - spec/nuspecs/example.nuspec
@@ -145,8 +146,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
145
146
  - !ruby/object:Gem::Version
146
147
  version: '0'
147
148
  requirements: []
148
- rubyforge_project:
149
- rubygems_version: 2.4.5.1
149
+ rubygems_version: 3.0.6
150
150
  signing_key:
151
151
  specification_version: 4
152
152
  summary: Helper Gem to simplify work with nuget.
@@ -158,6 +158,7 @@ test_files:
158
158
  - spec/Vs2013Solution/ClassLibraryWithDependency/packages.config
159
159
  - spec/Vs2013Solution/Vs2013Solution.sln
160
160
  - spec/get_version_of_spec.rb
161
+ - spec/next_version_spec.rb
161
162
  - spec/nuget_exec_spec.rb
162
163
  - spec/nuspec_spec.rb
163
164
  - spec/nuspecs/example.nuspec