Added:
trunk/src/atunit/core/Stub.java
Modified:
trunk/build.xml
trunk/example/atunit/example/ExampleGuiceAndJMockTest.java
trunk/src/atunit/core/Mock.java
trunk/src/atunit/easymock/EasyMockFramework.java
trunk/src/atunit/jmock/JMockFramework.java
Log:
Replaced @Mock(ignored=true) with @Stub.
Bumped version to 0.4.
Modified: trunk/build.xml
==============================================================================
--- trunk/build.xml (original)
+++ trunk/build.xml Wed Oct 31 08:11:18 2007
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="atunit" default="jar">
- <property name="version" value="0.3"/>
+ <property name="version" value="0.4"/>
<property name="build.dir" value="${basedir}/build"/>
<property name="src.dir" value="${basedir}/src"/>
Modified: trunk/example/atunit/example/ExampleGuiceAndJMockTest.java
==============================================================================
--- trunk/example/atunit/example/ExampleGuiceAndJMockTest.java (original)
+++ trunk/example/atunit/example/ExampleGuiceAndJMockTest.java Wed Oct
31 08:11:18 2007
@@ -28,6 +28,7 @@
import atunit.core.AtUnitOptions;
import atunit.core.Mock;
import atunit.core.AtUnit;
+import atunit.core.Stub;
import atunit.core.Unit;
import atunit.core.AtUnitOptions.Container;
import atunit.core.AtUnitOptions.Mocks;
@@ -52,7 +53,7 @@
@Inject Mockery mockery;
@Inject @Mock ExampleInterface myMock;
- @Inject @Mock(ignored=true) IgnoredInterface ignored;
+ @Inject @Stub IgnoredInterface ignored;
@Inject @Named("field") String setting;
@Inject @Unit ExampleClass myUnit;
Modified: trunk/src/atunit/core/Mock.java
==============================================================================
--- trunk/src/atunit/core/Mock.java (original)
+++ trunk/src/atunit/core/Mock.java Wed Oct 31 08:11:18 2007
@@ -24,5 +24,4 @@
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD})
public @interface Mock {
- boolean ignored() default false;
}
Added: trunk/src/atunit/core/Stub.java
==============================================================================
--- (empty file)
+++ trunk/src/atunit/core/Stub.java Wed Oct 31 08:11:18 2007
@@ -0,0 +1,26 @@
+/**
+ * Copyright (C) 2007 Logan Johnson
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package atunit.core;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Retention(RetentionPolicy.RUNTIME)
+@Target({ElementType.FIELD})
+public @interface Stub {}
Modified: trunk/src/atunit/easymock/EasyMockFramework.java
==============================================================================
--- trunk/src/atunit/easymock/EasyMockFramework.java (original)
+++ trunk/src/atunit/easymock/EasyMockFramework.java Wed Oct 31
08:11:18 2007
@@ -24,24 +24,22 @@
import atunit.core.Mock;
import atunit.core.MockFramework;
+import atunit.core.Stub;
public class EasyMockFramework implements MockFramework {
public Map<Field, Object> getValues(Field[] fields) throws Exception {
- Map<Field,Object> mocks = new HashMap<Field,Object>();
+ Map<Field,Object> mocksAndStubs = new HashMap<Field,Object>();
for ( Field field : fields ) {
- Mock anno = field.getAnnotation(Mock.class);
- if ( anno != null ) {
- if ( anno.ignored() == true ) {
- mocks.put(field, EasyMock.createNiceMock(field.getType()));
- } else {
- mocks.put(field, EasyMock.createStrictMock(field.getType()));
- }
+ if ( field.getAnnotation(Mock.class) != null ) {
+ mocksAndStubs.put(field, EasyMock.createStrictMock(field.getType()));
+ } else if ( field.getAnnotation(Stub.class) != null ) {
+ mocksAndStubs.put(field, EasyMock.createNiceMock(field.getType()));
}
}
- return mocks;
+ return mocksAndStubs;
}
}
Modified: trunk/src/atunit/jmock/JMockFramework.java
==============================================================================
--- trunk/src/atunit/jmock/JMockFramework.java (original)
+++ trunk/src/atunit/jmock/JMockFramework.java Wed Oct 31 08:11:18 2007
@@ -30,6 +30,7 @@
import atunit.core.IncompatibleAnnotationException;
import atunit.core.Mock;
import atunit.core.MockFramework;
+import atunit.core.Stub;
public class JMockFramework implements MockFramework {
@@ -55,16 +56,17 @@
}
for ( Field field : fields ) {
- Mock mockAnnotation = field.getAnnotation(Mock.class);
- if ( mockAnnotation == null ) continue;
- if ( mockery == null ) throw new NoMockeryException();
+ boolean isMock = (field.getAnnotation(Mock.class) != null);
+ boolean isStub = (field.getAnnotation(Stub.class) != null);
+ if ( !isMock && !isStub ) continue;
+ if ( isMock && (mockery == null) ) throw new NoMockeryException();
Class<?> fieldType = field.getType();
if ( fieldType.isArray() ) {
Object[] array =
(Object[])Array.newInstance(fieldType.getComponentType(), 3);
for ( int i = 0; i < array.length; i++ ) {
array[i] = mockery.mock(fieldType.getComponentType());
- if ( mockAnnotation.ignored() ) {
+ if ( isStub ) {
ignored.add(array[i]);
}
}
@@ -72,7 +74,7 @@
} else {
Object mock = mockery.mock(field.getType());
- if ( mockAnnotation.ignored() ) {
+ if ( isStub ) {
ignored.add(mock);
}