blob: 00320f8e5bf8541bbd6bf71971cea6e891e5091a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
/*******************************************************************************
* Copyright (c) 2004, 2009 Tasktop Technologies and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Tasktop Technologies - initial API and implementation
*******************************************************************************/
package org.eclipse.mylyn.monitor.reports.tests;
import java.io.File;
import java.util.List;
import junit.framework.TestCase;
import org.eclipse.mylyn.commons.sdk.util.CommonTestUtil;
import org.eclipse.mylyn.context.core.IInteractionElement;
import org.eclipse.mylyn.internal.context.core.InteractionContext;
import org.eclipse.mylyn.internal.context.core.InteractionContextScaling;
import org.eclipse.mylyn.internal.monitor.usage.InteractionEventLogger;
import org.eclipse.mylyn.monitor.core.InteractionEvent;
/**
* @author Mik Kersten
*/
public class ContextParsingTest extends TestCase {
private List<InteractionEvent> events;
@Override
protected void setUp() throws Exception {
super.setUp();
File file = CommonTestUtil.getFile(this, "testdata/usage-parsing.zip");
InteractionEventLogger logger = new InteractionEventLogger(file);
events = logger.getHistoryFromFile(file);
}
@Override
protected void tearDown() throws Exception {
super.tearDown();
events.clear();
}
public void testOriginIdValidity() {
for (InteractionEvent event : events) {
if (event.isValidStructureHandle()) {
assertFalse(event.getStructureHandle().equals("null"));
}
}
}
public void testHistoryParsingWithDecayReset() {
InteractionContextScaling scalingFactors = new InteractionContextScaling();
// scalingFactors.setDecay(new ScalingFactor("decay", .05f));
InteractionContext context = new InteractionContext("test", scalingFactors);
int numEvents = 0;
for (InteractionEvent event : events) {
if (event.isValidStructureHandle()) {
// if (SelectionMonitor.isValidStructureHandle(event)) {
InteractionEvent newEvent = InteractionEvent.makeCopy(event, 1f);
context.parseEvent(newEvent);
if (event.isValidStructureHandle() && event.getKind().equals(InteractionEvent.Kind.SELECTION)) {
// if (SelectionMonitor.isValidStructureHandle(event) &&
// event.getKind().equals(InteractionEvent.Kind.SELECTION))
// {
IInteractionElement element = context.parseEvent(event);
// reset decay if not selected
if (element.getInterest().getValue() < 0) {
float decayOffset = (-1) * (element.getInterest().getValue()) + 1;
element = context.parseEvent(new InteractionEvent(InteractionEvent.Kind.MANIPULATION,
event.getStructureKind(), event.getStructureHandle(), "test-decay", decayOffset));
}
assertTrue("should be positive: " + element.getInterest().getValue(), element.getInterest()
.getValue() >= 0);
numEvents++;
}
}
}
}
}
|