Change tests and reducers to use value instead of name
parent
73c93d2957
commit
77b3487bd2
|
@ -77,7 +77,7 @@ describe('Chronograf.Reducers.Kapacitor.queryConfigs', () => {
|
||||||
const three = reducer(two, chooseMeasurement(queryId, 'disk'))
|
const three = reducer(two, chooseMeasurement(queryId, 'disk'))
|
||||||
state = reducer(
|
state = reducer(
|
||||||
three,
|
three,
|
||||||
toggleField(queryId, {name: 'a great field', funcs: []})
|
toggleField(queryId, {value: 'a great field', funcs: []})
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -124,11 +124,11 @@ describe('Chronograf.Reducers.Kapacitor.queryConfigs', () => {
|
||||||
|
|
||||||
const newState = reducer(
|
const newState = reducer(
|
||||||
state,
|
state,
|
||||||
toggleField(queryId, {name: 'a different field', type: 'field'})
|
toggleField(queryId, {value: 'a different field', type: 'field'})
|
||||||
)
|
)
|
||||||
|
|
||||||
expect(newState[queryId].fields.length).to.equal(1)
|
expect(newState[queryId].fields.length).to.equal(1)
|
||||||
expect(newState[queryId].fields[0].name).to.equal('a different field')
|
expect(newState[queryId].fields[0].value).to.equal('a different field')
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -138,11 +138,11 @@ describe('Chronograf.Reducers.Kapacitor.queryConfigs', () => {
|
||||||
|
|
||||||
const newState = reducer(
|
const newState = reducer(
|
||||||
state,
|
state,
|
||||||
toggleField(queryId, {name: 'a different field', type: 'field'})
|
toggleField(queryId, {value: 'a different field', type: 'field'})
|
||||||
)
|
)
|
||||||
|
|
||||||
expect(newState[queryId].fields.length).to.equal(1)
|
expect(newState[queryId].fields.length).to.equal(1)
|
||||||
expect(newState[queryId].fields[0].name).to.equal('a different field')
|
expect(newState[queryId].fields[0].value).to.equal('a different field')
|
||||||
})
|
})
|
||||||
|
|
||||||
it('applies no funcs to newly selected fields', () => {
|
it('applies no funcs to newly selected fields', () => {
|
||||||
|
@ -150,7 +150,7 @@ describe('Chronograf.Reducers.Kapacitor.queryConfigs', () => {
|
||||||
|
|
||||||
const newState = reducer(
|
const newState = reducer(
|
||||||
state,
|
state,
|
||||||
toggleField(queryId, {name: 'a different field', type: 'field'})
|
toggleField(queryId, {value: 'a different field', type: 'field'})
|
||||||
)
|
)
|
||||||
|
|
||||||
expect(newState[queryId].fields[0].type).to.equal('field')
|
expect(newState[queryId].fields[0].type).to.equal('field')
|
||||||
|
@ -160,7 +160,7 @@ describe('Chronograf.Reducers.Kapacitor.queryConfigs', () => {
|
||||||
|
|
||||||
describe('KAPA_APPLY_FUNCS_TO_FIELD', () => {
|
describe('KAPA_APPLY_FUNCS_TO_FIELD', () => {
|
||||||
it('applies functions to a field without any existing functions', () => {
|
it('applies functions to a field without any existing functions', () => {
|
||||||
const f1 = {name: 'f1', type: 'field'}
|
const f1 = {value: 'f1', type: 'field'}
|
||||||
const initialState = {
|
const initialState = {
|
||||||
[queryId]: {
|
[queryId]: {
|
||||||
id: 123,
|
id: 123,
|
||||||
|
@ -175,15 +175,15 @@ describe('Chronograf.Reducers.Kapacitor.queryConfigs', () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const action = applyFuncsToField(queryId, {
|
const action = applyFuncsToField(queryId, {
|
||||||
field: {name: 'f1', type: 'field'},
|
field: {value: 'f1', type: 'field'},
|
||||||
funcs: [{name: 'fn3', type: 'func'}, {name: 'fn4', type: 'func'}],
|
funcs: [{value: 'fn3', type: 'func'}, {value: 'fn4', type: 'func'}],
|
||||||
})
|
})
|
||||||
|
|
||||||
const nextState = reducer(initialState, action)
|
const nextState = reducer(initialState, action)
|
||||||
const actual = nextState[queryId].fields
|
const actual = nextState[queryId].fields
|
||||||
const expected = [
|
const expected = [
|
||||||
{name: 'fn3', type: 'func', args: [f1], alias: `fn3_${f1.name}`},
|
{value: 'fn3', type: 'func', args: [f1], alias: `fn3_${f1.value}`},
|
||||||
{name: 'fn4', type: 'func', args: [f1], alias: `fn4_${f1.name}`},
|
{value: 'fn4', type: 'func', args: [f1], alias: `fn4_${f1.value}`},
|
||||||
]
|
]
|
||||||
|
|
||||||
expect(actual).to.eql(expected)
|
expect(actual).to.eql(expected)
|
||||||
|
|
|
@ -21,8 +21,8 @@ export const functions = fields => ofType(fields, 'func')
|
||||||
// numFunctions searches queryConfig fields for functions
|
// numFunctions searches queryConfig fields for functions
|
||||||
export const numFunctions = fields => _.size(functions(fields))
|
export const numFunctions = fields => _.size(functions(fields))
|
||||||
|
|
||||||
// functionNames returns the names of all top-level functions
|
// functionNames returns the value of all top-level functions
|
||||||
export const functionNames = fields => functions(fields).map(f => f.name)
|
export const functionNames = fields => functions(fields).map(f => f.value)
|
||||||
|
|
||||||
// getFields returns all of the top-level fields of type field
|
// getFields returns all of the top-level fields of type field
|
||||||
export const getFields = fields => ofType(fields, 'field')
|
export const getFields = fields => ofType(fields, 'field')
|
||||||
|
@ -30,13 +30,13 @@ export const getFields = fields => ofType(fields, 'field')
|
||||||
export const getFieldsDeep = fields =>
|
export const getFieldsDeep = fields =>
|
||||||
_.uniqBy(
|
_.uniqBy(
|
||||||
fieldWalk(fields, f => (_.get(f, 'type') === 'field' ? f : null)),
|
fieldWalk(fields, f => (_.get(f, 'type') === 'field' ? f : null)),
|
||||||
'name'
|
'value'
|
||||||
)
|
)
|
||||||
|
|
||||||
export const fieldNamesDeep = fields =>
|
export const fieldNamesDeep = fields =>
|
||||||
getFieldsDeep(fields).map(f => _.get(f, 'name'))
|
getFieldsDeep(fields).map(f => _.get(f, 'value'))
|
||||||
|
|
||||||
// firstFieldName returns the name of the first of type field
|
// firstFieldName returns the value of the first of type field
|
||||||
export const firstFieldName = fields => _.head(fieldNamesDeep(fields))
|
export const firstFieldName = fields => _.head(fieldNamesDeep(fields))
|
||||||
|
|
||||||
export const hasField = (fieldName, fields) =>
|
export const hasField = (fieldName, fields) =>
|
||||||
|
@ -44,7 +44,7 @@ export const hasField = (fieldName, fields) =>
|
||||||
|
|
||||||
// getAllFields and funcs with fieldName
|
// getAllFields and funcs with fieldName
|
||||||
export const getFieldsWithName = (fieldName, fields) =>
|
export const getFieldsWithName = (fieldName, fields) =>
|
||||||
getFieldsDeep(fields).filter(f => f.name === fieldName)
|
getFieldsDeep(fields).filter(f => f.value === fieldName)
|
||||||
|
|
||||||
// everyOfType returns true if all top-level field types are type
|
// everyOfType returns true if all top-level field types are type
|
||||||
export const everyOfType = (fields, type) =>
|
export const everyOfType = (fields, type) =>
|
||||||
|
@ -58,14 +58,14 @@ export const everyFunction = fields => everyOfType(fields, 'func')
|
||||||
|
|
||||||
export const getFuncsByFieldName = (fieldName, fields) =>
|
export const getFuncsByFieldName = (fieldName, fields) =>
|
||||||
functions(fields).filter(f =>
|
functions(fields).filter(f =>
|
||||||
_.get(f, 'args', []).some(a => a.name === fieldName)
|
_.get(f, 'args', []).some(a => a.value === fieldName)
|
||||||
)
|
)
|
||||||
|
|
||||||
// removeField will remove the field or function from the field list with the
|
// removeField will remove the field or function from the field list with the
|
||||||
// given fieldName. Preconditions: only type field OR only type func
|
// given fieldName. Preconditions: only type field OR only type func
|
||||||
export const removeField = (fieldName, fields) => {
|
export const removeField = (fieldName, fields) => {
|
||||||
if (everyField(fields)) {
|
if (everyField(fields)) {
|
||||||
return fields.filter(f => f.name !== fieldName)
|
return fields.filter(f => f.value !== fieldName)
|
||||||
}
|
}
|
||||||
|
|
||||||
return fields.reduce((acc, f) => {
|
return fields.reduce((acc, f) => {
|
||||||
|
|
Loading…
Reference in New Issue