mrubyc-test 0.3.0 → 0.5.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c31b74ac4ad811032a16bb95564665c6973640c2fa6787a05e23261fcab090b0
4
- data.tar.gz: 5cd106d0092c7b4ec2913002ec218c9349162b006d34753b758ad450d28e7fdf
3
+ metadata.gz: 01fd00e01ce7b93d321a0345e0f658a9a1e9da234c1527b337a9e3fcc3b3b5fd
4
+ data.tar.gz: 969827d51ef5b523fef3399174529b7ffaf73952d2011ef8c32a59afd80361f6
5
5
  SHA512:
6
- metadata.gz: 468f307d73c03d7fc9b9b76519ed1d1d89e6bc4713609e3f3177c5a621ff1666b2529d86a026900ea41c5bd7aca2de306a73a5ce8867f46ca0ad78565144c85f
7
- data.tar.gz: 4a04ad62d05bf7765dbe26ecfae09c96d23167e933e91260dbe636ce16454c89ff3d10b0d9f2feb90aee19a12b5735095b930933cd8f9250a3393753749130da
6
+ metadata.gz: a8ef624b18f81ec4a7071b11001fa55fdc059940a6358635fd86ec10c8537fc308cab9c5c29fba6252c3ee78996d3ccbe64078f3f22657b375cf91cbd933ab22
7
+ data.tar.gz: 466243707b3bd2f7f3c98c1b32d20c09607d72cb3b581b3b7f55e2b5544ec12df367e41c38b6fb3a2c7451e4e81dabc8bcfa9dd2112b3225d93dd113e50d348b
@@ -1,7 +1,8 @@
1
1
  ---
2
- sudo: false
3
2
  language: ruby
4
- cache: bundler
5
3
  rvm:
6
- - 2.6.0
7
- before_install: gem install bundler -v 2.0.1
4
+ - 2.7.0
5
+ before_install:
6
+ - gem install bundler -v 2.1.2
7
+ - bundle install
8
+ script: bundle exec rake spec
@@ -1,43 +1,45 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mrubyc-test (0.2.0)
5
- activesupport (~> 5.2)
6
- rufo (~> 0.4)
7
- thor (~> 0.20)
4
+ mrubyc-test (0.5.2)
5
+ activesupport (~> 6.0)
6
+ rufo (~> 0.12)
7
+ thor (~> 1.0)
8
8
 
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- activesupport (5.2.2)
12
+ activesupport (6.0.3.1)
13
13
  concurrent-ruby (~> 1.0, >= 1.0.2)
14
14
  i18n (>= 0.7, < 2)
15
15
  minitest (~> 5.1)
16
16
  tzinfo (~> 1.1)
17
- concurrent-ruby (1.1.4)
17
+ zeitwerk (~> 2.2, >= 2.2.2)
18
+ concurrent-ruby (1.1.6)
18
19
  diff-lcs (1.3)
19
- i18n (1.5.1)
20
+ i18n (1.8.2)
20
21
  concurrent-ruby (~> 1.0)
21
- minitest (5.11.3)
22
- rake (10.5.0)
23
- rspec (3.8.0)
24
- rspec-core (~> 3.8.0)
25
- rspec-expectations (~> 3.8.0)
26
- rspec-mocks (~> 3.8.0)
27
- rspec-core (3.8.0)
28
- rspec-support (~> 3.8.0)
29
- rspec-expectations (3.8.2)
22
+ minitest (5.14.1)
23
+ rake (13.0.1)
24
+ rspec (3.9.0)
25
+ rspec-core (~> 3.9.0)
26
+ rspec-expectations (~> 3.9.0)
27
+ rspec-mocks (~> 3.9.0)
28
+ rspec-core (3.9.2)
29
+ rspec-support (~> 3.9.3)
30
+ rspec-expectations (3.9.2)
30
31
  diff-lcs (>= 1.2.0, < 2.0)
31
- rspec-support (~> 3.8.0)
32
- rspec-mocks (3.8.0)
32
+ rspec-support (~> 3.9.0)
33
+ rspec-mocks (3.9.1)
33
34
  diff-lcs (>= 1.2.0, < 2.0)
34
- rspec-support (~> 3.8.0)
35
- rspec-support (3.8.0)
36
- rufo (0.4.1)
37
- thor (0.20.3)
35
+ rspec-support (~> 3.9.0)
36
+ rspec-support (3.9.3)
37
+ rufo (0.12.0)
38
+ thor (1.0.1)
38
39
  thread_safe (0.3.6)
39
- tzinfo (1.2.5)
40
+ tzinfo (1.2.7)
40
41
  thread_safe (~> 0.1)
42
+ zeitwerk (2.3.0)
41
43
 
42
44
  PLATFORMS
43
45
  ruby
