Skip to content

Commit

Permalink
Merge pull request #3000 from beckn/cypress-open-spark-selling-prefer…
Browse files Browse the repository at this point in the history
…ences

feat(OPEN-SPARK): added cypress test cases for selling preferencs
  • Loading branch information
aniketceminds authored Jan 24, 2025
2 parents cd87849 + 5a7ed27 commit 5cc5c30
Show file tree
Hide file tree
Showing 4 changed files with 122 additions and 7 deletions.
6 changes: 4 additions & 2 deletions apps/open-spark/components/energyPurchaseForm/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -221,6 +221,7 @@ export default function EnergyPurchaseForm({ preferenceType }: EnergyPurchaseFor
m={0}
fontSize="15"
fontWeight="600"
data-test={testIds.set_price_per_unit}
>
Set a Price per unit to {preferenceType}
</FormLabel>
Expand All @@ -231,9 +232,10 @@ export default function EnergyPurchaseForm({ preferenceType }: EnergyPurchaseFor
onClick={() => handleInputChange(setPricePerUnit, (pricePerUnit + 1).toString())}
cursor="pointer"
>
<FaPlus />
<FaPlus data-test={testIds.FaPlus_unit} />
</Box>
<Input
data-test={testIds.set_price_per_unit_input}
type="number"
value={pricePerUnit.toString()}
onChange={e => handleInputChange(setPricePerUnit, e.target.value)}
Expand All @@ -247,7 +249,7 @@ export default function EnergyPurchaseForm({ preferenceType }: EnergyPurchaseFor
}}
cursor="pointer"
>
<FaMinus />
<FaMinus data-test={testIds.FaMinus_unit} />
</Box>
<Text
fontSize="15"
Expand Down
110 changes: 110 additions & 0 deletions cypress/e2e/open-spak/sellingPreference.cy.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
import { testIds } from '../../../shared/dataTestIds'

describe('Check Buying Preference for consumer flow with Empty Trade', () => {
context('Buying Preference for consumer flow', () => {
before(() => {
cy.clearAllLocalStorage()
cy.clearAllCookies()
cy.visit(testIds.url_base)
cy.getByData('producer_button').click()
cy.getByData(testIds.auth_inputEmail).type(testIds.user_validEmail_producer_flow)
cy.getByData(testIds.auth_inputEmail).should('have.value', testIds.user_validEmail_producer_flow)
cy.getByData(testIds.auth_inputPassword).type(testIds.user_validPassword_consumer_flow)
cy.getByData(testIds.auth_inputPassword).should('have.value', testIds.user_validPassword_consumer_flow)
cy.getByData(testIds.auth_loginButton).click()
cy.url().should('include', testIds.url_home)
cy.intercept('GET', '**/trade-pref', {
fixture: 'OpenSpark/myTrade/trade-pref.json'
}).as('trade-pref')
cy.wait('@trade-pref')
cy.getByData('buy-preference').click()
cy.url().should('include', 'sellingPreference')
})

it('should display all the fields and button', () => {
cy.getByData(testIds.preference_type).should('be.visible')
cy.getByData(testIds.questionOutlineIcon).should('be.visible')
cy.getByData(testIds.FaPlus).should('be.visible')
cy.getByData(testIds.FaMinus).should('be.visible')
cy.getByData(testIds.preference_type_input_buy).should('be.visible')
cy.getByData(testIds.preference_type_unit).should('be.visible')
cy.getByData(testIds.select_preference_type).should('be.visible')
cy.getByData(testIds.set_price_per_unit).should('be.visible')
cy.getByData(testIds.set_price_per_unit_input).should('be.visible')
cy.getByData(testIds.FaPlus_unit).should('be.visible')
cy.getByData(testIds.FaMinus_unit).should('be.visible')
cy.getByData(testIds.select_preference_type_checkbox).should('be.visible')
cy.getByData(testIds.submit_preference_sell_buy_btn).should('be.visible')
})
it('should Buy Energy Units, adjust values with plus/minus buttons, and submit', () => {
cy.getByData(testIds.preference_type_input_buy).type('100').should('have.value', '100')
cy.getByData(testIds.FaPlus).click()
cy.getByData(testIds.preference_type_input_buy).should('have.value', '101')
cy.getByData(testIds.FaMinus).click()
cy.getByData(testIds.preference_type_input_buy).should('have.value', '100')
cy.getByData(testIds.set_price_per_unit_input).type('10').should('have.value', '10')
cy.getByData(testIds.FaPlus_unit).click()
cy.getByData(testIds.set_price_per_unit_input).should('have.value', '11')
cy.getByData(testIds.FaMinus_unit).click()
cy.getByData(testIds.set_price_per_unit_input).should('have.value', '10')
cy.getByData(testIds.select_preference_type_checkbox).eq(0).click()
cy.getByData(testIds.select_preference_type_checkbox).find('input[type="checkbox"]').should('be.checked')
cy.getByData(testIds.submit_preference_sell_buy_btn).click()
cy.getByData(testIds.feedback).should('contain.text', 'Success')
})
})
})
describe('Check Buying Preference for consumer flow with valid Trade', () => {
context('Buying Preference for consumer flow', () => {
before(() => {
cy.clearAllLocalStorage()
cy.clearAllCookies()
cy.visit(testIds.url_base)
cy.getByData('producer_button').click()
cy.getByData(testIds.auth_inputEmail).type(testIds.user_validEmail_producer_flow)
cy.getByData(testIds.auth_inputEmail).should('have.value', testIds.user_validEmail_producer_flow)
cy.getByData(testIds.auth_inputPassword).type(testIds.user_validPassword_consumer_flow)
cy.getByData(testIds.auth_inputPassword).should('have.value', testIds.user_validPassword_consumer_flow)
cy.getByData(testIds.auth_loginButton).click()
cy.url().should('include', testIds.url_home)
cy.intercept('GET', '**/trade-pref', {
fixture: 'OpenSpark/myTrade/trade-pref.json'
}).as('trade-pref')
cy.wait('@trade-pref')
cy.getByData('buy-preference').click()
cy.url().should('include', 'sellingPreference')
})

it('should display all the fields and button', () => {
cy.getByData(testIds.preference_type).should('be.visible')
cy.getByData(testIds.questionOutlineIcon).should('be.visible')
cy.getByData(testIds.FaPlus).should('be.visible')
cy.getByData(testIds.FaMinus).should('be.visible')
cy.getByData(testIds.preference_type_input_buy).should('be.visible')
cy.getByData(testIds.preference_type_unit).should('be.visible')
cy.getByData(testIds.select_preference_type).should('be.visible')
cy.getByData(testIds.set_price_per_unit).should('be.visible')
cy.getByData(testIds.set_price_per_unit_input).should('be.visible')
cy.getByData(testIds.FaPlus_unit).should('be.visible')
cy.getByData(testIds.FaMinus_unit).should('be.visible')
cy.getByData(testIds.select_preference_type_checkbox).should('be.visible')
cy.getByData(testIds.submit_preference_sell_buy_btn).should('be.visible')
})
it('should Buy Energy Units, adjust values with plus/minus buttons, and submit', () => {
cy.getByData(testIds.preference_type_input_buy).type('100').should('have.value', '100')
cy.getByData(testIds.FaPlus).click()
cy.getByData(testIds.preference_type_input_buy).should('have.value', '101')
cy.getByData(testIds.FaMinus).click()
cy.getByData(testIds.preference_type_input_buy).should('have.value', '100')
cy.getByData(testIds.set_price_per_unit_input).type('10').should('have.value', '10')
cy.getByData(testIds.FaPlus_unit).click()
cy.getByData(testIds.set_price_per_unit_input).should('have.value', '11')
cy.getByData(testIds.FaMinus_unit).click()
cy.getByData(testIds.set_price_per_unit_input).should('have.value', '10')
cy.getByData(testIds.select_preference_type_checkbox).eq(0).click()
cy.getByData(testIds.select_preference_type_checkbox).find('input[type="checkbox"]').should('be.checked')
cy.getByData(testIds.submit_preference_sell_buy_btn).click()
cy.getByData(testIds.feedback).should('contain.text', 'Success')
})
})
})
5 changes: 1 addition & 4 deletions cypress/fixtures/OpenSpark/myDers/aadhar_cred .json
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
{
"@context": [
"https://www.w3.org/2018/credentials/v1",
"https://cord.network/2023/cred/v1"
],
"@context": ["https://www.w3.org/2018/credentials/v1", "https://cord.network/2023/cred/v1"],
"type": ["VerifiableCredential"],
"issuer": "did:cord:3zKcL2oAsvZZwFA5uPxtysk5jsai2TGx4AvrpJcBYmAwzGyN",
"issuanceDate": "2024-12-10T09:21:27.012Z",
Expand Down
8 changes: 7 additions & 1 deletion shared/dataTestIds.ts
Original file line number Diff line number Diff line change
Expand Up @@ -693,6 +693,7 @@ const testIds = {
current_status_trade: 'current_status_trade',
current_trade_order_status_name: 'current_trade_order_status_name',
current_trade_order_status_discription: 'current_trade_order_status_discription',

current_trade_order_status_time: 'current_trade_order_status_time',
preference_type: 'preference_type',
questionOutlineIcon: 'questionOutlineIcon',
Expand All @@ -702,6 +703,11 @@ const testIds = {
preference_type_unit: 'preference_type_unit',
select_preference_type: 'select_preference_type',
select_preference_type_checkbox: 'select_preference_type_checkbox',
submit_preference_sell_buy_btn: 'submit_preference_sell_buy_btn'
submit_preference_sell_buy_btn: 'submit_preference_sell_buy_btn',

FaPlus_unit: 'FaPlus_unit',
FaMinus_unit: 'FaMinus_unit',
set_price_per_unit: 'set_price_per_unit',
set_price_per_unit_input: 'set_price_per_unit_input'
}
export { testIds }

0 comments on commit 5cc5c30

Please sign in to comment.