bee_python 0.0.2 → 0.0.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.
data/build/README CHANGED
@@ -20,4 +20,4 @@ or go to URL http://www.apache.org/licenses/LICENSE-2.0).
20
20
 
21
21
  = Copyright
22
22
 
23
- Bee_python version 0.0.2 (C) Michel Casabianca - 2008-2010
23
+ Bee_python version 0.0.3 (C) Michel Casabianca - 2008-2010
@@ -1,4 +1,19 @@
1
- require 'bee_task'
1
+ # Copyright 2006-2010 Michel Casabianca <michel.casabianca@gmail.com>
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'rubygems'
16
+ require 'bee_task_package'
2
17
  require 'fileutils'
3
18
 
4
19
  module Bee
@@ -26,10 +41,9 @@ module Bee
26
41
  script = File.join(File.expand_path(File.dirname(__FILE__)),
27
42
  '..', 'tools', 'compile', 'compile.py')
28
43
  for file in files
29
- puts "Compiling Python source file '#{file}'" if
30
- @build.listener.verbose
44
+ puts "Compiling Python source file '#{file}'" if @verbose
31
45
  command = "python #{script} #{file}"
32
- puts "Running command: '#{command}'" if @build.listener.verbose
46
+ puts "Running command: '#{command}'" if @verbose
33
47
  ok = system(command)
34
48
  error "Error compiling Python source file '#{file}'" unless ok
35
49
  end
@@ -106,7 +120,7 @@ module Bee
106
120
  command += " #{options}" if options
107
121
  command += " --only" if only
108
122
  command += " #{files.join(' ')}"
109
- puts "Running command: '#{command}'" if @build.listener.verbose
123
+ puts "Running command: '#{command}'" if @verbose
110
124
  ok = system(command)
111
125
  error "Error checking Python source files" unless ok or lenient
112
126
  end
@@ -186,7 +200,7 @@ module Bee
186
200
  command += " --rcfile=#{config}" if config
187
201
  command += " #{options}" if options
188
202
  command += " #{files.join(' ')}"
189
- puts "Running command: '#{command}'" if @build.listener.verbose
203
+ puts "Running command: '#{command}'" if @verbose
190
204
  ok = system(command)
191
205
  error "Error checking Python source files" unless ok or lenient
192
206
  end
@@ -243,7 +257,7 @@ module Bee
243
257
  command += " -o #{dest}"
244
258
  command += " #{options}" if options
245
259
  command += " #{files.join(' ')}"
246
- puts "Running command: '#{command}'" if @build.listener.verbose
260
+ puts "Running command: '#{command}'" if @verbose
247
261
  ok = system(command)
248
262
  error "Error generating documentation for Python source files" unless
249
263
  ok
@@ -268,7 +282,7 @@ module Bee
268
282
  script = File.join(File.expand_path(File.dirname(__FILE__)),
269
283
  '..', 'tools', 'test', 'suite.py')
270
284
  command = "python #{script} #{files.join(' ')}"
271
- puts "Running command: '#{command}'" if @build.listener.verbose
285
+ puts "Running command: '#{command}'" if @verbose
272
286
  ok = system(command)
273
287
  error "Error running Python test(s)" unless ok
274
288
  end
@@ -353,7 +367,7 @@ module Bee
353
367
  begin
354
368
  Dir.chdir(dir)
355
369
  command = "python #{coverage} -x -f #{data} #{test_file}"
356
- puts "Running command: '#{command}'" if @build.listener.verbose
370
+ puts "Running command: '#{command}'" if @verbose
357
371
  system(command) || error("Error running coverage report")
358
372
  ensure
359
373
  Dir.chdir(prev_dir)
@@ -363,11 +377,11 @@ module Bee
363
377
  command = "python #{coverage} -r -f #{data} -m #{sources} > #{report}"
364
378
  system(command) || error("Error generating coverage report")
365
379
  command = "python #{coverage} -a -f #{data} -d #{dest} #{sources}"
366
- puts "Running command: '#{command}'" if @build.listener.verbose
380
+ puts "Running command: '#{command}'" if @verbose
367
381
  system(command) || error("Error generating coverage report")
368
382
  else
369
383
  command = "python #{coverage} -r -f #{data} -m #{sources}"
370
- puts "Running command: '#{command}'" if @build.listener.verbose
384
+ puts "Running command: '#{command}'" if @verbose
371
385
  system(command) || error("Error generating coverage report")
372
386
  end
373
387
  end
@@ -379,8 +393,7 @@ module Bee
379
393
  def add_python_path(dirs)
380
394
  if dirs and dirs.length > 0
381
395
  dirs = Array(dirs)
382
- puts "Adding to PYTHONPATH: '#{dirs.join(',')}'" if
383
- @build.listener.verbose
396
+ puts "Adding to PYTHONPATH: '#{dirs.join(',')}'" if @verbose
384
397
  if ENV['PYTHONPATH']
385
398
  ENV['PYTHONPATH'] = dirs.join(File::PATH_SEPARATOR) +
386
399
  File::PATH_SEPARATOR + ENV['PYTHONPATH'] if dirs.length > 0
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require 'bee'
4
3
  require 'test/unit'
5
4
  $:.unshift(File.join(File.expand_path(File.dirname(__FILE__))))
5
+ require 'bee_context'
6
6
  require 'test_build'
7
7
  require 'test_build_listener'
8
8
  $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
@@ -14,7 +14,7 @@ class TestBeeTaskPython < Test::Unit::TestCase
14
14
  # Create a context object and load tasks in it.
15
15
  def setup
16
16
  super
17
- @context = Bee::Context.new(nil)
17
+ @context = Bee::Context.new()
18
18
  @listener = TestBuildListener.new
19
19
  @build = TestBuild.new(@context, @listener)
20
20
  @package = Bee::Task::Python.new(@build)
@@ -1,4 +1,4 @@
1
- # Copyright 2006-2008 Michel Casabianca <michel.casabianca@gmail.com>
1
+ # Copyright 2006-2010 Michel Casabianca <michel.casabianca@gmail.com>
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -12,30 +12,29 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
 
15
- # Test build listener.
15
+ require 'rubygems'
16
+
16
17
  class TestBuildListener
17
18
 
19
+ attr_reader :formatter
18
20
  attr_reader :started
19
21
  attr_reader :finished
20
22
  attr_reader :targets
21
23
  attr_reader :tasks
22
24
  attr_reader :success
23
25
  attr_reader :errors
24
- attr_accessor :output
25
- attr_reader :verbose
26
-
27
- def initialize
28
- @targets = []
29
- @tasks = []
30
- @output = ''
31
- @verbose = false
26
+ attr_accessor :throw_error
27
+ attr_accessor :prompt
28
+
29
+ def initialize()
30
+ reset
32
31
  end
33
-
34
- def build_started(build)
32
+
33
+ def build_started(build, dry=false)
35
34
  @started = true
36
35
  end
37
36
 
38
- def build_finished(build)
37
+ def build_finished()
39
38
  @finished = true
40
39
  end
41
40
 
@@ -44,11 +43,56 @@ class TestBuildListener
44
43
  end
45
44
 
46
45
  def task(task)
47
- @tasks << tasks
46
+ @tasks << task
48
47
  end
49
48
 
50
49
  def error(exception)
51
- @errors = exception
50
+ if throw_error
51
+ raise exception
52
+ else
53
+ @errors << exception
54
+ end
55
+ end
56
+
57
+ def recover
58
+ @success = true
59
+ end
60
+
61
+ def reset
62
+ @formatter = TestBuildFormatter.new(self)
63
+ @started = false
64
+ @finished = false
65
+ @targets = []
66
+ @tasks = []
67
+ @success = false
68
+ @errors = []
69
+ @throw_error = false
70
+ @prompt = ''
71
+ end
72
+
73
+ def output()
74
+ return @formatter.output
75
+ end
76
+
77
+ def clear()
78
+ @formatter.clear()
79
+ end
80
+
81
+ def error?
82
+ return @errors.length > 0
83
+ end
84
+
85
+ end
86
+
87
+ class TestBuildFormatter
88
+
89
+ attr_reader :verbose
90
+ attr_reader :output
91
+
92
+ def initialize(listener)
93
+ @listener = listener
94
+ @verbose = false
95
+ @output = ''
52
96
  end
53
97
 
54
98
  def print(text)
@@ -59,4 +103,8 @@ class TestBuildListener
59
103
  @output << text + "\n"
60
104
  end
61
105
 
106
+ def clear()
107
+ @output = ''
108
+ end
109
+
62
110
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bee_python
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michel Casabianca
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-11-04 00:00:00 +01:00
12
+ date: 2011-02-17 00:00:00 +01:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -20,7 +20,7 @@ dependencies:
20
20
  requirements:
21
21
  - - ">="
22
22
  - !ruby/object:Gem::Version
23
- version: 0.10.1
23
+ version: 0.11.0
24
24
  version:
25
25
  description:
26
26
  email: michel.casabianca@gmail.com