@@ -45,8 +47,8 @@ PLATFORMS
45
47
  DEPENDENCIES
46
48
  bundler (~> 2.0)
47
49
  mrubyc-test!
48
- rake (~> 10.0)
49
- rspec (~> 3.0)
50
+ rake (~> 13.0)
51
+ rspec (~> 3.9)
50
52
 
51
53
  BUNDLED WITH
52
- 2.0.1
54
+ 2.1.2
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # mrubyc-test
2
2
 
3
+ [![Build Status](https://travis-ci.org/mrubyc/mrubyc-test.svg?branch=master)](https://travis-ci.org/mrubyc/mrubyc-test)
4
+
3
5
  mrubyc-test is an unit test framework for [mruby/c](https://github.com/mrubyc/mrubyc), supporting basic assertions, stub and mock.
4
6
 
5
7
  ## Acknowledgements
@@ -92,11 +94,9 @@ Assuming you have a model file at `mrblib/models/sample.rb`
92
94
 
93
95
  ```ruby
94
96
  class Sample
95
- def do_something
96
- attr_accessor :result
97
- def do_something(arg)
98
- @result = arg + still_not_defined_method
99
- end
97
+ attr_accessor :result
98
+ def do_something(arg)
99
+ @result = arg + still_not_defined_method
100
100
  end
101
101
  end
102
102
  ```
@@ -57,13 +57,19 @@ module Mrubyc::Test
57
57
  Dir.chdir(tmp_dir) do
58
58
  [
59
59
  "RBENV_VERSION=#{mruby_version} mrbc -E -B test test.rb",
60
- "cc #{ENV["CFLAGS"]} #{ENV["LDFLAGS"]} -I #{pwd}/#{config['mrubyc_src_dir']} -o test main.c #{pwd}/#{config['mrubyc_src_dir']}/*.c #{pwd}/#{config['mrubyc_src_dir']}/hal/*.c",
60
+ "RBENV_VERSION=#{mruby_version} mrbc -E -B models models.rb",
61
+ "cc -I #{pwd}/#{config['mrubyc_src_dir']} -o test main.c #{pwd}/#{config['mrubyc_src_dir']}/*.c #{pwd}/#{config['mrubyc_src_dir']}/hal/*.c #{ENV["CFLAGS"]} #{ENV["LDFLAGS"]}",
61
62
  "./test"].each do |cmd|
62
63
  puts cmd
63
64
  puts
64
65
  exit_code = system(cmd) ? 0 : 1
65
- exit(exit_code) if exit_code > 0
66
- end
66
+ if exit_code > 0
67
+ print "\e[31m"
68
+ puts "exit code: #{exit_code}"
69
+ puts "\e[0m"
70
+ exit(exit_code)
71
+ end
72
+ end
67
73
  end
68
74
  ensure
69
75
  FileUtils.rm hal_path
@@ -72,8 +78,8 @@ module Mrubyc::Test
72
78
  end
73
79
 
74
80
  def init_env
75
- ENV["CFLAGS"] ||= "-std=gnu99 -DMRBC_DEBUG -DMRBC_USE_MATH=1 -Wall"
76
- ENV["LDFLAGS"] ||= "-Wl,--no-as-needed -lm"
81
+ ENV["CFLAGS"] = "-std=gnu99 -Wall #{ENV["CFLAGS"]}"
82
+ ENV["LDFLAGS"] = "-lm #{ENV["LDFLAGS"]}"
77
83
  end
78
84
 
79
85
  end
@@ -10,9 +10,11 @@ module Mrubyc
10
10
  class << self
11
11
  def run(model_files: [], test_files:, test_cases:, verbose:, method_name_pattern:)
12
12
  config = Mrubyc::Test::Config.read
13
- erb = ERB.new(File.read(File.expand_path('../../../../templates/test.rb.erb', __FILE__)), nil, '-')
13
+ test_erb = ERB.new(File.read(File.expand_path('../../../../templates/test.rb.erb', __FILE__)), nil, '-')
14
+ models_erb = ERB.new(File.read(File.expand_path('../../../../templates/models.rb.erb', __FILE__)), nil, '-')
14
15
  mrubyc_class_dir = File.expand_path('../../../../mrubyc-ext/', __FILE__)
15
- File.write(File.join(config['test_tmp_dir'], 'test.rb'), Rufo.format(erb.result(binding)))
16
+ File.write(File.join(config['test_tmp_dir'], 'test.rb'), Rufo.format(test_erb.result(binding)))
17
+ File.write(File.join(config['test_tmp_dir'], 'models.rb'), Rufo.format(models_erb.result(binding)))
16
18
  end
17
19
  end
18
20
  end
@@ -26,6 +26,8 @@ module Mrubyc
26
26
  puts " write #{config['test_tmp_dir']}/.gitignore"
27
27
  File.open("#{config['test_tmp_dir']}/.gitignore", "w") do |f|
28
28
  f.puts "test"
29
+ f.puts "models.rb"
30
+ f.puts "models.c"
29
31
  f.puts "test.rb"
30
32
  f.puts "test.c"
31
33
  end
@@ -1,5 +1,5 @@
1
1
  module Mrubyc
2
2
  module Test
3
- VERSION = "0.3.0"
3
+ VERSION = "0.5.3"
4
4
  end
5
5
  end
@@ -1,6 +1,7 @@
1
1
  #include "mrubyc.h"
2
2
  #include <stdio.h>
3
3
  #include <stdlib.h>
4
+ #include "models.c"
4
5
  #include "test.c"
5
6
 
6
7
  #define MEMORY_SIZE (1024*64)-1
@@ -33,6 +34,7 @@ int main(void) {
33
34
  mrbc_init(my_memory_pool, MEMORY_SIZE);
34
35
  mrbc_define_method(0, mrbc_class_object, "debugprint", c_debugprint);
35
36
  mrbc_define_method(0, mrbc_class_object, "exit", c_exit);
37
+ mrbc_create_task( models, 0 );
36
38
  mrbc_create_task( test, 0 );
37
39
  mrbc_run();
38
40
  return exit_code;
@@ -0,0 +1,3 @@
1
+ <% model_files.each do |file_name| -%>
2
+ <%= File.read(file_name) %>
3
+ <% end -%>
@@ -14,6 +14,7 @@ if RUBY_VERSION == '1.9' && MRUBYC_VERSION
14
14
  end
15
15
  RUBY_DESCRIPTION = 'mruby/c ' + MRUBYC_VERSION
16
16
  else
17
+ require_relative "./models.rb"
17
18
  require 'objspace'
18
19
  def debugprint(message)
19
20
  puts
@@ -82,10 +83,6 @@ end
82
83
  <%= File.read(File.join(mrubyc_class_dir, basename + '.rb')) %>
83
84
  <% end -%>
84
85
 
85
- <% model_files.each do |file_name| -%>
86
- <%= File.read(file_name) %>
87
- <% end -%>
88
-
89
86
  <% test_files.each do |file_name| -%>
90
87
  <%= File.read(file_name).gsub(/(\bpend\b)/, '\1;return') -%>
91
88
  <% end -%>
@@ -24,10 +24,10 @@ Gem::Specification.new do |spec|
24
24
  spec.require_paths = ["lib"]
25
25
 
26
26
  spec.add_development_dependency "bundler", "~> 2.0"
27
- spec.add_development_dependency "rake", "~> 10.0"
28
- spec.add_development_dependency "rspec", "~> 3.0"
27
+ spec.add_development_dependency "rake", "~> 13.0"
28
+ spec.add_development_dependency "rspec", "~> 3.9"
29
29
 
30
- spec.add_dependency "thor", "~> 0.20"
31
- spec.add_dependency "activesupport", "~> 5.2"
32
- spec.add_dependency "rufo", "~> 0.4"
30
+ spec.add_dependency "thor", "~> 1.0"
31
+ spec.add_dependency "activesupport", "~> 6.0"
32
+ spec.add_dependency "rufo", "~> 0.12"
33
33
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mrubyc-test
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.5.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - HASUMI Hitoshi
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-04-08 00:00:00.000000000 Z
11
+ date: 2020-05-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -30,70 +30,70 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '13.0'
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: '13.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '3.0'
47
+ version: '3.9'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '3.0'
54
+ version: '3.9'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: thor
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0.20'
61
+ version: '1.0'
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: '0.20'
68
+ version: '1.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: activesupport
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '5.2'
75
+ version: '6.0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '5.2'
82
+ version: '6.0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rufo
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0.4'
89
+ version: '0.12'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0.4'
96
+ version: '0.12'
97
97
  description: mrubyc-test is an unit test framework for mruby/c, supporting basic assertions,
98
98
  stub and mock.
99
99
  email:
@@ -129,6 +129,7 @@ files:
129
129
  - lib/mrubyc/test/version.rb
130
130
  - lib/mrubyc_test_case/mrubyc_test_case.rb
131
131
  - lib/templates/main.c.erb
132
+ - lib/templates/models.rb.erb
132
133
  - lib/templates/sample_test.rb.erb
133
134
  - lib/templates/test.rb.erb
134
135
  - mrubyc-test.gemspec
@@ -151,7 +152,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
151
152
  - !ruby/object:Gem::Version
152
153
  version: '0'
153
154
  requirements: []
154
- rubygems_version: 3.0.1
155
+ rubygems_version: 3.1.2
155
156
  signing_key:
156
157
  specification_version: 4
157
158
  summary: Test Framework for mruby/c