// Path: src/test/java/org/jpy/fixtures/Processor.java
// public interface Processor {
//     String initialize();
// 
//     String computeTile(int w, int h, float[] data);
// 
//     String dispose();
//     
//     void setVal(int n);
//     
//     int getVal();
//     
//     boolean check1234();
// }


import static org.junit.Assert.*;
import org.junit.*;
import org.jpy.fixtures.Processor;
import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import java.util.List;
import java.util.concurrent.*;
        // >>> builtins.max('A', 'Z')
        // 'Z'
        //
        PyModule builtins;
        try {
            // Python 3.3
            builtins = PyModule.importModule("builtins");
        } catch (Exception e) {
            // Python 2.7
            builtins = PyModule.importModule("__builtin__");
        }
        PyObject value = builtins.call("max", "A", "Z");
        Assert.assertEquals("Z", value.getStringValue());
    }
    
    @Test
    public void testGetSetAttributes() throws Exception {
        // Python equivalent:
        //
        // >>> import imp
        // >>> myobj = imp.new_module('myobj')
        // >>> myobj.a = 'Tut tut!'
        // >>> myobj.a
        // 'Tut tut!'
        //
        PyModule imp = PyModule.importModule("imp");
        // Call imp.new_module('') module
        PyObject myobj = imp.call("new_module", "myobj");
        myobj.setAttribute("a", "Tut tut!");
        Assert.assertEquals("Tut tut!", myobj.getAttribute("a", String.class));
// Path: src/test/java/org/jpy/fixtures/Processor.java
// public interface Processor {
//     String initialize();
// 
//     String computeTile(int w, int h, float[] data);
// 
//     String dispose();
//     
//     void setVal(int n);
//     
//     int getVal();
//     
//     boolean check1234();
// }


// Path: src/test/java/org/jpy/PyObjectTest.java
import static org.junit.Assert.*;
import org.junit.*;
import org.jpy.fixtures.Processor;
import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import java.util.List;
import java.util.concurrent.*;

        // >>> builtins.max('A', 'Z')
        // 'Z'
        //
        PyModule builtins;
        try {
            // Python 3.3
            builtins = PyModule.importModule("builtins");
        } catch (Exception e) {
            // Python 2.7
            builtins = PyModule.importModule("__builtin__");
        }
        PyObject value = builtins.call("max", "A", "Z");
        Assert.assertEquals("Z", value.getStringValue());
    }
    
    @Test
    public void testGetSetAttributes() throws Exception {
        // Python equivalent:
        //
        // >>> import imp
        // >>> myobj = imp.new_module('myobj')
        // >>> myobj.a = 'Tut tut!'
        // >>> myobj.a
        // 'Tut tut!'
        //
        PyModule imp = PyModule.importModule("imp");
        // Call imp.new_module('') module
        PyObject myobj = imp.call("new_module", "myobj");
        myobj.setAttribute("a", "Tut tut!");
        Assert.assertEquals("Tut tut!", myobj.getAttribute("a", String.class));
        PyObject a = myobj.getAttribute("a");