Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Threaded View
Accumulo >> mail # user >> Mock classes for JUnit Testing


Copy link to this message
-
Re: Mock classes for JUnit Testing
I blame Christopher... I was having a discussion w/ him about the
search space of solving a rubicks cube while typing the email :)  So
when I started there was no response... then I took a long type to
type... then I sent and saw your response.

On Tue, Sep 25, 2012 at 10:03 AM, Adam Fuchs <[EMAIL PROTECTED]> wrote:
> Too slow, Keith!  :)
>
> Adam
>
> On Sep 25, 2012 9:55 AM, "Keith Turner" <[EMAIL PROTECTED]> wrote:
>>
>> What I think is going is that the class MockTableOperations references
>> org.apache.commons.lang.NotImplementedException.  When you try to load
>> the class MockTableOperations, it tries to load the dependency
>> NotImplementedException which is not on your class path.
>>
>> On Tue, Sep 25, 2012 at 9:29 AM, Joe Berk <[EMAIL PROTECTED]> wrote:
>> > Thanks for responding, Keith.
>> >
>> > When I execute the following lines:
>> >
>> >
>> > MockInstance    instance  = new MockInstance();
>> > MockConnector connector = (MockConnector)
>> > instance.getConnector(UserName,
>> > Password);
>> > connector.tableOperations().create("SomeTable");
>> >
>> > I get a "caused by: java.lang.ClassNotFoundException:
>> > org/apache/commons/lang/NotImplementedException"
>> >
>> > & it throws the Exception on the 3rd line there:
>> > connector.tableOperations().create("SomeTable");
>> >
>> > Best Regards,
>> >
>> > Josh
>> >
>> >
>> >
>> >
>> > On Tue, Sep 25, 2012 at 8:54 AM, Keith Turner <[EMAIL PROTECTED]> wrote:
>> >>
>> >> Did you create the table using mockConn.tableOperations().create()?
>> >>
>> >> On Tue, Sep 25, 2012 at 8:47 AM, Joe Berk <[EMAIL PROTECTED]>
>> >> wrote:
>> >> > Hello,
>> >> >
>> >> >
>> >> >
>> >> > I am trying to write JUnit tests for Accumulo and I keep running into
>> >> > dead-ends with the “Mock” classes.
>> >> >
>> >> >
>> >> >
>> >> > /*
>> >> >
>> >> >   * So, the following lines are how I would traditionally establish
>> >> > an
>> >> > instance to perform Accumulo reads or writes
>> >> >
>> >> >   */
>> >> >
>> >> >
>> >> >
>> >> > Instance       zooInstance    = new ZooKeeperInstance( InstanceName,
>> >> > ZooServers);
>> >> >
>> >> > Connector      connector      = zooInstance.getConnector(UserName,
>> >> > PassWord);
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > /*
>> >> >
>> >> >   * The following lines would be how I would perform a write to
>> >> > Accumulo
>> >> >
>> >> >   */
>> >> >
>> >> >
>> >> >
>> >> > BatchWriter batchWriter   = configuration.getBatchWriter();
>> >> >
>> >> > Mutation    videoMutation = new Mutation(new Text( RowId ));
>> >> >
>> >> >
>> >> >
>> >> > videoMutation.put(ColumnFamily, ColumnQualifer, Value );
>> >> >
>> >> >
>> >> >
>> >> > batchWriter.addMutation(videoMutation);
>> >> >
>> >> > batchWriter.flush();
>> >> >
>> >> > batchWriter.close();
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > /*
>> >> >
>> >> >   * The following lines would be how I would perform a read from
>> >> > Accumulo
>> >> >
>> >> >   */
>> >> >
>> >> >
>> >> >
>> >> > Authorizations authorizations = new Authorizations();
>> >> >
>> >> > Scanner        scanner        = connector.createScanner(TableName,
>> >> > authorizations);
>> >> >
>> >> >
>> >> >
>> >> > scanner.setRange(new Range(RowId));
>> >> >
>> >> > scanner.fetchColumnFamily(columnFamily);
>> >> >
>> >> >
>> >> >
>> >> > Iterator<Entry<Key,Value>> iterator = scanner.iterator();
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > So, I tried to repeat this process, but substituted:
>> >> >
>> >> >
>> >> >
>> >> > MockInstance instance = new MockInstance()
>> >> >
>> >> >                    Or
>> >> >
>> >> > Instance     instance = new MockInstance();
>> >> >
>> >> >
>> >> >
>> >> > and everything works great until I attempt to
>> >> > addMutation(videoMutation).
>> >> > That throws a NullPointerException.
>> >> >
>> >> >
>> >> >
>> >> > I’ve also tried to use the MockConnector & even MockBatchWriter
>> >> > classes,
>> >> > but
>> >> > have not had any success.
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB