cdp 0.0.7 → 0.0.8.1
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 +7 -0
- data/gemspec +1 -1
- data/lib/cdp.rb +19 -13
- data/test/test_cdp.rb +21 -2
- metadata +13 -17
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 06ce939ab83bdfaeebfc75a34fce46dbf5ba3d9c
|
4
|
+
data.tar.gz: 860c1c3f76fd161e372eab00ba8daef93419c7fd
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: d584656c714ec20abe882df737a6b53fef4646241062aa6e4fa0a84dbb6c479eea6bf3deb97be054b0e566dea0e58601efe548be374377cf96d035dcc3bfcd1b
|
7
|
+
data.tar.gz: 25efbdda97dc4912b151c69b114a440a0c094d288a540d4237f292d60607f4f249b99fb6c03bff435988234bac2696003b999ab37954398d0d25c99b6b673e07
|
data/gemspec
CHANGED
@@ -3,7 +3,7 @@ $:.unshift File.join(File.dirname(__FILE__),"..","lib")
|
|
3
3
|
|
4
4
|
spec = Gem::Specification.new do |s|
|
5
5
|
s.name = "cdp"
|
6
|
-
s.version = '0.0.
|
6
|
+
s.version = '0.0.8.1'
|
7
7
|
s.platform = Gem::Platform::RUBY
|
8
8
|
s.files = ["lib/cdp.rb"] + ["gemspec"]
|
9
9
|
s.test_file = "test/test_cdp.rb"
|
data/lib/cdp.rb
CHANGED
@@ -34,21 +34,27 @@ module Cdp
|
|
34
34
|
end
|
35
35
|
|
36
36
|
# compute the experiments from the data directories and link the corresponding files
|
37
|
-
def Cdp.splitFilesIntoExperiments(files,exp=
|
38
|
-
|
37
|
+
def Cdp.splitFilesIntoExperiments(files,exp=nil)
|
38
|
+
defautExpName = 'exp'
|
39
|
+
experiments = files.map {|f| File.basename(File.dirname(f))}.uniq.sort_by {|f| f.length}.reverse
|
39
40
|
# take the larges part of the filenames as experiment name if the files are in
|
40
41
|
# the current directory
|
41
|
-
if
|
42
|
-
|
43
|
-
|
44
|
-
1
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
42
|
+
if exp.nil?
|
43
|
+
if [["."],[".."],[".",".."],[""]].include?(experiments) then
|
44
|
+
n = files.map(&:size).min.times.map {|i|
|
45
|
+
if files.map {|f| f[0,i-1]}.uniq.size == 1
|
46
|
+
1
|
47
|
+
else
|
48
|
+
nil
|
49
|
+
end
|
50
|
+
}.find_all {|v| not v.nil?}.size-1
|
51
|
+
uniqName = files[0][0,n]
|
52
|
+
uniqName = defautExpName if uniqName.empty?
|
53
|
+
experiments = [uniqName]
|
54
|
+
end
|
55
|
+
experiments [defautExpName] if experiments == [".."]
|
56
|
+
else
|
57
|
+
experiments = [exp]
|
52
58
|
end
|
53
59
|
experimentFiles, experimentAnalyzedData = {},{}
|
54
60
|
experiments.each {|experiment|
|
data/test/test_cdp.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
$:.unshift File.join(File.dirname(__FILE__),"..","lib")
|
2
|
-
require '
|
2
|
+
require 'minitest/autorun'
|
3
3
|
require 'cdp'
|
4
4
|
require 'pp'
|
5
5
|
|
@@ -11,12 +11,13 @@ ICONOCEL = DATADIR + "/oceLong.nc"
|
|
11
11
|
ICONICE = DATADIR + "/oce.nc"
|
12
12
|
WEIGHTS = File.dirname(__FILE__) + "/weights.nc"
|
13
13
|
|
14
|
-
class TestCdp < Test
|
14
|
+
class TestCdp < Minitest::Test
|
15
15
|
def teardown
|
16
16
|
FileUtils.rm(WEIGHTS) if File.exist?(WEIGHTS)
|
17
17
|
end
|
18
18
|
def test_set_debug
|
19
19
|
Cdp.setDebug
|
20
|
+
Cdo.debug = true
|
20
21
|
assert_equal(Cdp::debug,true)
|
21
22
|
Cdp.setDebug(false)
|
22
23
|
assert_equal(Cdp::debug,false)
|
@@ -35,16 +36,34 @@ class TestCdp < Test::Unit::TestCase
|
|
35
36
|
|
36
37
|
def test_splitFiles
|
37
38
|
files = []
|
39
|
+
|
38
40
|
files << '../A/a' << '../A/aa' << '../B/b' << '../B/bb'
|
39
41
|
exp, exp4ana = Cdp.splitFilesIntoExperiments(files)
|
40
42
|
assert_equal(exp['A'],['../A/a','../A/aa'])
|
41
43
|
assert_equal(exp['B'],['../B/b','../B/bb'])
|
44
|
+
|
42
45
|
files << 'a' << 'aa' << 'b' << 'bb'
|
43
46
|
grid, exp, exp4ana = Cdp.splitFilesIntoExperiments(files)
|
44
47
|
assert_equal('exp',exp.keys[0])
|
48
|
+
|
49
|
+
files.clear
|
50
|
+
files << 'a0' << 'a1' << 'ab' << 'ac'
|
51
|
+
_files = files.clone
|
52
|
+
exp, exp4ana = Cdp.splitFilesIntoExperiments(files,'a')
|
53
|
+
pp exp
|
54
|
+
assert_equal('a',exp.keys[0])
|
55
|
+
assert_equal(_files,exp.values[0])
|
56
|
+
|
57
|
+
return
|
45
58
|
files << './a' << './aa' << './b' << './bb'
|
46
59
|
grid, exp, exp4ana = Cdp.splitFilesIntoExperiments(files)
|
47
60
|
assert_equal('exp',exp.keys[0])
|
61
|
+
files << '../a' << '../aa' << '../b' << '../bb'
|
62
|
+
grid, exp, exp4ana = Cdp.splitFilesIntoExperiments(files)
|
63
|
+
assert_equal('exp',exp.keys[0])
|
64
|
+
files << '../a_01' << '../a_02' << '../a_03' << '../a_04'
|
65
|
+
grid, exp, exp4ana = Cdp.splitFilesIntoExperiments(files)
|
66
|
+
assert_equal('exp',exp.keys[0])
|
48
67
|
grid, exp, exp4ana = Cdp.splitFilesIntoExperiments(files,'test')
|
49
68
|
assert_equal('test',exp.keys[0])
|
50
69
|
end
|
metadata
CHANGED
@@ -1,30 +1,27 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cdp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.0.8.1
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Ralf Mueller
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2014-06-18 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: cdo
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
description: Climate Data Processing helpers
|
@@ -35,35 +32,34 @@ extra_rdoc_files:
|
|
35
32
|
- README.textile
|
36
33
|
- LICENSE
|
37
34
|
files:
|
38
|
-
- lib/cdp.rb
|
39
|
-
- gemspec
|
40
|
-
- README.textile
|
41
35
|
- LICENSE
|
36
|
+
- README.textile
|
37
|
+
- gemspec
|
38
|
+
- lib/cdp.rb
|
42
39
|
- test/test_cdp.rb
|
43
40
|
homepage: https://github.com/Try2Code/cdp
|
44
41
|
licenses:
|
45
42
|
- BSD
|
43
|
+
metadata: {}
|
46
44
|
post_install_message:
|
47
45
|
rdoc_options: []
|
48
46
|
require_paths:
|
49
47
|
- lib
|
50
48
|
required_ruby_version: !ruby/object:Gem::Requirement
|
51
|
-
none: false
|
52
49
|
requirements:
|
53
|
-
- -
|
50
|
+
- - ">="
|
54
51
|
- !ruby/object:Gem::Version
|
55
52
|
version: '1.9'
|
56
53
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
54
|
requirements:
|
59
|
-
- -
|
55
|
+
- - ">="
|
60
56
|
- !ruby/object:Gem::Version
|
61
57
|
version: '0'
|
62
58
|
requirements: []
|
63
59
|
rubyforge_project:
|
64
|
-
rubygems_version:
|
60
|
+
rubygems_version: 2.2.2
|
65
61
|
signing_key:
|
66
|
-
specification_version:
|
67
|
-
summary:
|
62
|
+
specification_version: 4
|
63
|
+
summary: "---"
|
68
64
|
test_files:
|
69
65
|
- test/test_cdp.rb
|