Fixes recursion bug in disambiguate_in().
[ohcount] / test / unit / ruby / gestalt / java_definitions_test.rb
1 include Ohcount
2 include Ohcount::Gestalt
3 require File.dirname(__FILE__) + '/../../../../ruby/gestalt'
4
5 class JavaDefinitionsTest < Ohcount::Test
6
7         def test_weblogic_via_maven
8                 assert_gestalts 'weblogic_maven', [
9                         Base.new(:platform, 'appserver'),
10                         Base.new(:platform, 'java'),
11                         Base.new(:platform, 'maven'),
12                         Base.new(:platform, 'weblogic')
13                 ]
14   end
15
16         def test_weblogic_via_descriptor
17                 assert_gestalts 'weblogic_descriptor', [
18                         Base.new(:platform, 'appserver'),
19                         Base.new(:platform, 'java'),
20                         Base.new(:platform, 'weblogic')
21                 ]
22   end
23
24         def test_webshpere_via_descriptor
25                 assert_gestalts 'websphere', [
26                         Base.new(:platform, 'appserver'),
27                         Base.new(:platform, 'java'),
28                         Base.new(:platform, 'websphere')
29                 ]
30   end
31
32         def test_ejb30_by_default
33                 sf = SourceFile.new('hello.java', :contents => <<-JAVA
34                                 @Stateless
35                                 public class HelloBean { }
36                         JAVA
37                 )
38                 assert_equal [
39                         Base.new(:platform, 'java'),
40                         Base.new(:platform, 'ejb3+'),
41                         Base.new(:platform, 'ejb3.0')
42                 ].sort, sf.gestalts.sort
43         end
44
45
46         def test_ejb31_through_annotation
47                 sf = SourceFile.new('hello.java', :contents => <<-JAVA
48                                 @Stateless
49                                 public class HelloBean {
50                                         @Asynchronous public Future<int> getHelloValue() {}
51                                 }
52                         JAVA
53                 )
54                 assert_equal [
55                         Base.new(:platform, 'java'),
56                         Base.new(:platform, 'ejb3+'),
57                         Base.new(:platform, 'ejb3.1')
58                 ].sort, sf.gestalts.sort
59         end
60
61         def test_ejb31_through_global_jndi
62                 sf = SourceFile.new('hello.java', :contents => <<-JAVA
63                         public class PlaceBidClient {
64                                 context.lookup("java:global/action-bazaar/PlaceBid");
65                         }
66                         JAVA
67                 )
68                 assert_equal [
69                         Base.new(:platform, 'java'),
70                         Base.new(:platform, 'ejb3+'),
71                         Base.new(:platform, 'ejb3.1')
72                 ].sort, sf.gestalts.sort
73         end
74
75 end