EMMA Coverage Report (generated Thu Jan 20 11:39:44 EST 2011)
[all classes][com.hammurapi.extract]

COVERAGE SUMMARY FOR SOURCE FILE [GreaterEqual.java]

nameclass, %method, %block, %line, %
GreaterEqual.java0%   (0/1)0%   (0/8)0%   (0/91)0%   (0/13)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class GreaterEqual0%   (0/1)0%   (0/8)0%   (0/91)0%   (0/13)
GreaterEqual (double, TimeUnit, Extractor, Extractor): void 0%   (0/1)0%   (0/7)0%   (0/2)
compare (Object, Object): boolean 0%   (0/1)0%   (0/33)0%   (0/3)
compare (double, double): boolean 0%   (0/1)0%   (0/8)0%   (0/1)
compare (float, float): boolean 0%   (0/1)0%   (0/8)0%   (0/1)
compare (int, int): boolean 0%   (0/1)0%   (0/7)0%   (0/1)
compare (long, long): boolean 0%   (0/1)0%   (0/8)0%   (0/1)
compareTo (Extractor): ComparisonResult 0%   (0/1)0%   (0/10)0%   (0/3)
newInstance (Extractor, Extractor): Extractor 0%   (0/1)0%   (0/10)0%   (0/1)

1package com.hammurapi.extract;
2 
3import java.util.concurrent.TimeUnit;
4 
5public class GreaterEqual<T, V extends Comparable<V>, C> extends ComparisonPredicate<T, V, C> {
6 
7        public GreaterEqual(
8                        double initialCost, 
9                        TimeUnit costUnit,
10                        Extractor<T, V, C> leftExtractor, 
11                        Extractor<T, V, C> rightExtractor) {
12                super(initialCost, costUnit, leftExtractor, rightExtractor);
13        }
14 
15        @Override
16        public com.hammurapi.extract.ComparisonResult compareTo(Extractor<T, Boolean, C> otherPredicate) {
17                if (equals(otherPredicate)) {
18                        return ComparisonResult.EQUAL_NM;
19                }
20                
21                /**
22                 * TODO Implement comparisons.
23                 * a * b ? c * d, * - can be <, <=, ==, !=, =>, >
24                 * 36 permutations. Each permutation - compare a/b, c/d 
25                 */
26                                
27                // TODO if both parts are constants - comparison with True/False.
28                
29                return super.compareTo(otherPredicate);
30        }
31 
32        @Override
33        protected boolean compare(int n1, int n2) {
34                return n1>=n2;
35        }
36        
37        @Override
38        protected boolean compare(long n1, long n2) {
39                return n1>=n2;
40        }
41 
42        @Override
43        protected boolean compare(float n1, float n2) {
44                return n1>=n2;
45        }
46 
47        @Override
48        protected boolean compare(double n1, double n2) {
49                return n1>=n2;
50        }
51 
52        @SuppressWarnings({ "unchecked", "rawtypes" })
53        @Override
54        protected boolean compare(Object o1, Object o2) {
55                if (o1 instanceof Comparable) {
56                        return ((Comparable) o1).compareTo(o2)>=0;
57                }
58                 throw new UnsupportedOperationException("Can't compare "+getClass().getName()+" on "+o1+" and "+o2);
59        }
60 
61        @Override
62        protected Extractor<T, Boolean, C> newInstance(Extractor<T, V, C> leftExtractor, Extractor<T, V, C> rightExtractor) {
63                return new GreaterEqual<T,V,C>(initialCost, costUnit, leftExtractor, rightExtractor);
64        }
65}

[all classes][com.hammurapi.extract]
EMMA 2.0.5312 EclEmma Fix 2 (C) Vladimir Roubtsov