mrubyc-test 0.3.0 → 0.4.0

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: a9f4cb5b6755213662af408a2858c478cdd6d39d2961b40357b5f88f1cb17c60
4
+ data.tar.gz: 012174027264751b90eec5eec729b31b91b8210d1bf70b510638cf9c30169e3c
5
5
  SHA512:
6
- metadata.gz: 468f307d73c03d7fc9b9b76519ed1d1d89e6bc4713609e3f3177c5a621ff1666b2529d86a026900ea41c5bd7aca2de306a73a5ce8867f46ca0ad78565144c85f
7
- data.tar.gz: 4a04ad62d05bf7765dbe26ecfae09c96d23167e933e91260dbe636ce16454c89ff3d10b0d9f2feb90aee19a12b5735095b930933cd8f9250a3393753749130da
6
+ metadata.gz: 4950349c1738fc8a6a32bc0bd4ba4fac9fdcf4e8db2fa03b4b4915d24173c831e2b19fc7a8fff7fd3b894ce3fa1b9218498e644e923db18aeb81cd259fcd33d4
7
+ data.tar.gz: 0d0fc87eb61128eddb4f749035eb5252a5217921fc5e52d3992adeeebcc31226241565576ecbb40950c5df7eebd6afbe229a622001b73b162e65d10022151ff0
@@ -1,7 +1,9 @@
1
1
  ---
2
2
  sudo: false
3
3
  language: ruby
4
+ bundler_args: --deployment
4
5
  cache: bundler
5
6
  rvm:
6
- - 2.6.0
7
- before_install: gem install bundler -v 2.0.1
7
+ - 2.6.2
8
+ before_install: gem install bundler --no-document
9
+ script: bundle exec rake spec
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mrubyc-test (0.2.0)
4
+ mrubyc-test (0.4.0)
5
5
  activesupport (~> 5.2)
6
6
  rufo (~> 0.4)
7
7
  thor (~> 0.20)
@@ -9,14 +9,14 @@ PATH
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- activesupport (5.2.2)
12
+ activesupport (5.2.3)
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
+ concurrent-ruby (1.1.5)
18
18
  diff-lcs (1.3)
19
- i18n (1.5.1)
19
+ i18n (1.6.0)
20
20
  concurrent-ruby (~> 1.0)
21
21
  minitest (5.11.3)
22
22
  rake (10.5.0)
@@ -33,7 +33,7 @@ GEM
33
33
  diff-lcs (>= 1.2.0, < 2.0)
34
34
  rspec-support (~> 3.8.0)
35
35
  rspec-support (3.8.0)
36
- rufo (0.4.1)
36
+ rufo (0.7.0)
37
37
  thor (0.20.3)
38
38
  thread_safe (0.3.6)
39
39
  tzinfo (1.2.5)
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # mrubyc-test
2
2
 
3
+ [![Build Status](https://travis-ci.com/mrubyc/mrubyc-test.svg?branch=master)](https://travis-ci.com/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
+ "RBENV_VERSION=#{mruby_version} mrbc -E -B models models.rb",
60
61
  "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",
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
@@ -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.4.0"
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 -%>
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.4.0
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: 2019-06-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -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.0.3
155
156
  signing_key:
156
157
  specification_version: 4
157
158
  summary: Test Framework for mruby/c